Android Apk加密

在Android Studio中,可以非常方便地使用ProGuard,在Gradle Scripts文件夹下,打开build.gradle(Module:app)文件,

显示如下:

buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }



这里的minifyEnabled属性就是控制是否启用ProGuard的开关,这个属性以前叫做runProguard,在AS1.1中将其改为minifyEnabled,将这个属性设置为true,

即可打开ProGuard功能。

proguardFiles属性用于配置混淆文件,它分为两个部分,一个是系统默认的混淆文件,它位于<SDK 目录>/tools/proguard/proguard-android.txt目录下,

Android Apk加密_第1张图片

大部分情况下,使用这个默认的混淆文件就可以了;后面一部分是项目中自定义的混淆文件,可以在羡慕的App文件夹下找到这个文件, 在这个文件里可以定义引入的

第三方依赖包的混淆规则。

配置好ProGuard之后,只要在使用AS导出APK时,即可生成混淆。


Android安全机制

1.第一道防线:代码混淆proguard.

2.第二道防线:应用接入权限控制

3.第三道防线:应用签名机制----数字证书

4.第四道防线:Linux内核层安全机制----Uid、访问权限控制

5.第五道防线:Android虚拟机沙箱机制----沙箱隔离

通常情况下,不同的应用之间不能互相访问,每个App都有与之对应的Uid,每个App也运行在单独的虚拟机中,与其它应用完全隔离。

你可能感兴趣的:(Android Apk加密)