- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Android自动检测版本及自动升级要点
[转自]/furongkang/article/details/6886526Android自动检测版本及自动升级步骤:1.检测当前版本的信息AndroidManifest.xml--manifest--android:versionName。2.从服务器获取版本号(版本号存在于xml文件中)并与当前检测到的版本进行匹配,如果不匹配,提示用户进行升级,如果匹配则进入程序主界面。3.当提示用户进行版本升级时,如果用户点击了确定,系统将自动从服务器上下载并进行自动升级,如果点击取消将进入程序主界面。效果图:??????????获取当前程序的版本号:???private?String?getVersionName()?throws?Exception{??????//获取packagemanager的实例????????PackageManager?packageManager?=?getPackageManager();??????//getPackageName()是你当前类的包名,0代表是获取版本信息???????PackageInfo?packInfo?=?packageManager.getPackageInfo(getPackageName(),?0);??????return?packInfo.versionName;???}??获取服务器端的版本号:????public?static?UpdataInfo?getUpdataInfo(InputStream?is)?throws?Exception{?????XmlPullParser??parser?=?Xml.newPullParser();???????parser.setInput(is,?utf-8);//设置解析的数据源???????int?type?=?parser.getEventType();?????UpdataInfo?info?=?new?UpdataInfo();//实体??????while(type?!=?XmlPullParser.END_DOCUMENT?){??????????switch?(type)?{??????????case?XmlPullParser.START_TAG:??????????????if(version.equals(parser.getName())){??????????????????info.setVersion(parser.nextText());?//获取版本号???????????????}else?if?(url.equals(parser.getName())){??????????????????info.setUrl(parser.nextText());?//获取要升级的APK文件???????????????}else?if?(description.equals(parser.getName())){??????????????????info.setDescription(parser.nextText());?//获取该文件的信息???????????????}??????????????break;??????????}??????????type?=?parser.next();??????}??????return?info;??}??从服务器下载apk:??public?static?File?getFileFromServer(String?path,?ProgressDialog?pd)?throws?Exception{??????//如果相等的话表示当前的sdcard挂载在手机上并且是可用的???????if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){??????????URL?url?=?new?URL(path);??????????HttpURLConnection?conn?=??(HttpURLConnection)?url.openConnection();??????????conn.setConnectTimeout(5000);??????????//获取到文件的大小????????????pd.setMax(conn.getContentLength());??????????InputStream?is?=?conn.getInputStream();??????????File?file?=?new?File(Environment.getExternalStorageDirectory(),?updata.apk);??????
您可能关注的文档
- 课堂新坐标2016_2017学年高中物理第2章楞次定律和自感现象第3节自感现象的应用课件.ppt
- ADAMS-技术入门与提高课件.ppt
- Agilent1100操作方法.doc
- 2.3.1 直线与平面垂直的判定与性质.ppt
- 课堂新坐标2016_2017学年高中物理第2章圆周运动2匀速圆周运动的向心力和向心加速度课件.ppt
- 2.3.1直线与平面垂直的判定(天地英豪版0).ppt
- Adobe_Photoshop_路径终极教程.ppt
- 课堂新坐标2016_2017学年高中物理第2章磁场章末分层突破课件.ppt
- AdobePremiereProCS3中文版影视编辑案例教程.ppt
- AIDS的职业暴露及其预防.ppt
文档评论(0)