您的位置:首页 > 其它

关于版本升级的一点理解(VersionUpdate)

2016-05-24 22:04 363 查看
强调内容

在android中,第一次设计APP的时候不可能面面俱到,需求随时会改变,所以我们就会用到版本升级。

升级:

1.测试tomcat中升级接口

2.编写UpdateEntity

3.编写UpdateParse类

4.编写业务类UpdateBiz

5.发消息、广播处理、下载APK

断点续传:在请求头定义Range:bytes=0-32767

RandomAccessFile:断点下载,断点上传

6.测试APK所在路径是否存在,使用assert(true判断apk路径)

7.安装apk

Intent intent =Intent(Intent.ACTION_VIEW);

intent.setDataAndType(URL.fromFile(new File(APK_PATH)),“application/vnd.android.pakege-archive”); //双引号内表示一个APK文件

startActivity(intent);

8.闪电升级

即提前下载好软件,用户使用的时候直接安装

public abstract class VersionCheckActivity extends BaseActivity{

/**
* 版本更新检测
*/
protected void checkVersion(boolean showLoading){
loadDialog = getLoadingDialog("版本更新检测中...");
if(showLoading){
loadDialog.show();
}
RequestParam req = new RequestParam();
int vcode = AndroidNativeUtils.getAppVersionCode(getApplicationContext());
req.addStringParam("vcode", String.valueOf(vcode));
gsonRequest = new GsonRequest<ApkVersion>("ApkVersion", ApkVersion.class, req, new Listener<ApkVersion>() {
@Override
public void onResponse(final ApkVersion response) {
// TODO Auto-generated method stub
dissmissDialog();
if(!TextUtils.isEmpty(response.downUrl)){ //有更新

showCustomDialogDefault("发现信息版本,请更新",new DialogButtonClickListener() {

@Override
public void rightButtonClick(Dialog dialog, View view) {
// TODO Auto-generated method stub
dialog.dismiss();
new ApkDownloader(VersionCheckActivity.this).performDownload(response);
}

@Override
public void leftButtonClick(Dialog dialog, View view) {
// TODO Auto-generated method stub
dialog.dismiss();

}
});
}else{
UIHelper.showShortMeessage("当前版本为最新版本", getApplicationContext());
}
}
}, new ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
// TODO Auto-generated method stub
dissmissDialog();
UIHelper.showErrorInfo(error, context);
}
});
HttpService.getInstance(getApplicationContext()).doPostRequest(gsonRequest);
}

}


这里写代码片
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: