我有一个支持 Crashlytics 的应用程序(现在是 Twitter Fabric 的一部分),我需要使用 Android NDK 添加一些 JNI 功能。
当 Android Studio 提示我时,我已切换到实验性 gradle:
http://tools.android.com/tech-docs/new-build-system/gradle-experimental
当我应用必要的更改并尝试同步时,出现错误:
Crashlytics 已应用于没有 Android 插件的项目。请确保在为您的项目应用适当的 Android 插件之后应用 Crashlytics 插件。
我用谷歌搜索了这个错误,发现这是 Fabric 和实验性 gradle 之间的问题,而 Fabric 团队似乎并不真正关心尽快修复它:https://twittercommunity.com/t/gradle-experiental-support/53441 .
我偶然发现了Issue with experimental gradle: The android plugin must be applied to the project但我不知道在那里做什么,我不确定这是否是正确的方法?
如何在我的项目中使用 Android NDK 和 Fabric?
最佳答案
所以 gradle-experimental 和 Fabric 不能混合。
解决方案:
1) 更新到最新的 Android Studio 2.3.1
2) 按照本教程删除 gradle 实验:https://developer.android.com/studio/projects/add-native-code.html
我所做的是创建一个新的临时项目,启用 C++ 支持并添加一个空白 Activity 。
然后我打开当前项目和临时项目,并将必要的更改复制到我自己的项目中。
完成后(大约 1 小时的工作),我能够将 C 代码构建到库中,将该库加载到我的项目中,并进行 JNI 调用。
关于android - 如何同时使用Android NDK和Fabric?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36235759/