当前位置: 首页 > 知识库问答 >
问题:

如何在Android的主线程上运行React原生模块方法

萧阳波
2023-03-14
- (dispatch_queue_t)methodQueue {
  return dispatch_get_main_queue();
}

在Android上这样做的正确方法是什么?

共有1个答案

郎俊雅
2023-03-14

遵循公文

“本机模块不应该对它们被调用的线程有任何假设,因为当前的分配在将来可能会发生变化。如果需要阻塞调用,那么繁重的工作应该被调度到内部管理的工作线程,并且任何回调都应该从那里分发”。

如果你想从主线程运行代码,你应该使用Android的Handler类。

Handler handler = new Handler(context.getMainLooper()); 
handler.post(new Runnable(){ // Code that needs to be run on the main thread. })
 类似资料:
  • 我的反应原生应用程序有以下 它在Android5.0及以上版本上运行良好。最小SDK版本为16.然而,它不是运行在Android 4.3 异常跟踪如下所示: 我试图在。然而,在那之后,我得到了依赖包中的编译器,因为它们不是用Java1.6编译的。 解决这个问题的步骤是什么?

  • 每次我重新打开项目和模拟器时,我都必须在命令提示符中运行和吗? 谢谢。

  • 无法解析com.android.tools.build:gradle:2.3.0。 无法获取资源“https://jcenter.bintray.com/com/android/tools/build/gradle/2.3.0/gradle-2.3.0.pom”。无法领导“https://jcenter.bintray.com/com/android/tools/build/gradle/2.3.

  • 我已经被困了两天了,我正在尝试设置,一切都就绪了:最新的Android Studio、Genymotion、Path.io/react-native/docs/geting-started.html上的所有指导。 当我运行或时,我会得到以下错误: C:\users\pc\desktop\bot>react-native run-android系统找不到指定的路径。child_process.js:

  • 如何在Android上使用脱机绑定? 我没有看到关于在Android上使用脱机绑定的文档。 我试图取消build.gradle中的代码注释。 但是它没有工作。它仍然从服务器获取JS包。 是不是我错过了什么?

  • 我试图在android中为react原生开发原生模块。与https://facebook.github.io/react-native/docs/native-modules-android.html#content的链接完全一致 但它给了我错误 我已经实现了toastandroid.js 然后在其他Jsfiles中尝试使用