파일을 작성해야하는 MIDlet을 작성하고 있습니다. 이 작업을 수행하기 위해 JSR-75의 FileConnection을 사용하고 있습니다.J2ME FileConnection의 파일 경로?
가능한 한 많은 장치에서이 MIDlet을 실행시키려는 의도입니다 (JSR-75를 지원하는 모든 MIDP 2.0 장치가 이상적으로 지원됩니다). FileConnection을 열려고하는, 노키아 S60 5 판 에뮬레이터에, 그러나
Enumeration drives = FileSystemRegistry.listRoots();
String root = (String) drives.nextElement();
String path = "file:///" + root;
: 여러 에뮬레이터와 HTC 터치 PRO2에
, 나는 완벽하게 파일 시스템의 루트를 얻기 위해 다음과 같은 코드를 사용할 수 있습니다 이 경로에 java.lang.SecurityException이 발생합니다. 분명히 S60 장치는 파일 시스템의 루트에 연결을 허용하지 않습니다. System.getProperty ("fileconn.dir.photos")와 같은 것을 사용할 수 있다는 것을 알았지 만 모든 장치에서 지원되지는 않습니다.
내 실제 질문 : 최대 이식성을 고려하여 FileConnection을 만드는 경로를 얻는 가장 좋은 방법은 무엇입니까?
감사합니다.
편집 : 나는 내가 열거에 걸쳐 모든 뿌리를 반복하고, 쓰기 가능 하나 확인할 수 있습니다 가정,하지만 두 가지 이유에 대한 거의 최적입니다. 첫째, 반드시 쓰기 가능한 뿌리가있는 것은 아닙니다. 둘째, 전화 메모리 또는 메모리 카드 일 수 있으므로 저장 방법이 여러 장치에서 일관되지 않을 수 있습니다. 이는 다소 추한 것입니다.
예, fileconn.dir.private에 대해 알았습니다. 그러나 그것이 발견되지 않으면, 나는 여전히 모든 뿌리를 시험해보기에 뒤 떨어진다. 그리고 R/W로 연결할 필요가 없습니까? 읽기 전용으로 연결하면 뿌리가 쓰기 가능한지를 알아낼 수 없습니다. – benvd
뿌리는 쓸 수 없지만 하위 폴더 중 하나 일 가능성이 있습니다. –