Android 实现系统更新功能
/** * 安装新版本 * @param context 当前实例上下文 */ public void InstallApk(Context context,String fileName){ File f = new File(BasePath.DOWNLOAD_DIR,fileName); Intent intent = new Intent(); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.setAction(android.content.Intent.ACTION_VIEW); // 调用getMIMEType()来取得MimeType String type = getMIMEType(f); //设定intent的file与MimeType intent.setDataAndType(Uri.fromFile(f),type); context.startActivity(intent); } /** * 判断文件MimeType的method * @param f 要判断类型的文件 * @return 文件的MiMe类型 */ public String getMIMEType(File f) { String type=""; String fName=f.getName(); // 取得扩展名 String end=fName.substring(fName.lastIndexOf(".")+1,fName.length()).toLowerCase(); // 按扩展名的类型决定MimeType if(end.equals("m4a")||end.equals("mp3")||end.equals("mid")||end.equals("xmf")||end.equals("ogg")||end.equals("wav")){ type = "audio"; }else if(end.equals("3gp")||end.equals("mp4")){ type = "video"; }else if(end.equals("jpg")||end.equals("gif")||end.equals("png")||end.equals("jpeg")||end.equals("bmp")){ type = "image"; }else if(end.equals("apk")) { // android.permission.INSTALL_PACKAGES type = "application/vnd.android.package-archive"; } else{ type="*"; } //如果无法直接打开,就跳出软件清单给使用者选择 if(end.equals("apk")) { } else { type += "/*"; } return type; }
本博客内容,如需转载请务必保留超链接。Contact Me:Mail此处省略好几个字...