1
我用這個代碼從我的本地安卓科爾多瓦應用觸發更新程序
function downloadApkAndroid(data) {
var fileURL = "cdvfile://localhost/persistent/path/to/Download/";
var fileTransfer = new FileTransfer();
var uri = encodeURI(data);
fileTransfer.download(
uri,
fileURL,
function (entry) {
console.log("download complete: " + entry.fullPath);
promptForUpdateAndroid(entry);
},
function (error) {
console.log("download error source " + error.source);
console.log("download error target " + error.target);
console.log("upload error code" + error.code);
},
false,
{
}
);
}
我得到了成功donwload然後它會調用這個函數promptForUpdateAndroid(entry);
嘗試安裝下載的APK這其中功能包含此
function promptForUpdateAndroid(entry) {
console.log(entry);
window.plugins.webintent.startActivity({
action: window.plugins.webintent.ACTION_VIEW,
url: entry.toURL(),
type: 'application/vnd.android.package-archive'
},
function() {
},
function() {
alert('Failed to open URL via Android Intent.');
console.log("Failed to open URL via Android Intent. URL: " + entry.fullPath);
}
);
}
它調用該函數後,我得到警報
解析錯誤 - 有解析包時出現問題
我認爲是指定fileurl var fileURL = "cdvfile://localhost/persistent/path/to/Download/";
是錯誤的,但我真的不知道什麼是真正的路徑是。請幫我
我發現從這裏的服務器下載的文件///data/user/0/com.app.nEnhance/files/files/path/to/android.apk當我嘗試點擊安裝我得到了同樣的錯誤,這是解析錯誤.. –