gpt4 book ai didi

cordova - phonegap开发中如何实现线程进程?

转载 作者:行者123 更新时间:2023-12-04 04:50:19 25 4
gpt4 key购买 nike

我正在开发从服务器读取 json 数据的 phonegap 应用程序,但它会停止当前进程的执行,直到 javascript 被执行。

我想像线程一样执行进程。

我怎样才能实现它?

最佳答案

WebView 中的 JavaScript 不在 UI 线程上运行。它在 WebCore 线程上运行。 execute 方法也在 WebCore 线程上运行。

如果您需要与 UI 交互,则应使用以下内容:

@Override
public boolean execute(String action, JSONArray args, final CallbackContext callbackContext) throws JSONException {
if ("beep".equals(action)) {
final long duration = args.getLong(0);
cordova.getActivity().runOnUiThread(new Runnable() {
public void run() {
...
callbackContext.success(); // Thread-safe.
}
});
return true;
}
return false;
}

如果不需要在 UI 线程上运行,但又不想阻塞 WebCore 线程:
@Override
public boolean execute(String action, JSONArray args, final CallbackContext callbackContext) throws JSONException {
if ("beep".equals(action)) {
final long duration = args.getLong(0);
cordova.getThreadPool().execute(new Runnable() {
public void run() {
...
callbackContext.success(); // Thread-safe.
}
});
return true;
}
return false;
}

关于cordova - phonegap开发中如何实现线程进程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17523053/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com