android下载文件到应用的文件目录并安装
来源:互联网 发布:知乎 厦门长庚医院 编辑:程序博客网 时间:2024/05/17 22:36
在进行应用开发时,我们的产品需要升级,如果升级的产品放在服务器上我们就需要下载,并进行安装。一般可以选择下载到sd卡中进行安装,
但是对于没有sd卡的设备进行安装升级怎么办,
本文提供了一种方法,将下载的文件放到应用文件目录下然后通过设置为Context.MODE_WORLD_READABLE,让安装程序可以有权限安装此文件。
下载代码如下:
path:网络url
apkname:你希望保存的文件名称public void downloadApktoappDir(String path,String apkname) throws IOException{ URL url; FileOutputStream fos = null; BufferedInputStream bis = null; InputStream is = null; try { url = new URL(path); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setConnectTimeout(5000); // 获取到文件的大小 int size = conn.getContentLength(); is = conn.getInputStream(); fos = openFileOutput(apkname, Context.MODE_WORLD_READABLE); bis = new BufferedInputStream(is); byte[] buffer = new byte[1024]; int len; int total = 0; while ((len = bis.read(buffer)) != -1) { fos.write(buffer, 0, len); // 获取当前下载量 total += len; } } catch (MalformedURLException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally{ fos.close(); bis.close(); is.close(); } }
启动安装程序:
apkname:是保存文件时的文件名,
在需要进行升级的地方调用下面函数即可。
public void installApkFromLocalPath(String apkname){ Intent intent = new Intent(); intent.setAction(Intent.ACTION_VIEW); //first method intent.setDataAndType( Uri.parse("file://"+getApplicationContext().getFilesDir().getAbsolutePath() + "/" + apkname), "application/and.android.package-archive"); startActivity(intent); //second method// intent.setDataAndType(// Uri.fromFile(// new File(getApplicationContext().getFilesDir().getAbsolutePath() + "/" + apkname)),// "application/and.android.package-archive");// startActivity(intent); }
这样就可以实现再没有sd卡的条件下也可以顺利的升级自己的应用程序了。
- android下载文件到应用的文件目录并安装
- android 将文件下载到指定目录
- 利用WGET下载文件,并保存到指定目录
- 利用WGET下载文件,并保存到指定目录
- Android下载apk文件并安装
- cydia安装下载的文件目录
- 定位到文件目录并选定文件
- Android 网络应用重点———使用HttpGet 下载apk文件并安装
- Android 网络应用重点———使用HttpGet 下载apk文件并安装
- Android下载文件到sdcard并显示进度条
- 下载并安装apk文件
- 读取中文名的文件,并复制到指定目录
- 从ftp下载指定文件到指定的目录
- android 下载文件,file的读写应用
- android下载文件并打开
- Android复制Assets目录下的文件到指定目录
- Android复制assets目录下的文件到另一个目录
- Android 实现apk文件下载并自动安装
- Maven 打包 jar 、war 文件时,不将 pom.xml 等打包进包中
- Weblogic大全
- 安装minicom
- Android系统Recovery工作原理之使用update.zip升级过程分析(七)---Recovery服务的核心install_package函数
- centos 5.8升级python 2.4到2.7
- android下载文件到应用的文件目录并安装
- 输入阻抗和输出阻抗小结
- 零拷贝报文捕获要解决的几个问题,和现有的实现方法
- 统计词汇
- 弹出框笔记
- C#多线程编程(1):线程的启动
- 关于《赢》
- Subversion权限详解
- 在window分区上是无法创建/解压link文件的