gpt4 book ai didi

android - 重用代码 Android NDK

转载 作者:太空狗 更新时间:2023-10-29 12:50:52 24 4
gpt4 key购买 nike

我发现很多教程展示了如何开始使用 NDK 开发 Android 应用程序。

但我有一个相当“简单/愚蠢”的问题:

请考虑以下两个教程:

  1. http://mobile.tutsplus.com/tutorials/android/ndk-tutorial/
  2. http://www.indiedb.com/tutorials/creating-compiling-and-deploying-native-projects-from-the-android-ndk
  3. http://mindtherobot.com/blog/452/android-beginners-ndk-setup-step-by-step/
  4. http://marakana.com/forums/android/examples/49.html

现在,在第二个教程中,他们正在构建 hello-jni 示例。

我的问题是:

使用ndk-build之后

并制作:

enter image description here

是否可以使用生成的 libhello-jni.so 并将其分发给其他人而不是实际的 C 代码?

例如,修改 Android.mk 并将 com_myproject_MyActivity.c 替换为 something.so 以包含共享库?:

LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := mylib
LOCAL_SRC_FILES := com_myproject_MyActivity.c
include $(BUILD_SHARED_LIBRARY)

欢迎任何建议或教程。提前致谢。

最佳答案

您可以使用预构建的 NDK 库,方法是将其复制到 libs/armeabi(或它适用的任何架构),然后在运行时加载。从 Android 构建系统的角度来看,它只是要包含在 APK 中的另一个文件。

然而,问题在于 JNI 函数名称按照惯例包括它们所属的包和类的名称;所以从 SO 消费者项目的角度来看,它的使用看起来很不自然,因为没有一个 JNI 函数适合它的类。您可能需要随附一个 JAR,其中声明了相应的 Java 类。

关于android - 重用代码 Android NDK,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12195426/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com