• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

绝望生鱼片

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

Android 下载一个文件以及打开这个apk文件

下载一个网络文件的函数如下

view plain
  1. public static File downLoadFile(String httpUrl) {  
  2.             // TODO Auto-generated method stub  
  3.             final String fileName = "nq.apk";  
  4.             File tmpFile = new File("//sdcard");  
  5.             if (!tmpFile.exists()) {  
  6.                     tmpFile.mkdir();  
  7.             }  
  8.             final File file = new File("//sdcard//" + fileName);  
  9.             try {  
  10.                     URL url = new URL(httpUrl);  
  11.                     try {  
  12.                             HttpURLConnection conn = (HttpURLConnection) url  
  13.                                             .openConnection();  
  14.                             InputStream is = conn.getInputStream();  
  15.                             FileOutputStream fos = new FileOutputStream(file);  
  16.                             byte[] buf = new byte[256];  
  17.                             conn.connect();  
  18.                             double count = 0;  
  19.                             if (conn.getResponseCode() >= 400) {  
  20. //                                  Toast.makeText(DownFile.this, "连接超时", Toast.LENGTH_SHORT)  
  21. //                                                  .show();  
  22.                                 Log.i("time","time exceed");  
  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.                                             } else {  
  33.                                                     break;  
  34.                                             }  
  35.                                     }  
  36.                             }  
  37.                             conn.disconnect();  
  38.                             fos.close();  
  39.                             is.close();  
  40.                     } catch (IOException e) {  
  41.                             // TODO Auto-generated catch block  
  42.                             e.printStackTrace();  
  43.                     }  
  44.             } catch (MalformedURLException e) {  
  45.                     // TODO Auto-generated catch block  
  46.                     e.printStackTrace();  
  47.             }  
  48.             return file;  
  49.     }  

 

如果是一个apk文件,打开并且安装的函数为

view plain
  1. private void openFile(File file) {  
  2.         // TODO Auto-generated method stub  
  3.         Log.e("OpenFile", file.getName());  
  4.         Intent intent = new Intent();  
  5.         intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);  
  6.         intent.setAction(android.content.Intent.ACTION_VIEW);  
  7.         intent.setDataAndType(Uri.fromFile(file),  
  8.                         "application/vnd.android.package-archive");  
  9.         startActivity(intent);  
  10. }  

 

这样就可以实现一个apk文件的下载和安装,后续有时间给大家介绍下静默安装和卸载的实现

 

本文地址http://blog.csdn.net/Zengyangtech/archive/2011/03/15/6251377.aspx

转载请注明

posted on 2011-09-07 01:03  绝望生鱼片  阅读(1217)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3