源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

android实现程序自动升级到安装示例分享(下载android程序安装包)

  • 时间:2022-08-21 14:57 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:android实现程序自动升级到安装示例分享(下载android程序安装包)
[u]复制代码[/u] 代码如下:
//程序下载升级 zhouxiang @JavascriptInterface public void UpdateCAECP(final String path){ try{ AlertDialog.Builder builder = new Builder((Context)obj); builder.setMessage(“检测到有新版本发布,是否进行下载升级?”); builder.setTitle("程序更新提示"); builder.setPositiveButton("升级", new OnClickListener(){ @Override public void onClick(DialogInterface arg0, int arg1) { // TODO Auto-generated method stub m_pDialog = new ProgressDialog((Context)obj); m_pDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL); m_pDialog.setTitle("程序升级中"); m_pDialog.setMessage("正在下载最新版的CAECP,请等候…"); m_pDialog.setIcon(R.drawable.ic_launcher); m_pDialog.setProgress(100); m_pDialog.setIndeterminate(false); //设置ProgressDialog 是否可以按退回按键取消 m_pDialog.setCancelable(true); m_pDialog.show(); new CAECP_DownloadFile(m_pDialog,(Context)obj).execute(path); } }); builder.setNegativeButton("取消", new OnClickListener(){ @Override public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub dialog.dismiss(); } }); builder.create().show(); }catch(Exception e){ Alert("升级提示", e.getMessage(), "确认"); } }
[u]复制代码[/u] 代码如下:
//zhouxiang 文件下载百分比 及 自动安装 public class CAECP_DownloadFile extends AsyncTask{ ProgressDialog m_pDialog=null; String path="/sdcard/caecp/caecp.apk"; static String chattemp = "/sdcard/caecp/chat.caecp"; static String usertemp = "/sdcard/caecp/user.caecp"; Context obj; CAECP_DownloadFile(ProgressDialog m_pDialog2,Context obj2){ m_pDialog=m_pDialog2; obj=obj2; } @Override protected String doInBackground(String… sUrl) { try { URL url = new URL(sUrl[0]); URLConnection connection = url.openConnection(); connection.connect(); int fileLength = connection.getContentLength(); InputStream input = new BufferedInputStream(url.openStream()); OutputStream output = new FileOutputStream(path); byte data[] = new byte[1024]; long total = 0; int count; while ((count = input.read(data)) != -1) { total += count; m_pDialog.setProgress((int) (total * 100 / fileLength)); output.write(data, 0, count); } output.flush(); output.close(); input.close(); DownCAECP_Ok(); } catch (Exception e) { } return null; } //下载CAECP文件完成,启动新线程,调用系统进行安装 public void DownCAECP_Ok(){ new Thread(){ public void run() { Intent i = new Intent(Intent.ACTION_VIEW); i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); i.setDataAndType(Uri.parse("file://" + path),"application/vnd.android.package-archive"); obj.startActivity(i); } }.start(); }
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部