一:使用Android Studio生成APK
1. 点击Android Studio导航栏上的Build-->Generate Signrd APK,会弹出如下图所示创建签名APK对话框
2.由于我们还没有一个正式的KeyStore文件,我们应该点击Create New按钮,然后会弹出一个新的对话框让我们来填写创建keystore文件所需要的信息,根据实际情况填写就行,如下图所示
注意,在Validity那一栏填写的是keystore文件的有效时长,单位是年,这里我填写的是30年,然后点击确定按钮
3.记住点击Remember password,这样下一次就不用填写密码了
4.点击Finish按钮,这里默认将APK文件生成在项目app的根路径下,稍等一段时间,APK文件就会生成好了,并在右上角弹出一个如下图所示的弹出框,点击Show in Explorer可以查看生成的APK文件
二:使用grade生成APK
1.编辑app/build.grade文件,在android闭包中添加如下内容
在这里我们在android闭包里面添加了一个signingConfigs闭包,又在signingConfigs闭包里添加了一个config闭包,在config闭包里面有我们keystore文件的各种信息
- storeFile file:指定keystore文件的位置,在这里引用的是相对地址
- storePassword:指定密码
- keyAlias:指定别名
- keyPassword:指定别名密码
将签名文件配置好之后,接下来只需要在生成正式版APK的时候去应用这个配置就可以了,继续编辑app/build.grade文件
这里我们在buildTypes下的release闭包下应用刚才的签名配置,这样在生成正式版APK的时候就会自动使用我们刚才配置的签名信息来进行签名了
2.现在build.grade文件已经配置完成,那么我们如何才能生成APK文件?
其实在Android Studio中内置了很多的Grade Tasks,其中就包括生成APK的Task,点击右侧工具栏的Grade-->项目名-->:app-->Tasks-->Build
其中assembleDebug用于生成测试版的APK文件,assembleRelease用于生成正式版的APK文件,assemble用于同时生成测试版和正式版的APK文件。
在生成APK文件之前,先要双击clean这个Task来清理一下当前项目,然后双击assembleRelease,运行完之后APK文件会自动生成在app/build/outputs/apk目录下
3,注意:这里虽然生成了APK文件,不过还有一个细节需要大家注意一下,目前keystore文件的所有信息都是已明文的形式直接配置在build.grade文件中,这样就不太安全,Android推荐的做法是将这类敏感数据配置在一个独立的文件里,然后再在build.grade里面读取这些数据
在Android Studio项目的根目录下有一个grade.properties文件,它是专门用来配置全局键值对数据的,我们在grade.properties文件中添加如下数据
<code>
KEY_PATH=android.jks
KEY_PASS=111111
ALIAS_NAME=lilei
ALIAS_PASS=111111
</code>