【问题标题】:Android NDK use kernel libs / drivers (so)Android NDK 使用内核库/驱动程序(so)
【发布时间】:2012-06-07 07:34:53
【问题描述】:

我目前正在开发提供各种音频设置的 Android 应用程序。我使用别人准备的 android 系统,它提供(我在源文件和编译文件中看到)一些可能对我有用的方法。例如,有(kernel/drivers/audio/audio.c)一些改变频段的方法(用于均衡器)。在已编译的系统中,内核的某些音频目录中有 audio_setting.so 文件。是否有可能在我的应用程序 NDK 中使用此方法(库)?我不想用整个系统编译我的应用程序,而是动态添加这个库。

编辑:
这比我想象的要简单。我用过:

void *some_lib;
bundlewrapper = dlopen("some/path/some_lib.so", RTLD_LAZY);
if ( some_lib!= NULL ) {
    LOGV("Loaded lib\n");
    // use methods from lib
}

【问题讨论】:

    标签: android android-ndk kernel shared-libraries


    【解决方案1】:

    当然,您可以使用系统上的任何代码。 显然,如果它是非 JNI 代码,您将不得不从您自己的 JNI 代码或包装器中调用它。

    在您的 Android.mk 文件中,您需要在 LOCAL_LDLIBS 中添加额外的库

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-22
      • 2020-07-10
      • 1970-01-01
      • 1970-01-01
      • 2012-08-06
      • 2013-09-21
      相关资源
      最近更新 更多