生成apk签名_apk签名制作
1.Android studio怎么生成签名apk
2.Android studio怎么直接对apk签名
3.生成签名文件和签名应用(超级详细版)
4.获取apk的签名信息
5.怎么使用命令对APK包进行签名
6.Android apk 系统签名
7.android开发 怎么给apk文件用已有的签名文件进行签名,不用eclipse
在网站需要管理apk的功能时,经常需要校验上传者提供的apk文件,校验开发者签名,包名和版本等。如何获取apk文件的签名信息呢?
通过如下几个步骤便可实现:
apksigner.jar通常包含在Android SDK中可。如果你不是Android开发者, 可找Android开发同学拿一下,路径一般在Android SDK/build-tools/ {SDK版本} /lib/apksigner.jar
不同的SDK版本中均有一个,取最新版本的就好了。
输出示例: (个人信息已加***处理, 请以实际输出为准)
通过输出内容可以发现,其中包含apk使用的签名版本(v1/v2/v3/v4)信息外,还有开发者证书相关的信息。
接下来通过程序裁剪出你想要的信息便大功告成了。
Android studio怎么生成签名apk
在某些特殊情况下,需要对已经生成的apk进行重新签名,或者对已经生成的apk更换签名版本(v1/v2/v3/v4)。如何实现呢? 可以通过命令行对已生成的apk进行处理。
apksigner.jar通常包含在Android SDK中可。路径一般是在Android SDK/build-tools/ {SDK版本} /lib/apksigner.jar
不同的SDK版本中均有一个,取最新版本的就好了。
使用压缩软件打开apk,删除包内 /META-INF/ 文件夹及文件夹内所有文件,并重新压缩文件。
准备好签名证书及相关密码和需要刚处理过得apk文件
示例:
执行命令
接着输入证书保护密码及别名密码。
可以从此命令的输出中看出当前生成的apk签名情况。
可以通过如下命令行参数进行控制
--v1-signing-enabled true
--v2-signing-enabled true
--v3-signing-enabled false
使用的签名版本还跟apk编译时使用的最低SDK版本有关, 即min-sdk-version的值。如果设置的值大于等于26,即使添加--v1-signing-enabled true 也无法通过上述步骤签V1版本的签名--仅有V2签名(Android Studio也是)。
可以对最后生成的apk通过执行如下命令尝试:
Android studio怎么直接对apk签名
第一,你需要做一个签名文件,比较简单,百度搜索apk签名文件即可。第二,你可以选择两种方式给apk签名(常见的利用jdk的keytool工具便可以签名),既然你用了android studio,则可以在build选项中选择生成签名apk,按向导提示导入第一步的签名文件即可。
生成签名文件和签名应用(超级详细版)
1、选中需要签名的module,点击菜单“Build——>Build APK”使用默认debug.keystore文件对apk进行签名或不签名 2、点击菜单“Build——>Generate Signed APK”使用自动release.keystore文件对apk进行签名 3、关于签名的三种方式,参考钊林IT
获取apk的签名信息
签名文件说明出处 ,标准的测试秘钥包含四个部分:testkey、platform、shared和media。
在源码 development/tools/ 目录中,有一个make_key脚本,可以使用这个脚本来生成证书
Step 1:cd到development/tools/目录
Step 2:运行make_key脚本: sudo ./make_key platform '/C=CN/ST=YourProvince/L=YourLocation/O=YourOrganization/OU=YourOrganizationalUnit/CN=YourName'
说明:testkey是生成的文件名,后面是证书里面的内容
Step 3:输入自定义密码
此时就会生成:platform.x509.pem和platform.pk8
此时就可以使用 out/host/linux-x86/framework/ 目录下的signapk.jar包来对apk进行签名了
如果使用原生的证书,目录在 /build/target/product/security/ 中可以找到platform.pk8 platform.x509.pem文件,如果有我们上面生成的也可以。
将要打包的apk、证书和signapk.jar放到一个目录。
要使用Android Studio对应用自动签名,需要生成.jks的证书,该二进制格式的证书,同时包含证书和私钥,一般有密码保护。
如果是没有密码的pem格式的证书生成.jks文件方式如下:
有密码的pem格式的证书生成.jks文件的方式:
如密码是:c6a04bdc7236f5d18c75840f50dee482b36ad4cc
生成.jks文件之后,导入as中,编译工程的时候,选择 Generate Signed Bundle or APK 按照上面生成输入的昵称和密码一直下一步就可以完成工程签名了。
怎么使用命令对APK包进行签名
在接入第三方功能时,经常要注册提交apk的签名信息 (sha1签名)?,下面列出相关步骤。
获取apk签名信息的步骤:
1)修改apk后缀名为zip,解压得到其中的META-INF文件夹;
2)把META-INF文件夹放到C盘根目录下;
3)在dos面板中, ?敲入命令: ?keytool -printcert -file C:\META-INF\CERT.RSA ?命令,即可获取sha1签名信息
————————————————————————————>
大神说:一步就能搞定
在dos面板中,? 敲入命令:keytool -printcert -jarfile debug.apk
Android apk 系统签名
上面命令中各选项说明如下。
-genkeypair:指定生成数字证书
-alias:指定生成数字证书的别名
-keyalg:指定生成数字证书的算法,使用RSA算法
-validity:指定生成的数字证书的有效期
-keystore:指定所生成的数字证书的储存路径
输入上面的命令后按回车,会出现以交互方式让用户输入数字证书keystore的密码/作者/公司等详细信息。
备注:这一步时生成属于你们公司/你的数字证书,这一步只需要做一次即可。一旦数字证书创建成功之后,只要在该证书有效期内,可以一直重复使用该证书。
2.生成未签名的APK安装包。在Eclipse中右击Android项目,在弹出的菜单中找到“Android Tools -->Export Unsigned Application Package...“菜单项,Eclipse弹出一个保存文件的对话框,当用户选择储存文件后单击”Finish”按钮即可生成一个未签名的APK安装包。
备注:这一步是生成一个未签名的APK按转包,如果已经有未签名的安装包,那么该步骤可以跳过
3.使用jarsigner命令对未签名的APK安装包进行签名。JDK的安装目录下的bin子目录下提供了jarsigner.exe工具进行签名。在命令行窗口输入如下命令:
android开发 怎么给apk文件用已有的签名文件进行签名,不用eclipse
因工作需要对系统的wifi和以太网进行配置,需要获取到系统权限以后才能进行操作,因此研究了下对apk 进行系统签名以获取系统权限,其实本来打算如果root可以的话直接通过root的方式(设备已经root),后来找了半天发现没有api进行修改,无奈只能进行系统签名了,有童鞋知道root方式修改不妨告诉我一下。
这些文件可以问系统厂商获取,如果是原生系统可以到系统源码目录下获取。
如果报以下的错误 ,这时候就用到准备的libconscrypt_openjdk_jni.so 文件
为了检测我们的应用是否已经签名成功 可以获取系统权限,看看能否获取到。
结果:
在上一种方式中,我们成功对我们的apk进行了系统签名,并且能使用系统权限,但是必须每次打包出apk再进行签名 对调试很不方便,下面我们可以生成带有系统签名的签名文件,在项目中使用,就不需要每次手动进行签名。
bubble可以替换为自己喜欢的名称,这一步要输入密码,我尝试输入其他不行,只能输入android。
bubble 可替换为自己喜欢的password和alias
到这里 两种对进行系统签名的方式完成,如有不足,欢迎指出.
给apk文件签名主要分三步:
1、创建证书
2、签名
3、优化(可选)
1)使用jdk的keytool工具生成签名用的证书> keytool -genkey -v -alias CERT -keyalg RSA -keysize 2048 -validity 10000 -keystoreCERT.keystore 创建过程需要输入一些标识信息和密码,一些重要的参数值说明如下(根据自己的需要要进行相应的修改): CERT.keystore ---- 证书保存的文件名 CERT ---- 证书的别名 10000 ---- 10000天的有效期 2048 ---- 默认为 bits,Android 建议使用2048 bits或更高其他的详细信息可以使用keytool -help查看帮助 证书生成后使用如下命令可以查看证书的信息:> keytool -list -alias CERT -keystore CERT.keystore
2)使用jdk的jarsigner工具对apk文件签名> jarsigner -verbose -keystore CERT.keystore to_sign.apk CERT 签名过程需要输入证书的密码,一些重要的参数值说明如下(根据自己的需要要进行相应的修改): CERT.keystore ---- 证书保存的文件名 CERT ---- 证书的别名 待签名的apk文件根根目录下如果有文件夹“META-INFO”,请先删除(重新签名就需要这样做)。如果不想创建过程输出太多信息,可以删除“-verbose” 。上述签名会直接覆盖原来的文件,如果不想被覆盖而签名为另外的新文件 signed.akp,只需将 to_sign.apk 改为 -signedjar to_sign.apk signed.akp 即可。签名后可以使用如下命令验证是否签名成功: > jarsigner -verify to_sign.apk 如果需要查看更详细的验证信息,可修改为:> jarsigner -certs -verbose -verify to_sign.apk
3)使用android sdk的zipalign工具优化已签名的apk文件> zipalign -v 4 unaligned.apk aligned.apk 注意要在签名后再zipalign。这个工具不是jdk自带的,而是在%ANDROID_HOME%\tools\zipalign.exe。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。