关闭

android下载新版本并安装更新

681人阅读 评论(0) 收藏 举报
分类:
Environment拥有一些可以获取环境变量的方法 
package:com.demo.CanavaCancel 这个形式是 package:程序完整的路径 (包名+程序名).

//下载apk程序代码

01 <strong>protected File downLoadFile(String httpUrl) {
02                 // TODO Auto-generated method stub
03                 final String fileName = "updata.apk";
04                 File tmpFile = new File("/sdcard/update");
05                 if (!tmpFile.exists()) {
06                         tmpFile.mkdir();
07                 }
08                 final File file = new File("/sdcard/update/" + fileName);
09  
10                 try {
11                         URL url = new URL(httpUrl);
12                         try {
13                                 HttpURLConnection conn = (HttpURLConnection) url
14                                                 .openConnection();
15                                 InputStream is = conn.getInputStream();
16                                 FileOutputStream fos = newFileOutputStream(file);
17                                 byte[] buf = new byte[256];
18                                 conn.connect();
19                                 double count = 0;
20                                 if (conn.getResponseCode() >= 400) {
21                                         Toast.makeText(Main.this"连接超时", Toast.LENGTH_SHORT)
22                                                         .show();
23                                 else {
24                                         while (count <= 100) {
25                                                 if (is != null) {
26                                                         int numRead = is.read(buf);
27                                                         if (numRead <= 0) {
28                                                                 break;
29                                                         else {
30                                                                 fos.write(buf, 0, numRead);
31                                                         }
32  
33                                                 else {
34                                                         break;
35                                                 }
36  
37                                         }
38                                 }
39  
40                                 conn.disconnect();
41                                 fos.close();
42                                 is.close();
43                         catch (IOException e) {
44                                 // TODO Auto-generated catch block
45  
46                                 e.printStackTrace();
47                         }
48                 catch (MalformedURLException e) {
49                         // TODO Auto-generated catch block
50  
51                         e.printStackTrace();
52                 }
53  
54                 return file;
55         }
56 //打开APK程序代码
57  
58 private void openFile(File file) {
59                 // TODO Auto-generated method stub
60                 Log.e("OpenFile", file.getName());
61                 Intent intent = new Intent();
62                 intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
63                 intent.setAction(android.content.Intent.ACTION_VIEW);
64                 intent.setDataAndType(Uri.fromFile(file),
65                                 "application/vnd.android.package-archive");
66                 startActivity(intent);
67         }
68  
69  </strong>
0
0
查看评论

Android版本更新时安装不成功可能遇到的问题

Android版本更新时应用安装不成功有哪些原因大家好,在做版本更新时需要覆盖安装之前老版本,但有时候可能会出现覆盖安装不成功的情况,下面我们来分析导致安装不成功的原因。 一:包名不同导致新版本无法覆盖老版本 这种情况一般我们都会注意到,包名不相同是无法覆盖安装的。 在修改包名的时候要保持Andr...
  • zhoushx
  • zhoushx
  • 2017-11-29 15:51
  • 179

Android检查更新下载安装

检查更新是任何app都会用到功能,任何一个app都不可能第一个版本就能把所有的需求都能实现,通过不断的挖掘需求迭代才能使app变的越来越好。检查更新自动下载安装分以下几个步骤: 请求服务器判断是否有最新版本(通过versionCode) 如果有最新版本,就把最新的apk文件下载到本地 下载完成之后给...
  • lowprofile_coding
  • lowprofile_coding
  • 2017-09-05 15:32
  • 31296

Android,AndroidStudio不卸载进行版本升级,右侧进度条消失解决办法,以及gradle升级

第一个问题 : AndroidStudio 可以自行升级,在这里选择设置界面,之后自行下载如图所示 :          第二个问题 : AndroidStudio右侧进度条不在原来的位置或者说消失(...
  • qq_37043246
  • qq_37043246
  • 2017-08-28 17:28
  • 429

Android----- 版本更新和 服务器下载新版本APK并安装

前段时间有朋友问我版本更新的问题,所以来写一篇版本更新和APK下载并安装的博客。 版本更新,几乎在所有的项目中都用的到,一般是这样的流程,当进入APP首页是便会检测版本是否为最新版本,不是则提示你下载更新; 版本更新需要后台和移动端共同来完成,后台一般用一个接口 来返回给移动端最新版本的信息,移动端...
  • DickyQie
  • DickyQie
  • 2017-09-15 09:53
  • 674

android 自动更新 覆盖安装后 自动启动的问题

在做自动更新的时候遇到的一个问题,覆盖安装之后 就退出了,我想要的结果是安装完成后自动启动应用。 看网上不少人都是让写一个静态广播监听来实现,但是这样就太麻烦了。其实可以这么来搞,实现代码:(检测版本和下载apk的代码就不说了,不太清楚的童靴可以看我之后的博客,我会整理)// 跳转到系统安装页面 ...
  • CodeNoodles
  • CodeNoodles
  • 2016-01-21 18:44
  • 4216

android检测新版本并下载安装的方法

很多客户端程序都有检测是否有更新的功能,本文大体介绍了其实现过程。此功能模块也是开源中国客户端中的源码,个人感觉用到的安卓基础知识还是比较全面的,很适合初学者学习进阶。 /** * 检查App更新 * @param context * @param isShowMsg 是否显示提...
  • yuansuruanjian
  • yuansuruanjian
  • 2012-10-22 14:26
  • 2741

android下载新版本并更新(DownLoadManager、HttpURLConnection)

一、使用HttpURLConnection下载并更新1、下载APK文件private File download() { try { URL url = new URL("要下载apk文件的路径"); HttpURLC...
  • hello_1s
  • hello_1s
  • 2017-01-22 13:44
  • 1068

android 新版本下载 安装

1 首先在程序启动的时候 向服务器发送请求 服务器会返回    String  newVerString="2|app.quannaojiaoyu.com......" 2 然后根据 “|”拆分为俩个list 元素  ...
  • Henry_droid
  • Henry_droid
  • 2012-09-04 11:31
  • 178

Cocos2d-x3.1下 Android,APK自动升级

项目要做Android的自动升级,对于我们之前做iOS的转Cocos开发做Android方面的功能。。。。。 不对说了。这里记录下我的实现过程。
  • qqMCY
  • qqMCY
  • 2014-07-03 22:23
  • 3251

Android studio 使用原生自带DownloadManager实现app下载更新

安卓中的DownLoadManag是安卓自带的下载类专门用来下载文件,自API9开始就用这个类可以说兼容性是没问题的了,在开发中如果android给我们提供了该工具我们就没必要去重新写,避免了错误和兼容性的发生,下面我就以App下载更新的列子简单的讲下它的使用 直接看代码:代码完整直接复制...
  • liufatao
  • liufatao
  • 2017-01-17 14:56
  • 1118
    个人资料
    • 访问:81317次
    • 积分:1616
    • 等级:
    • 排名:千里之外
    • 原创:78篇
    • 转载:24篇
    • 译文:0篇
    • 评论:7条
    我的公众号
    文章分类
    最新评论