일부 파일을 다운로드하고 장치에 저장하는 Phonegap/Cordova 앱을 만들고 있습니다. 이를 위해 File API를 사용합니다.Phonegap/Cordova 파일 API. 제거시 파일 제거
window.requestFileSystem(LocalFileSystem.PERSISTENT,
0,
function (fileSystem) {
rootPath = fileSystem.root.fullPath;
},
fail
);
iOS의 경우 이것은 rootPath
을 앱의 개인 디렉토리로 설정합니다. Android에서는 외부 저장소의 루트로 rootPath
을 설정합니다. 이러한 파일은 응용 프로그램에 연결되지 않고 응용 프로그램이 삭제 될 때 제거되지 않으므로 약간 문제가됩니다. 내가 이해하는 한, 안드로이드에서 이것을하는 올바른 방법은 getExternalFilesDir
을 사용하는 것입니다. Phonegap을 통해 getExternalFilesDir
의 기능을 어떻게 얻을 수 있습니까?
고맙습니다. 그 말은 안드로이드와 아이폰 OS에서 다르게 해결해야한다는 뜻이다. 호기심에서 벗어난 것은 오래된 Android (SDK <8)를 지원했기 때문입니까 아니면이 동작에 대한 다른 이유가 있습니까? – Reason
원래 파일 API를 만들었을 때 결정은 내부 드라이브의 저장 장치 부족으로 인해 외부 저장소를 사용하여 파일을 저장하는 것이 었습니다. 우리는 실제로/data/data/{package name} 디렉토리로 이동하여 iOS/BB와 더 잘 어울리는 것을 생각하고 있습니다. 나의 제안은 LocalFileSystem.APP를 만드는 것이다. LocalFileSystem.APP는 결국 변경에 익숙해지면 결국 PERSISTENT 상수가된다. –
최근에 2.3에서 2.5로 변경되었습니다. 이제는/mnt/sdcard/대신 data/data/com.my.app /에 저장되는 것으로 보입니다. 이것은이 버전에서 문제가 해결되었다는 것을 의미합니까, 아니면 여전히 그것에 대해 걱정할 필요가 있습니까? – Reason