小编Pas*_*nke的帖子

Cordova:从 SD 卡读取目录和文件

我正在尝试从 Android 上的外部 SD 卡上的文件夹中读取目录和文件。cordova.file.externalRootDirectory返回的file:///storage/emulated/0/不是 SD 卡的路径。使用cordova.plugins.diagnostic.getExternalSdCardDetails()我获得了 SD 卡的根路径,但如果我尝试读取它,它会返回FileError code: 5.

Cordova 版本:9.0.0 (cordova-lib@9.0.1) Android-API 级别:22

cordova.plugins.diagnostic.getExternalSdCardDetails(function(data) {                 
  window.resolveLocalFileSystemURL(data[0].filePath + "/", 
  $scope.onFSSuccess, $scope.onError);
}, console.log);
Run Code Online (Sandbox Code Playgroud)

$scope.onError 被触发返回错误 5。

this.onError = function(e) {
  console.log(e);
}
Run Code Online (Sandbox Code Playgroud)

创建SD卡文件夹读取器的函数。

this.onFSSuccess = function(fileSystem) {
  fs = fileSystem;
  var directoryReader = fileSystem.createReader();
  directoryReader.localURL = directoryReader.localURL + $scope.dirPath;
  $scope.directoryReaderPath = directoryReader.localURL;
  directoryReader.readEntries($scope.readerSuccess, $scope.onError);
}
Run Code Online (Sandbox Code Playgroud)

注意:我将以下行添加到 config.xml

<preference name="AndroidPersistentFileLocation" value="Compatibility" />
<preference name="AndroidExtraFilesystems" value="sdcard,cache" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" …
Run Code Online (Sandbox Code Playgroud)

javascript cordova cordova-plugin-file

5
推荐指数
0
解决办法
672
查看次数

标签 统计

cordova ×1

cordova-plugin-file ×1

javascript ×1