最近遇到了一个特别奇怪的问题,我用eclipse开发的一个android ndk的项目真机调试的时候运行正常,而当签名打包成apk后,在安装之后就崩溃了(或 闪退),打印信息是找不到响应的模块名。

后来苦苦查询了好久之后,才发现是这个Android的一个打包优化的问题(参考http://www.41443.com/HTML/Android/20141112/205277.html?4c534f393ea9c1a6=1),ProGuard是一个免费的java类文件压缩、优化、混淆器。它探测并删除没有使用的类、字段、方法和属性。它删除没有用的说明并使用字节码得到最大优化。它使用无意义的名字来重命名类、字段和方法.。或许ProGuard把我们的自定义的模块名当成了没有用的代码而删除了。。

还有的可能性是要指定我们自己写的模块是一个外部的链接库,这个要声明的。

解决方法:

在Android.mk文件中加入如下语句:

Android ndk开发 打包成apk后 找不到module_第1张图片

这样的话就是不启动优化,再添加这个语句之前我的打包apk是7600kb,加入之后是7800kb,而且生成的apk安装之后正常运行~

更多相关文章

  1. Android 开发使用 Gradle 配置构建库模块的工作方式
  2. react-native 之与"android原生模块"交互
  3. 坑中速记整理! 使用 kotlin 写第一个 ReactNative Android 模块
  4. android switch模块
  5. Android模块化(二)——模块通信和模块间服务调用
  6. Android的SMS短消息格式和主要字段
  7. Android Wifi模块分析(总览)
  8. android phone模块 4.2平台和4.4平台上的不同

随机推荐

  1. react native android
  2. Android(安卓)菜单(Menu)控件的使用
  3. Android(安卓)Studio 优秀插件
  4. Android(安卓)编程下 Touch 事件的分发和
  5. Android(安卓)OnLowMemory和OnTrimMemory
  6. Android(安卓)AES加密算法及其实现
  7. 配置flutter --Android(安卓)license sta
  8. Android(安卓)Studio有关详细信息, 请使
  9. ViewPager实现QQ主界面,ViewFlipper实现某
  10. Android经典的大牛博客推荐