Phonegap下载文件并保存到内部存储

3
我正在尝试使用PhoneGap从服务器下载文件并将其保存到设备的内部存储器中。以下是我目前的代码:
if(ionic.Platform.isAndroid()){
  window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function(fileSystem){
    fileSystem.root.getFile("test.mp3", {
      create: true,
      exclusive: false
    }, function(fileEntry){
      var sPath = fileEntry.fullPath; // equals /test.mp3
      // sPath = "file:///storage/sdcard0/test.mp3";
      var fileTransfer = new FileTransfer();
      fileEntry.remove();
      fileTransfer.download(
        ringtone.streamUrl,
        sPath,
        function(theFile){
          alert(theFile);
        }
        );
    });
  }, null);
}

问题在于当我提供绝对文件路径来下载,例如file:///storage/sdcard0/test.mp3,它可以完美地将文件下载到内部存储器中,但如果使用sPath变量,则无法正常工作。据我所知,我无法获取内部存储目录的绝对路径。在android上使用phonegap如何以file:///格式获取内部存储路径?
1个回答

0

我不确定这是否是标准或推荐的方法,但我已在LG G2、三星Galaxy S3和两个Motorolla手机上测试过,它完美地运行。我只需使用以下命令连接到模拟器即可。

adb shell

并输入

ls -la

结果中有一个名为sdcard的目录,位于根目录/下,它是指向其他某个位置的原始sdcard文件夹的符号链接。
ls -la

sdcard -> storage/sdcard0

所以路径file:///sdcard/test.mp3对我很有用。


我想在没有SD卡的情况下将图像保存在内部存储器中。我的问题是http://stackoverflow.com/questions/41255938/file-download-to-show-in-download-list-ionic - Anuj

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接