我们在android上有一个c++项目,它将内置到.a中,然后将.a发布给我们的用户。
问题是,我们有很多资源文件,这些资源的路径是必要的,因为一些第三方库需要它们。
android上的限制是:如果我们想在Android APK中放入一个文件,我们必须将它打包在res或assets中,并且它不再是单个文件,那么我们如何组织我们的资源呢?
我们的计划是要求用户将我们的资源打包到APK的Assets中,然后我们可以将它们提取到其他文件夹中,但这不太方便,您有更好的想法吗?
谢谢
最佳答案
C++ android 项目,听起来很奇怪,可能是,你想说你有 c++ arm 交叉编译的静态库 .a,它可以加载到 Android 项目中。
我猜你想共享一个使用很多资源的库,并且你需要优雅的分发方式。
尝试创建一个具有 native 功能的 .jar 文件:
首先创建核心类导出函数并定义您的 JNI 的公共(public) native 函数。
不要使用 Activity ,如果需要访问 Activity 上下文,请通过 通过参数。
如果你想使用资源,你的布局将无法在 您的父 Android 项目。
您可以使用可绘制文件,并且可以通过编程方式添加布局文件(使用 Activity 上下文)。
如果您要使用某些资源,例如 xml 配置文件,请将 在 res/raw 文件夹或 asset 文件夹中。
如果您具有良好的 Java 和 JNI 技能,那么这项任务并不那么困难。
希望建议对您有帮助。
干杯。
关于android - 我们需要在Android上发布c++预构建库,如何组织我们的库使用的资源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37655768/