解析包时出现错误,用代码安装apk出现问题
2015-10-14 23:53
357 查看
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.fromFile(file),"application/vnd.android.package-archive");
startActivity(intent);
file为一个apk文件,安装的时候老是出现包解析错误,将apk文件用adb正常安装启动。
百度之,没有发现一个好的解决办法,高手同事出现了。
第一个,提供解决思路,因为这个文件是我检查更新从服务器上拉取下来的apk文件,这个apk是另外一个小伙伴上传到服务器上的,签名不一样。
考虑把我的app的manifest.xml文件下下面的版本改成和服务器一样,运行一遍,把编译的高的版本,从bin目录下拿出来放到我的安装目录下。
运行app,不安装服务器的apk文件,而是运行我自己仅仅升高了版本号的app,发现可以运行安装。但是一旦切换成服务器上面的,依然是包解析异常。
这里要注意一个问题,就是安装的包的名称和项目的名称保持一致?我这里是和project的名称保持一直就不会出现异常,也就是我在写这个文件的
名字的时候,最好和project的名称一样。可能有更宽泛的要求,待检验
第二个,发现我的安装目录可能是问题,提议我把安装目录改成sd卡目录,而不是我之前的应用程序下面的file文件夹。结果换了文件夹,果然可以安装。
intent.setDataAndType(Uri.fromFile(file),"application/vnd.android.package-archive");
startActivity(intent);
file为一个apk文件,安装的时候老是出现包解析错误,将apk文件用adb正常安装启动。
百度之,没有发现一个好的解决办法,高手同事出现了。
第一个,提供解决思路,因为这个文件是我检查更新从服务器上拉取下来的apk文件,这个apk是另外一个小伙伴上传到服务器上的,签名不一样。
考虑把我的app的manifest.xml文件下下面的版本改成和服务器一样,运行一遍,把编译的高的版本,从bin目录下拿出来放到我的安装目录下。
运行app,不安装服务器的apk文件,而是运行我自己仅仅升高了版本号的app,发现可以运行安装。但是一旦切换成服务器上面的,依然是包解析异常。
这里要注意一个问题,就是安装的包的名称和项目的名称保持一致?我这里是和project的名称保持一直就不会出现异常,也就是我在写这个文件的
名字的时候,最好和project的名称一样。可能有更宽泛的要求,待检验
第二个,发现我的安装目录可能是问题,提议我把安装目录改成sd卡目录,而不是我之前的应用程序下面的file文件夹。结果换了文件夹,果然可以安装。
相关文章推荐
- PHP方法之 substr
- django 静态资源配置详解
- QT窗体背景色设置
- php session_start()关于Cannot send session cache limiter - headers already sent 错误解决方法
- [Django模板系统]方法调用与无效变量处理
- python----面向对象:1类的定义
- C++STL之multimap多重映照容器
- eclipse 通过文件附加jar包源码
- go学习笔记
- python脚本for循环
- 正则表达式匹配解析过程探讨分析(正则表达式匹配原理)
- 生产者/消费者问题的多种Java实现方式 (待整理)
- 浅析c++中的类型转换--reinterpret_cast
- 浅析c++中的类型转换--reinterpret_cast
- (转)生产者/消费者问题的多种Java实现方式 (待整理)
- 每个程序员都应该学习使用Python或Ruby
- php验证码制作
- Java 注解处理器
- C语言之typedef int (*funcptr)()
- [Django模板系统]用点号进行深度变量的查找