Android检测版本更新.doc
文本预览下载声明
Android检测版本更新
一、准备
????? 1.检测当前版本的信息AndroidManifest.xml--manifest--android:versionName。
????? 2.从服务器获取版本号(版本号存在于xml文件中)并与当前检测到的版本进行匹配,如果不匹配,提示用户进行升级,如果匹配则进入程序主界面。
????? 3.当提示用户进行版本升级时,如果用户点击了确定,系统将自动从服务器上下载并进行自动升级,如果点击取消将进入程序主界面。
二、效果图
??????????????????????
三、必要说明
????? 服务器端存储apk文件,同时有version.xml文件便于比对更新。
?xml version=1.0 encoding=utf-8?
info
version2.0/version
url87:8080/mobilesafe.apk/url
description检测到最新版本,请及时更新!/description
url_server9/version.xml/url_server
/info
package com.android;
public class UpdataInfo {
private String version;
private String url;
private String description;
private String url_server;
public String getUrl_server() {
return url_server;
}
public void setUrl_server(String url_server) {
this.url_server = url_server;
}
public String getVersion() {
return version;
}
public void setVersion(String version) {
this.version = version;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
}
牋?a?? apk和版本信息地址都放在服务器端的version.xml里比较方便,当然如果服务器端不变动,apk地址可以放在strings.xml里,不过版本号信息是新的,必须放在服务器端,xml地址放在strings.xml。
?xml version=1.0 encoding=utf-8?
resources
string name=helloHello World, VersionActivity!/string
string name=app_nameVersion/string
string name=url_server9/version.xml/string
/resources
????? 不知道读者发现没有,笔者犯了个错误,那就是url_server地址必须放在本地,否则怎么读取version.xml,所以url_server不必在实体类和version里添加,毕竟是现需要version地址也就是url_server,才能够读取version。
三、代码实现
?xml version=1.0 encoding=utf-8?
LinearLayout xmlns:android=/apk/res/android
android:layout_width=fill_parent
android:layout_height=fill_parent
android:orientation=vertical
Button
android:id=@+id/btn_getVersion
android:text=检查更新
android:layout_width=wrap_content
android:layout_height=wrap_content/
/LinearLayout
package com.android;
import java.io.InputStream;
import
显示全部