2012-09-25 98 views
1

我已經使用phonegap下載方法成功下載了一個文件。我將文件下載到我的android手機上的下載文件夾中的本地存儲中。我想從下載管理器獲得某種文件已下載的通知,然後點擊下載進行查看。這是phonegap下載方法所缺少的。phonegap是否可以訪問Android DownloadManager類?

phonegap是否可以訪問Android DownloadManager類?

+0

你需要編寫一個插件。 http://docs.phonegap.com/en/2.0.0/guide_plugin-development_index.md.html#Plugin%20Development%20Guide –

回答

0

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(); 
相關問題