【问题标题】:How to callback the Application Layer file from Native Layer file in a Android?如何从 Android 中的 Native Layer 文件回调 Application Layer 文件?
【发布时间】:2017-11-08 09:03:46
【问题描述】:

我的 Android 项目中有以下三个文件(应用层中的一个 java 文件,JNI 层中的一个 cpp 文件和 Native 层中的一个 cpp 文件)。

  1. MyActivity.java(应用层)
  2. MyJNIInterface.cpp(JNI 接口)
  3. MyNativeFile.cpp。 (本机实现)

我可以使用 JNI 接口从应用层调用本机层中的 api。

有没有一种方法可以让我从 Native Layer 文件 (MyNativeFile.cpp) 回调到 Application Layer 文件 (MyActivity.java)?

请分享一些示例代码。

【问题讨论】:

标签: java android c++ java-native-interface


【解决方案1】:

是的,有可能。

查看this谷歌提供的示例应用

【讨论】:

    【解决方案2】:

    Android 完全实现了标准 JNI(JNI_CreateJavaVM() 除外),因此支持回调。请注意,如果您想从未在 Java 中启动的线程回调 Java(例如 UI 线程不需要AttachCurrentThread()),则必须将线程附加到 JVM。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-01-04
      • 2018-01-15
      • 1970-01-01
      • 1970-01-01
      • 2016-02-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多