2015-07-22 3 views
0
$window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFS, fail); 

function gotFS(fs) { 
    // case 1 
    fs.root.getFile('/storage/emulated/0/VIDEO0048.mp4', null, ok, fail); 
    //case 2 
    fs.root.getFile('/storage/ext_sd/VIDEO0048.mp4', null, ok, fail); 

}Кордова GetFile и внешняя SD карта

В приведенном выше коде, используя Кордова файл плагина v1.3.3 на Android, корпус 1 работает и корпус 2 не делает. Для случая 2 он сообщает об ошибке 1000. Я знаю, что оба файла существуют, один во внутреннем хранилище и один на SD-карте, и у меня есть READ_EXTERNAL_STORAGE разрешения, установленные в манифесте. Кто-нибудь использовал плагин для файлов Cordova для доступа к файлам на SD-карте таким образом и заставил его работать?

ответ

2

Вот ответ на мой вопрос, если он помогает кому-либо еще.

Для того, чтобы это сработало, я обновил версию plugin-файла версии 2.1.0 и вместо того, чтобы использовать getFile (который больше не принимает абсолютный путь), я использовал $ window.resolveLocalFileSystemURL, чтобы получить файлEntry, который работал для как внутренние, так и SD-карты. Единственная морщина заключалась в том, что мне пришлось добавить «файл: //» к моему пути, чтобы он выглядел как этот «файл: ///storage/ext_sd/VIDEO0048.mp4» при передаче в resolveLocalFileSystemURL.

Смежные вопросы