Чтобы обеспечить контекст для поставленного мной вопроса, просмотрите эту ссылку .
По сути, я хотел бы знать, ограничен ли я на SD-картесоздавать файлы по фиксированному и предопределенному пути или, наоборот, есть какой-то способ (независимо от того, какой плагин будет использоваться) для создания файлов из этого пути исправления.
Использование плагина cordova-plugin-file
невозможносоздавать файлы на SD-карте.Используя плагин cordova.plugins.diagnostic
, я обнаружил, что могу создавать файлы по фиксированному и заранее заданному пути.Вот код, используемый для этой цели:
cordova.plugins.diagnostic.getExternalSdCardDetails(onSuccess_getExternalSdCardDetails, onError_getExternalSdCardDetails);
onSuccess_getExternalSdCardDetails : function(entryArray) {
console.log("entryArray.length:" + entryArray.length);
for (i = 0; i < entryArray.length; i++) {
if (entryArray[i].type == "root") {
sdCardPath = entryArray[i].filePath;
break;
}
console.log("sdCardPath:" + sdCardManager.sdCardPath);
}
Благодаря этому коду мне удалось увидеть детали объектов в entryArray
объекте, установленном для функции обратного вызова, вызываемой при вызове cordova.plugins.diagnostic.getExternalSdCardDetails()
метод.Это следующие объекты:
entryArray[0]:
{canWrite:false
filePath:"file:///storage/9634-B08B"
freeSpace:10907648000
path:"/storage/9634-B08B"
type:"root"
}
entryArray[1]:
{canWrite:true
filePath:"file:///storage/9634-B08B/Android/data/es. ... .myappName/files"
freeSpace:10907648000
path:"/storage/9634-B08B/Android/data/es. ... .myAppName/files"
type:"application"
}
Я вижу, что мой путь к SD-карте file:///storage/9634-B08B
, и это хорошо, но меня больше всего удивляет тот факт, что я могу записывать только свои файлы под file:///storage/9634-B08B/Android/data/es. ... .myappName/files
path, не имея возможности создавать файлы по этому пути.
Мой вопрос: ограничен ли я созданием файлов по этому пути или, наоборот, есть другой способ (возможно, с использованием другого плагина) для созданияфайлы вне этого пути, но всегда на SD-карте (например, file:///storage/9634-B08B/myFiles
).Спасибо.