【问题标题】:Android native methods called from Java side从 Java 端调用的 Android 原生方法
【发布时间】:2013-04-19 11:31:20
【问题描述】:

如何在 Android 中访问从 Java 端调用的本机方法?我的问题与 Android Media 包中的 AudioRecord 类特别相关。我阅读了 AudioRecord.java 的源代码。我发现大部分工作都是通过本地方法执行的,例如:

native_setup(...)、native_start(...)、native_stop(...)、native_read_in_byte_array(...)、native_read_in_direct_buffer(...)

我下载了 Android 源代码,但无法使用这些方法。而且我实际上不知道到达他们的方法。我在源代码目录中找到的库中寻找这些方法,但没有成功。如果有人有想法,我将不胜感激。谢谢...

【问题讨论】:

    标签: android native-code android-audiorecord


    【解决方案1】:

    我想我找到了他们。使用Linux命令后

    grep -r "native_read_in_direct_buffer" ./ANDROID_SOURCE/.*

    我找到了对应的cpp文件。

    AudioRecord.cpp位于:~/ANDROID_SOURCE/frameworks/av/media/libmedia/目录,

    android_media_AudioRecord.cpp 位于 ~/ANDROID_SOURCE/frameworks/base/core/jni 目录中。

    我想将它作为参考分享给愿意访问相同/相似源文件的其他可能的程序员。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-02-10
      • 1970-01-01
      • 2016-07-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-14
      相关资源
      最近更新 更多