【问题标题】:Calling a Java Function from within a Superpowered SDK callback从 Superpowered SDK 回调中调用 Java 函数
【发布时间】:2016-11-22 20:57:23
【问题描述】:

我正在使用 Superpowered SDK 定义一个回调来处理 Android 中的音频。我在回调中使用 clientData 指针传递 JNIEnv。无论如何我可以调用一个简单的Java函数来更新回调内主屏幕上的一些文本吗?

我的代码基于 Superpowered SDK 的 FrequencyDomain 示例。

【问题讨论】:

    标签: java android java-native-interface superpowered


    【解决方案1】:

    这个问题与 Superpowered 无关,而是 JNI: Java Native Interface。

    您可以从本机代码调用 Java,但它相当复杂(而且丑陋)。

    查看 IBM 这篇文章中的“从 C/C++ 程序调用 Java 代码”:http://www.ibm.com/developerworks/java/tutorials/j-jni/j-jni.html

    【讨论】:

    • 嘿加博尔!所以我所做的是,在 MainActivity 中创建了一个 Runnable,它每秒调用一个 C++ 函数来更新 GUI。由于更新只需要来自进程输出的整数值,这很容易。另一部分是将输出保存为文本文件。我能够使用 C++ 中的文件函数来实现这一点。我确实阅读了您发送给我的链接,它很丑陋。而且更困难的是,我试图用来更新 GUI 的函数是 C++ 中的回调,它无法访问 JNIEnv 或 jobject。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-17
    相关资源
    最近更新 更多