我已經使用phonegap下載方法成功下載了一個文件。我將文件下載到我的android手機上的下載文件夾中的本地存儲中。我想從下載管理器獲得某種文件已下載的通知,然後點擊下載進行查看。這是phonegap下載方法所缺少的。phonegap是否可以訪問Android DownloadManager類?
phonegap是否可以訪問Android DownloadManager類?
我已經使用phonegap下載方法成功下載了一個文件。我將文件下載到我的android手機上的下載文件夾中的本地存儲中。我想從下載管理器獲得某種文件已下載的通知,然後點擊下載進行查看。這是phonegap下載方法所缺少的。phonegap是否可以訪問Android DownloadManager類?
phonegap是否可以訪問Android DownloadManager類?
Android下載插件工作得很好。但是,如果您在cordova 2.0上運行,則需要修改用於添加構造函數的代碼。當前的代碼是:
...
PhoneGap.addConstructor(function() {
PhoneGap.addPlugin("downloader", new Downloader());
PluginManager.addService("Downloader", "com.phonegap.plugins.downloader.Downloader");
});
由於addPlugin不再適用於科爾多瓦2.0你將需要刪除addConstructor方法,取而代之的是:
window.downloader = new Downloader();
而且在exec方法應該如下所示:
cordova.exec(win, fail, "Downloader", "downloadFile", [fileUrl, params]);
而不是使用Phonegap對象。在我做完所有這些之後,插件就工作了。整個JS應該是這樣的:
function Downloader() {}
Downloader.prototype.downloadFile = function(fileUrl, params, win, fail) {
//Make params hash optional.
if (!fail) win = params;
cordova.exec(win, fail, "Downloader", "downloadFile", [fileUrl, params]);
};
window.downloader = new Downloader();
你絕對需要一個插件來從phonegap訪問android的本地代碼。
看一看這個網站:https://github.com/phonegap/phonegap-plugins/tree/master/Android
它是全的插件。其中之一被稱爲「下載者」。也許這就是你要找的。
使用這個插件來訪問Android的下載管理器
https://github.com/sgrebnov/cordova-plugin-background-download
我用它在我的科爾多瓦應用程序,它做工精細。
也許在java代碼中需要一些定製才能完美工作。
你需要編寫一個插件。 http://docs.phonegap.com/en/2.0.0/guide_plugin-development_index.md.html#Plugin%20Development%20Guide –