Android Phonegap:当AsyncTask完成时通知javascript - 代码日志

Android Phonegap:当AsyncTask完成时通知javascript

在我的应用程序中,当用户点击webview中的按钮时,将会调用一个phonegap插件来触发一个asynctask从Internet下载文件。现在,当asynctask完成时,我想发送一个信号回到javascript部分。但是我不知道该怎么做,因为我的插件已经在asynctask完成之前已经发回了。有谁知道我可以通知我的javascript部分没有插件在Phonegap?
我还在Phonegap Google Group中提出了这个问题,这里是Simon Mac Donald的回应。它对我来说是完美的:

您可以很容易地使用Plugin API来处理这种情况。它
在核心API项目连接和电池中实现。你呢
需要做的是:

1)在您的插件的execute()方法中,保存callbackId。

2)返回一个NO_RESULT插件结果,并将keep callback id设置为true。

    PluginResult pluginResult = new  PluginResult(PluginResult.Status.NO_RESULT); 
    pluginResult.setKeepCallback(true); 
    return pluginResult; 

3)当您异步java方法完成时,会返回另一个插件结果,如下所示:

    PluginResult result = new PluginResult(PluginResult.Status.OK, data); 
    result.setKeepCallback(false); 
    this.success(result, this.myCallbackId); 

正如我所说,您可以查看GitHub中的代码,看看我们如何使用连接和电池。

http://stackoverflow.com/questions/7751522/android-phonegap-notify-javascript-when-an-asynctask-is-finished

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:Android Phonegap:当AsyncTask完成时通知javascript