‘壹’ 如何让android studio在运行时自带签名
解决方案:先得生成一个jks文件,也就是eclipse里面的签名文件,不会的网络一下。 ①在project structure里面添加一个设置。 选择生成的jks文件位置,里面的Key Alias 和密码是生成jks的时候进行设置的。 然后build一下项目。 下面打开mole里面的build.gradle。 里面增加了之前设置的信息。 在android里面添加这段话 [html] view plain buildTypes { release { /* minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'*/ signingConfig signingConfigs.key } debug{ signingConfig signingConfigs.key } } OK,现在再运行一次,就可以实现了。
‘贰’ 教你如何使用android studio发布release 版本(完整版)
一、前提
发布release 版本,首先,的需要保证当前的app没有bug、可以正式发布了,嘿嘿,就是这样~~
二.、准备jks
.jks即密钥库,是一种包含一个或多个私钥的二进制文件,只要记住,他就相当于人的指纹一样重要就行了。切记!必须在应用的整个生命周期内使用相同的证书,以便用户能够以应用更新的形式安装新版本。我们来看看如何在as中创建密钥库。
首先,在菜单栏中,点击 Build > Generate Signed APK。出现如下对话框
点击create new....如果有了就直接choose 好了。
点击后会让你创建一个密钥库,如下图
对上面的图,稍作讲解
密钥库
Key store path:选择创建密钥库的位置 + 密钥库名字+jks。
Password:为您的密钥库创建并确认一个安全的密码。
密钥
Alias:为您的密钥输入一个标识名。
Password:为您的密钥创建并确认一个安全的密码。此密码应当与您为密钥库选择的密码不同
Validity (years):以年为单位设置密钥的有效时长。密钥的有效期应至少为 25 年,以便您可以在应用的整个生命期内使用相同的密钥签署应用更新。默认为25
Certificate:为证书输入一些关于您自己的信息。此信息不会显示在应用中,但会作为 APK 的一部分包含在您的证书中。
一定要把两个密码记住、一定要把两个密码记住、一定要把两个密码记住点,重要的事情说三遍,我为了简单,两个密码是一致的,但为了安全起见,最好不要一样。填完,击ok即可,这个时候会在相应的文件下生成demo.jks(我的),紧接着会回到下面的界面,点击next-->finish
红款里的 选项 要全选,我在自己的App在勾选V2之后,app会出现安装失败的问题。
然后说一下对于这个变动的个人建议:
这是一个从Android7.0系统出现的新的签名机制,这个新机制使得apk的签名方式更加安全,首先我们应该尝试把V1和V2两个选项全部勾选,并尽可能的去使用他们,但是如果全部勾选完毕出现了问题,那么我们可以忽略这种新的签名机制,只勾选第一个选项(V1),依旧使用我们之前老的签名机制。
然后生成的relese版本,去拷贝出来,改名字去360市场上传,会提示让你加固,然后让你签名,之后就可以发布了。
‘叁’ 安卓签名文件.keystore 和 .jks
方法一(通常用于发布版的keystore)
第一步、打开 Android Studio 的 Terminal 工具。
第二步、输入命令:keytool -v -list -keystore (keystore文件路径)。
第三步、输入 Keystore 密码
方法二 (用于调试版的keystore)
第一步、打开 Android Studio右侧面板的gradle,找到当前项目名(第一个)
第二步、点开,Tasks-->android-->signingReport,点击即可
方法三 (两者都可)
第一步、打开cmd(ctrl+r)
第二步、(调试版)控制台窗口中输入 cd .android 定位到 .android 文件夹。
(发布版)直接在控制台输入命令
第三步、输入命令 (调试版)keytool -list -v -keystore debug.keystore
无密码,直接回车即可
(发布版)keytool -list -v -keystore (keystore文件路径)
输入 Keystore 密码,回车
1、解压得到RSA文件
APK以zip文件方式打开,在\META-INF\目录中存在一个.RSA后缀的文件,一般名为CERT.RSA
2、使用keytool命令获取证书信息(包括MD5)
运行如下keytool命令即可:
keytool -printcert -file CERT.RSA
正常使用AS生成签名文件后,有这样提示,按照提示修格式,例如
keytool -importkeystore -srckeystore /Users/anbeibei/Desktop/uvpd -destkeystore /Users/anbeibei/Desktop/uvpd.jks -deststoretype pkcs12
然后使用新生成的签名文件即可
或者直接使用命令行来生成签名文件,不用AS生成再修改格式,例如
keytool -genkey -alias testalias -keypass 123456 -keyalg RSA -keysize 2048 -validity 36500 -keystore /Users/anbeibei/Desktop/test.keystore -storepass 123456
// 签名配置
signingConfigs{
debug{
storeFile file("test.jks")
storePassword"test12345"
keyAlias"test"
keyPassword"test12345"
}
release{
storeFile file("test.jks")
storePassword"test12345"
keyAlias"test"
keyPassword"test12345"
}
}
buildTypes{
release{
minifyEnabledfalse
proguardFiles getDefaultProguardFile('proguard-android-optimiz.txt'),'proguard-rules.pro'
signingConfig signingConfigs.release
}
debug{
signingConfig signingConfigs.debug
}
}
附 配置使用Android studio的terminal
签名文件.keystore 和 .jks
各种数字证书区别