Android(安卓)下载一个文件以及打开这个apk文件
下载一个网络文件的函数如下
public static File downLoadFile(String httpUrl) { // TODO Auto-generated method stub final String fileName = "nq.apk"; File tmpFile = new File("//sdcard"); if (!tmpFile.exists()) { tmpFile.mkdir(); } final File file = new File("//sdcard//" + fileName); try { URL url = new URL(httpUrl); try { HttpURLConnection conn = (HttpURLConnection) url .openConnection(); InputStream is = conn.getInputStream(); FileOutputStream fos = new FileOutputStream(file); byte[] buf = new byte[256]; conn.connect(); double count = 0; if (conn.getResponseCode() >= 400) { // Toast.makeText(DownFile.this, "连接超时", Toast.LENGTH_SHORT) // .show(); Log.i("time","time exceed"); } else { while (count <= 100) { if (is != null) { int numRead = is.read(buf); if (numRead <= 0) { break; } else { fos.write(buf, 0, numRead); } } else { break; } } } conn.disconnect(); fos.close(); is.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } catch (MalformedURLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return file; }
如果是一个apk文件,打开并且安装的函数为
private void openFile(File file) { // TODO Auto-generated method stub Log.e("OpenFile", file.getName()); Intent intent = new Intent(); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.setAction(android.content.Intent.ACTION_VIEW); intent.setDataAndType(Uri.fromFile(file), "application/vnd.android.package-archive"); startActivity(intent); }
这样就可以实现一个apk文件的下载和安装,后续有时间给大家介绍下静默安装和卸载的实现
本文地址http://blog.csdn.net/Zengyangtech/archive/2011/03/15/6251377.aspx
转载请注明
更多相关文章
- Pycharm安装PyQt5的详细教程
- 箭头函数的基础使用
- NPM 和webpack 的基础使用
- Python技巧匿名函数、回调函数和高阶函数
- 【阿里云镜像】使用阿里巴巴DNS镜像源——DNS配置教程
- 读取android手机流量信息
- 浅析android通过jni控制service服务程序的简易流程
- android 使用html5作布局文件: webview跟javascript交互
- Android(安卓)环境搭建