Android app签名注意事项

本文详细解析了Android应用发布过程中APK签名的重要性,包括签名机制的作用、实现方式以及如何通过命令行和集成IDE进行签名。重点介绍了如何区分debug签名与release签名,并指导开发者如何在构建Gradle配置中生成正式的签名APK。
摘要由CSDN通过智能技术生成

有几点问题需要提出来解答

1 为什么需要签名机制

答:个人觉得有三点 1. 防止别人串改自己的程序 2. 签名一致时才可升级 3. apk只有签名后才可以安装在Android系统上,系统要求

2 怎么签名

答:个人觉得有两种方法:1. 使用工具keytool和jarsigner  2.  使用AS或eclipse集成的方法

1 使用工具keytool 和jarsigner签名app

首先,生成.keystore文件,命令:

keytool -genkey -alias demo.keystore -keyalg RSA -validity 40000 -keystore demo.keystore

利用.keystore文件对apk签名

jarsigner -verbose -keystore demo.keystore -signedjar demo_signed.apk app-debug.apk demo.keystore 


2.  使用IDE,仅对as情况

可以在Build/Generate signed apk选项签名操作(灵活性很大)

如果不这么做,as默认情况下是生成debug签名,怎么看是debug签名呢,对已生成的apk用如下命令

jarsigner -verify -certs -verbose *.apk


如果是下面的信息, CN=Android Debug等,这是debug签名,debug签名是普遍的签名,是不会允许提交到google play store上的

sm       315 Fri Dec 25 15:39:14 CST 2015 org/joda/time/tz/data/America/Fortaleza


      X.509, CN=Android Debug, O=Android, C=US

      [证书的有效期为15-9-29 上午11:40至45-9-21 上午11:40]

      [CertPath 未验证: Path does not chain with any of the trust anchors]


除非是realease签名,如果要生成release版本的apk,需要对build.gradle进行配置

signingConfigs {
    config {
        keyAlias ''
        keyPassword ''
        storeFile file('')
        storePassword ''
    }
}

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

当然你可以对debug签名使用你自己定义的类型,只需要在buildTypes 里面添加

debug{

   signingConfig signingConfigs.config

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值