我在phonegap中开发了文件阅读器,其路径如下:
var defaultPath ='file:/// storage / sdcard0 /';
所以我能够在SD卡上列出所有文件,并选择一个要加载音频文件的文件夹。所以我的音频文件列表如下:
i[1] = 'file:///storage/sdcard0/Download/audio/file.mp3';
i[2] = 'file:///storage/sdcard0/Download/audio/file1.mp3';
然后我尝试使用Media插件(已安装)使用以下代码初始化歌曲:
var media = new Media(i[1]);
media.play();
但音频不播放或什么都不做。但是,当我尝试使用PhoneGap APP测试它时,一切正常,当我进行构建并尝试从构建测试应用程序时,这是行不通的。
答案 0 :(得分:0)
我自己发现了这个问题。
Android不允许通过从/storage/sdcard0
/storage/sdcard1
开始的路径在本地存储或SD卡上读取文件。因此,当我们想要访问本地存储或SD卡时,我们必须通过file:///mnt/sdcard/
访问sdcard和file:///mnt/storage/sdcard1/
进行手机存储。
如何从SD卡或手机存储中读取条目的小例子:
var path = 'file:///mnt/storage/sdcard1/';
window.resolveLocalFileSystemURL(path, function(entry){
var reader = entry.createReader();
reader.readEntries(showEntries);
});
function showEntries(entries){
var entries = [];
for(var i =0; i < entries.length; i++){
var entry = entries[i];
var data = {
name: entry.name,
path: entry.fullPath,
};
entries[i] = data;
}
console.log(JSON.stringify(entries));
}
希望这可以解决与我相同的问题,因为这没有记录在phonegap中。