最近在处理关于Arcgis和高德以及百度地图在Android Studio上的代码混淆问题,这里说下问什么要做混淆,原因就是app在低版本手机上(4.X)安装启动之后手机一直黑屏。
在开始解决上述应用启动一直黑屏问题之前,这里说下Android Studio上的分包。
通过Gradle配置您的应用进行分包>>>>>
Android SDK Build Tools 21.1 及更高版本中提供的 Android Plugin for Gradle 支持以 Dalvik 可执行文件分包作为构建配置的一部分。请您务必使用 SDK 管理器将 Android SDK Build Tools 工具和 Android 支持存储区更新至最新版本,然后再尝试配置您的应用进行 Dalvik 可执行文件分包。
将您的应用开发项目设置为使用 Dalvik 可执行文件分包配置需要对您的应用开发项目做几项修改。具体地讲,您需要执行以下步骤:
- 将您的 Gradle 构建配置更改为启用 Dalvik 可执行文件分包
- 修改您的清单以引用
MultiDexApplication
类
修改模块级 build.gradle
文件配置以加入支持库和启用 Dalvik 可执行文件分包输出,如下面这段代码中所示:
android { compileSdkVersion 21 buildToolsVersion "21.1.0" defaultConfig { ... minSdkVersion 14 targetSdkVersion 21 ... // Enabling multidex support. multiDexEnabled true } ... } dependencies { compile 'com.android.support:multidex:1.0.0' }
在您的清单中,将 Dalvik 可执行文件分包支持库中的 MultiDexApplication
类添加到 application 元素中。
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.android.multidex.myapplication"> <application ... android:name="android.support.multidex.MultiDexApplication"> ... </application> </manifest>
将这些配置设置添加到应用后,Android 构建工具会根据需要构建主 dex (classes.dex) 和辅助 dex(classes2.dex、classes3.dex)。随后构建系统会将它们打包成一个 APK 文件进行分发。
注:如果您的应用用途会扩展 Application
类,您可以替换 attachBaseContext() 方法并调用 MultiDex.install(this) 来启用 Dalvik 可执行文件分包。如需了解详细信息,请参阅 MultiDexApplication
的参考文档。
以上是Android Studio上的分包方式。
那么之前说道APP一直黑屏的原因,其实也很简单,这里如果在Gradle中配置的启动分包(multiDexEnabled true),并且也配置了依赖jar(compile 'com.android.support:multidex:1.0.0'),切记最后一步,要么让你的应用的Application继承MultiDexApplication,要么在 attachBaseContext() 这个方法并且调用MultiDex.install(this),否则就会出现应用启动一直黑屏的问题。
----------------------------小心无大错---------------------
https://developer.android.com/studio/build/multidex.html#mdex-gradle