Android 签名与打包

1.签名

Android系统要求只有签名后的APK文件才可以安装,因此我们还需要对生成的APK文件进行签名。而平时我们通过Android Studio 将程序安装到手机上,是因为AS使用了一个默认的keystore文件帮我们自动进行了签名。

Android Studio提供的可视化工具生成带有正式签名的APK文件,还可以通过Gradle生成。

   signingConfigs{
        config{
            storeFile file()
            storePassword
            keyAlias
            keyPassword
        }
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            signingConfig signingConfigs.config
        }
    }
}

在android闭包中添加一个signingConfigs闭包,然后在signingConfigs闭包中添加一个config闭包,接着在config闭包中配置keystore文件的位置,storePasswrod用于指定密码,keyAlias用于指定别名,keyPassword用于指定别名密码。接着在buildTypes下面的release闭包中应用了刚才添加的签名配置,这样当生成正式版APK文件的时候就会自动使用我们刚才配置的签名信息来进行签名。

2.打包

Android Studio中内置了很多Gradle Task。

assembleDebug用于生成测试版的APK文件,assembleRelease用于生成正式版的APK文件,assemble用于同时生成测试版和正式版的APK文件。APK会自动生成在app/build/outputs/apk目录下。

keystore文件的所有信息都是以明文的形式直接配置在build.gradle中的,这样就不太安全,Android推荐的做法是将这类敏感数据配置在一个独立的文件中,然后再在build.gradle中去读取这些数据。Android Studio根目录下有一个gradle.properties文件,专门用来配置全局键值对数据的。这样直接查看build.gradle文件是无法看到keystore文件的各种信息的,只有查看gradle.properties文件才能看到,然后我们只需要保护gradle.properties文件就可以了,比如让它从git中删除,这样文件就只保留在本地,不用担心keystore文件信息泄漏了。

3.多渠道APK文件

1.添加productFlavors闭包,在该闭包中添加所有渠道配置。

2.渠道名不能以数字开头,渠道名的闭包中可以复写defautConfig中的任何一个属性。

3.差异性的代码可以在app/src目录下,main的平级目录新建一个渠道名的目录,再新建java和res两个目录。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值