//程序檢查更新時,從服務器下載最新apk private void download(final Context context){ //File sdCardFile = new File(Environment.getExternalStorageDirectory().getAbsolutePath()); final File file = new File(Environment.getExternalStorageDirectory().getAbsolutePath(), "/11AXP_PACKET_LastVer_dev.apk"); HttpUtils http = new HttpUtils(); HttpHandler handler = http.download("http://update.axpapp.com/appUpdate/downloadFile?filename=AXP_PACKET_LastVer_dev.apk", file.getAbsolutePath(), true, // 若是目標文件存在,接着未完成的部分繼續下載。服務器不支持RANGE時將重新下載。 false, // 若是從請求返回信息中獲取到文件名,下載完成後自動重命名。***這個比較重要, new RequestCallBack<File>() { @Override public void onStart() { Log.v("updateAPK", "conn..."); UpdateAppDialog.showDialog(SplashActivity.this, "正在更新程序", "正在更新程序", "", null); } @Override public void onLoading(long total, long current, boolean isUploading) { Log.v("updateAPK", current + "/" + total); UpdateAppDialog.updateProgress((int)total/1024, (int)current/1024); } @Override public void onSuccess(ResponseInfo<File> responseInfo) { Log.v("updateAPK", responseInfo.result.getPath()); UpdateAppDialog.dissDialog(); CommandTools.install(file, context); } @Override public void onFailure(HttpException error, String msg) { Log.v("updateAPK", msg); } }); }