Android项目的打包签名及应用的版本升级(二)

Android项目的打包签名及应用的版本升级(二)

手机中的app应用版本升级时出现的问题:
将高版本的应用程序打包完在手机上安装时出现“已安装了存在签名冲突的同名数据包”警告提示。

分析之后找到原因是:
是因为在android手机上已经安装过一个低版本的应用,安装高版本应用时,旧版应用的签名与新版应用的签名信息不一致才导致出现此错误。

解决方法:
1.把旧的版本卸载掉,然后安装新版本。(但此方法不适用于在测试应用的更新提示功能时使用,因为它只能保证将高版本的应用能够安装在手机上,而不会出现更新的提醒)
2.用与低版本打包时的同一个证书重新打包,就可以正常安装,且会出现更新提示。

因此注意一下Android应用版本升级的条件:
包名一致(android系统才会识别为同一应用)且签名一致,系统检测到高版本的应用时才会正常更新。

ps:自动更新功能的代码
Uri uri = Uri.fromFile(new File(Environment.getExternalStorageDirectory() + "/railway.apk"));
// 创建Intent意图
Intent intent = newIntent(Intent.ACTION_VIEW);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);// 启动新的activity
// 设置Uri和类型
intent.setDataAndType(uri,"application/vnd.android.package-archive");
// 执行安装
context.startActivity(intent);
((Activity) context).overridePendingTransition(R.anim.roll_left2,android.R.anim.fade_out );
System.exit(0);
				


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值