1.设计思路,使用VersionCode定义为版本升级参数。
android为我们定义版本提供了2个属性:
2.工程目录
为了对真实项目或者企业运用有实战指导作用,我模拟一个独立的项目,工程目录设置的合理严谨一些,而不是仅仅一个demo。
假设我们以上海地铁为项目,命名为\"Subway\",工程结构如下,
3.版本初始化和版本号的对比。
首先定义在全局文件Global.java中定义变量localVersion和serverVersion分别存放本地版本号和服务器版本号。
if(Global.localVersion < Global.serverVersion){
//发现新版本,提示用户更新
AlertDialog.Builder alert = new AlertDialog.Builder(this);
alert.setTitle(\"软件升级\")
.setMessage(\"发现新版本,建议立即更新使用.\")
.setPositiveButton(\"更新\", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
//开启更新服务UpdateService
//这里为了把update更好模块化,可以传一些updateService依赖的值
//如布局ID,资源ID,动态获取的标题,这里以app_name为例
Intent updateIntent =new Intent(SubwayActivity.this, UpdateService.class);
updateIntent.putExtra(\"titleId\",R.string.app_name);
startService(updateIntent);
}
})
.setNegativeButton(\"取消\",new DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
alert.create().show();
}else{
//清理工作,略去
//cheanUpdateFile(),文章后面我会附上代码
}
}
本文地址:https://www.stayed.cn/item/13231
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我