android+命令行编译,打包生成apk文件,Android 使用Android Studio + Gradle 或 命令行 进行apk签名打包-Go语言中文社区...

官方文档:https://developer.android.com/tools/publishing/app-signing.html

默认为debug mode,使用的签名文件在:$HOME/.android/debug.keystore

比如 C:Userschengcj1.androiddebug.keystore

1.利用Gradle命令行进行签名

a. Release Mode 签名:

build.gradle:

android {

signingConfigs {

releaseConfig {

keyAlias 'stone'

keyPassword 'mypwd'

storeFile file('/Users/stone/Documents/project_AS/myapplication/stone.keystore')

storePassword 'mypwd'

}

}

buildTypes {

release {

...

signingConfig signingConfigs.release

}

}

}

signingConfigs 即签名配置。 配置名releaseConfig{ //配置内容 }

在buildTypes中指定release时的signingConfigs对应的配置名

b. 执行gradle 命令,$gradlewassembleRelease

编译并发布。 在build/outputs/apk/ 下能看到未签名的apk 和 已经签名的apk

如果未用签名文件,使用debug mode的debug签名。那就会生成一个debug签名的apk

c. 签名密码写在gradle中不安全:

signingConfigs { //gradle assembleRelease

myConfig {

storeFile file("stone.keystore")

storePassword System.console().readLine("nKeystore password: ")

keyAlias "stone"

keyPassword System.console().readLine("nKey password: ")

}

}

这样在命令 执行 命令时,就会被要求输入密码

2. 使用Android Studio 签名打包

菜单 Build > Generate Signed APK

3. 使用Android Studio 自动签名打包

a. 打开Project Structure,打开方法如下:

b2a132024ba30c9d2d9768ed34cb46de.png

b. 选中需要构建的moudle,打开Signing,添加config

a56773c8141878a0977010ca06a5d510.png

执行完成后,会在build.gradle中自动加上 signingConfigs{ config {...} }的信息

c. 打开Build Types -> release

5bbc59663927d56c746b4ae463919226.png

在signing Config中选择定义的配置

zip align enabled 默认为true, 用于启用优化Apk的操作

d. $ gradle build

会在build/outputs/apk/ 目录下输出 在build types中定义的编译类型。如:

myapplication-debug-unaligned.apk

myapplication-debug.apk

myapplication-release-unaligned.apk

myapplication-release-unsigned.apk

myapplication-release.apk

4. 使用Android SDK 和 JDK 的命令 签名打包APK

创建签名

keytool -genkey -v -keystore stone.keystore -alias stone -keyalg RSA -keysize 2048-validity 10000  生成签名文件

为apk签名

jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore stone.keystore unsigned.apk stone 不生成新文件

检测apk是否签名

jarsigner  -verbose -certs -verify signed.apk

优化apk

zipalign -f -v 4 signed_unaligned.apk signed_aligned.apk

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值