Android应用构建:5:Android Studio 3.5.3:签名的生成方法

醉酒当歌 提交于 2019-12-18 05:08:17

在这里插入图片描述
使用Android Studio构建出来的APK文件可以有签名也可以没有签名,前面文章介绍了如何构建无签名的调试版或者发布版的APK文件的方法,这篇文章将继续介绍在Android Studio中创建签名的方法。

生成签名文件

步骤1: 选择Build菜单的Generate Signed Bundle / APK …子菜单项

在这里插入图片描述
在接下来的页面中选择APK选项,然后点击Next按钮
在这里插入图片描述
在接下来的页面中即可进行新建签名或者选择既有的签名了
在这里插入图片描述

步骤2: 生成新的签名

注意事项:点击Create new…按钮生成新的签名(key store)或者使用Choose existing…按钮选择所使用的Key Store是首先需要做的事情,这个页面的Key store path尽量不使用手动写入的方式以避免不必要的错误。首先点击Create new…按钮在接下来的创建新的签名的页面输入如下内容创建新的证书。

在这里插入图片描述

设定项 设定值 项目说明
Key store path keyReleaseV2.jks 签名文件名
Password liumiaocn 密码
Confirm liumiaocn 密码确认
Alias release_v2_private_key 私钥名称
Password liumiaocn 密码
Confirm liumiaocn 密码确认
Validity(years) 25 有效期(单位:年)
First and Last Name Miao Liu 持有者姓名
Organizational Unit unicorn DN的OU设定项
Organization devops DN的O设定项
City or Locality DaLian DN的L设定项
State or Province LiaoNing DN的L设定项
Country Code CN DN的C设定项

点击OK页面时这些填入的信息会自动填回,同时此时此签名文件已经创建成功

liumiaocn:Demo liumiao$ pwd
/Users/liumiao/AndroidStudioProjects/Demo
liumiaocn:Demo liumiao$ ls keyReleaseV2.jks 
keyReleaseV2.jks
liumiaocn:Demo liumiao$

在这里插入图片描述
在返回的已填入如下信息的页面,只需要点击Next即可

设定项 设定值 项目说明
Key store path keyReleaseV2.jks 签名文件名
Key store password liumiaocn 签名文件密码
Key alias release_v2_private_key 私钥名称
Key password liumiaocn 私钥密码

然后选择签名的用途,点击Finish按钮即完成了签名的创建
在这里插入图片描述

同时也会开始构建应用,执行日志如下所示:

Executing tasks: [:app:assembleRelease] in project /Users/liumiao/AndroidStudioProjects/Demo

> Task :app:preBuild UP-TO-DATE
> Task :app:preReleaseBuild UP-TO-DATE
> Task :app:compileReleaseAidl NO-SOURCE
> Task :app:checkReleaseManifest UP-TO-DATE
> Task :app:compileReleaseRenderscript NO-SOURCE
> Task :app:generateReleaseBuildConfig UP-TO-DATE
> Task :app:javaPreCompileRelease UP-TO-DATE
> Task :app:mainApkListPersistenceRelease UP-TO-DATE
> Task :app:generateReleaseResValues UP-TO-DATE
> Task :app:generateReleaseResources UP-TO-DATE
> Task :app:mergeReleaseResources UP-TO-DATE
> Task :app:createReleaseCompatibleScreenManifests UP-TO-DATE
> Task :app:processReleaseManifest UP-TO-DATE
> Task :app:processReleaseResources UP-TO-DATE
> Task :app:compileReleaseJavaWithJavac UP-TO-DATE
> Task :app:compileReleaseSources UP-TO-DATE
> Task :app:prepareLintJar UP-TO-DATE
> Task :app:lintVitalRelease
> Task :app:checkReleaseDuplicateClasses UP-TO-DATE
> Task :app:transformClassesWithDexBuilderForRelease UP-TO-DATE
> Task :app:mergeExtDexRelease UP-TO-DATE
> Task :app:mergeDexRelease UP-TO-DATE
> Task :app:mergeReleaseShaders UP-TO-DATE
> Task :app:compileReleaseShaders UP-TO-DATE
> Task :app:generateReleaseAssets UP-TO-DATE
> Task :app:mergeReleaseAssets UP-TO-DATE
> Task :app:processReleaseJavaRes NO-SOURCE
> Task :app:mergeReleaseJavaResource UP-TO-DATE
> Task :app:validateSigningRelease
> Task :app:signingConfigWriterRelease
> Task :app:mergeReleaseJniLibFolders UP-TO-DATE
> Task :app:mergeReleaseNativeLibs UP-TO-DATE
> Task :app:stripReleaseDebugSymbols UP-TO-DATE
> Task :app:packageRelease
> Task :app:assembleRelease

BUILD SUCCESSFUL in 2s
26 actionable tasks: 4 executed, 22 up-to-date

生成文件的位置如下所示:

liumiaocn:Demo liumiao$ pwd
/Users/liumiao/AndroidStudioProjects/Demo
liumiaocn:Demo liumiao$ ls release/
app-release.apk	output.json
liumiaocn:Demo liumiao$ 
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!