当前位置: 移动技术网 > IT编程>移动开发>Android > Android中的应用认领总结

Android中的应用认领总结

2019年07月24日  | 移动技术网IT编程  | 我要评论

ca3981,清华附中网校,山东地税网上申报平台

最近公司的一款产品提交国内市场,发现有些国内市场提示需要进行应用认领。原因就是别人(或者市场抓取)已经在我们之前将这个应用提交到了该市场。认领成功后,这个应用就重回你的怀抱了,其实认领很简单,这里讲到的自然是对未签名的包进行签名。由于这样的操作细小琐屑,这样更需要记录一下,免得以后麻烦。

如何认领

1.一般的就是市场提供一个未签名的apk包,认领方进行签名后,上传即可认领成功。
2.另一种就是提供公司证明,这个我们不讲,也没什么可以讲。

通常情况下认领都会有对一个未签名的apk包签名认证这种方式,因为签名是软件发布商所独有的,通过对比测试需认领的包的签名和刚签过名的apk包是否一致,如果一致就认领成功,否则失败。

对未签名包签名

复制代码 代码如下:

jarsigner -verbose -sigalg sha1withrsa -digestalg sha1 -keystore your_keystore  -storepass your_storepass -keypass your_keypass -signedjar path_of_signed_apk  path_of_unsigned_apk your_alias

需要替换的值

1.your_key_store keystore文件路径
2.your_storepass store密码
3.your_keypass key密码
4.path_of_signed_apk 签名后apk保存的目录
5.path_of_unsigned_apk 待签名的apk包
6.your_alias keystore中的别名

注意上面的签名算法sigalg 使用sha1withrsa或者md5withrsa都可以。

验证签名

复制代码 代码如下:

jarsigner -verify -certs -verbose your_app.apk

比如我们验证百度金融的apk,会得到类似这样的结果

复制代码 代码如下:

19:23 $ jarsigner -verify -certs -verbose baidufinance.apk | more

s      61679 fri nov 14 19:50:16 cst 2014 meta-inf/manifest.mf

      x.509, cn=baidu, ou=baidu inc., o=baidu inc., l=beijing, st=beijing, c=cn
      [certificate is valid from 12/6/13 10:19 am to 11/24/63 10:19 am]
      [certpath not validated: path does not chain with any of the trust anchors]

       61800 fri nov 14 19:50:16 cst 2014 meta-inf/mco_baid.sf
         936 fri nov 14 19:50:16 cst 2014 meta-inf/mco_baid.rsa
sm      2304 fri nov 14 19:49:32 cst 2014 assets/mean/data_mean_24_bank_card

疑难问题

复制代码 代码如下:

no -tsa or -tsacert is provided and this jar is not timestamped

在签名时加入下面的选项

复制代码 代码如下:

jarsigner -tsa http://timestamp.digicert.com

windows无法打开文件

有些windows工具无法打开签名后的apk,如果你的签名没有错误,并且验证过,这种情况请忽略。

签名认领失败

如果签名认领失败的话,请检查目前线上的包是否进行了二次打包被别人篡改了签名,如果是的话,需要进行商务上的沟通来解决了。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网