注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

风之云的足迹

点击这里添加博客描述

 
 
 

日志

 
 

Android应用重新签名问题解决  

2011-12-05 19:33:16|  分类: Android |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
使用Robotium测试工具对android应用进行UI自动化测试,测试之前需要对被测应用重新签名,保证测试程序和被测程序使用相同的签名。

1、使用android自带的debug.keystore进行签名

Android自带的证书文件的位置可以在Eclispe的 windows->preferences->android->Build中查看,是 在.android/debug.keystore 文件,测试程序和微博客户端都使用该证书签名后能够测试程序能够正常访问。

别名和密码

debug.keystore的别名为 androiddebugkey ,同时密码为 android

2、重新签名apk文件

直接右键选择相应的解压工具打开apk文件,删除META‐INF文件夹中的 .RSA和.SF文件,保存退出( 注意:只是通过解压工具打开,不要解压出来
jarsigner -keystore debug.keystore -storepass android -keypass android ApplicationToTest.apk androiddebugkey
输入以上命令对应用重新签名


碰到的问题:

1、jarsigner: 找不到 debug.keystore的证书链
签名命令如下:
jarsigner -verbose -keystore debug.keystore -signedjar pris_debugkeystore.apk pris_generic_v1.1.2_debugkey.apk debug.keystore
命令解释:
jarsigner是Java的签名工具,JDK自带
-verbose参数表示:显示出签名详细信息
-keystore表示使用当前目录中的android.keystore签名证书文件。
--signedjar weibo_signed.apk netease_microblog_android_unsigned.apk表示签名后生成的APK名称为 weibo_signed.apk,未签名的APK Android软件名称为netease_microblog_android_unsigned.apk
-androidauto.keystore表示签名文件的别名,生成证书的时候有书写

上面是为android应用签名的命令,Android签名出现下面错误的解决方案:
jarsigner: 找不到 debug.keystore的证书链。debug.keystore必须引用包含专用密钥和相应的公共密钥证书链的有效密钥库密钥条目。

在使用debug.keystore重新给应用签名的时候会出现以上错误,查了一下是别名使用有错,发现debug.keystore的别名为 androiddebugkey 。同时密码为 android

2、jarsigner: 无法打开 jar 文件: pris_generic_v1.1.2.apk
之前直接解压了apk文件,然后删除META‐INF文件夹,在重新压缩把后缀名改成apk文件,这时候使用jarsigner后一直出现这个错误,解决方法是不要把apk文件解压出来,而是通过解压工具打开,直接把META‐INF文件夹里面的 .RSA和.SF文件删除,保存后退出,在执行jarsigner命令后通过。
  评论这张
 
阅读(6324)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018