-
Android 应用程序自动升级 更新至新版本 例子 有截图 附完整源码
由于Android项目开源所致,市面上出现了N多安卓软件市场。为了让我们开发的软件有更多的用户使用,我们需要向N多市场发布,软件升级后,我们也必须到安卓市场上进行更新,给我们增加了工作量。因此我们有必要给我们的Android应用增加自动更新的功能。既然实现自动更新,我们首先必须让我们的应用知道是否存在新版本的软件,因此我们可以在自己的网站上放置配置文件,存放软件的版本信息: 2 baidu_xinwen_1.1.0 http://gdown.baidu.com/data/wisegame/f98d235e39e29031/baiduxinwen.apk在这里我使用的是XML文件,方便读取。由于XML文件内容比较少,因此可通过DOM方式进行文件的解析public class ParseXmlService{ public HashMap parseXml(InputStream inStream) throws Exception { HashMap hashMap = new HashMap(); // 实例化一个文档构建器工厂 DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); // 通过文档构建器工厂获取一个文档构建器 DocumentBuilder builder = factory.newDocumentBuilder(); // 通过文档通过文档构建器构建一个文档实例 Document document = builder.parse(inStream); //获取XML文件根节点 Element root = document.getDocumentElement(); //获得所有子节点 NodeList childNodes = root.getChildNodes(); for (int j = 0; j < childNodes.getLength(); j ) { //遍历子节点 Node childNode = (Node) childNodes.item(j); if (childNode.getNodeType() == Node.ELEMENT_NODE) { Element childElement = (Element) childNode; //版本号 if ("version".equals(childElement.getNodeName())) { hashMap.put("version",childElement.getFirstChild().getNodeValue()); } //软件名称 else if (("name".equals(childElement.getNodeName()))) { hashMap.put("name",childElement.getFirstChild().getNodeValue()); } //下载地址 else if (("url".equals(childElement.getNodeName()))) { hashMap.put("url",childElement.getFirstChild().getNodeValue()); } } } return hashMap; }}通过parseXml()方法,我们可以获取服务器上应用的版本、文件名以及下载地址。紧接着我们就需要获取到我们手机上应用的版本信息:/** * 获取软件版本号 * * @param context * @return */private int getVersionCode(Context context){ int versionCode = 0; try { // 获取软件版本号, versionCode = context.getPackageManager().getPackageInfo("com.szy.update", 0).versionCode; } catch (NameNotFoundException e) { e.printStackTrace(); } return versionCode;} 通过该方法我们获取到的versionCode对应AndroidManifest.xml下android:versionCode。android:versionCode和android:versionName两个属性分别表示版本号,版本名称。versionCode是整数型,而versionName是字符串。由于versionName是给用户看的,不太容易比较大小,升级检查时,就可以检查versionCode。把获取到的手机上应用版本与服务器端的版本进行比较,应用就可以判断处是否需要更新软件。处理流程
- 2013-07-06下载
- 积分:1
-
recyclerview滑动删除功能
实现recycleView滑动出现隐藏布局用于删除item
- 2022-03-18 00:33:03下载
- 积分:1
-
android
android开发相关文档,android学习基础文档、界面切换效果总结(the book of android)
- 2013-09-09 08:37:24下载
- 积分:1
-
ecgholter用来显示心电波形,心率计算
应用背景心电图(心电图)是过程记录心脏的电活动,在一段时间内使用放置在病人体内的电极。这些电极检测微小的电变化在皮肤从心脏肌肉去极化过程中出现的每一次心跳。关键技术
- 2022-11-29 18:00:03下载
- 积分:1
-
pushbox
安卓程序设计 小游戏 推箱子游戏,初级,适合看代码学习方法(Andrews programming game Sokoban game, junior, suitable to look at the code learning methods)
- 2020-12-21 15:29:10下载
- 积分:1
-
MainActivity-stopwatch
android stopwatch 秒表 实现秒表的功能(android stopwatch stopwatch stopwatch function)
- 2012-09-05 14:28:59下载
- 积分:1
-
android activity生命周期相关代码
android activity生命周期相关代码。描述了activity产生、开始、停止、重启等过程的运行顺序。值得一看。activity是android运行的重要基础。本代码适合android开发入门者学习,对于领会android概念及其运行机制有很好的促进作用。
- 2022-03-09 22:40:11下载
- 积分:1
-
IWeather
说明: 天气预报+显示定位功能,很简洁,无任何广告与多余的东西,实习作品(Weather Forecast + Display Location Function)
- 2019-06-14 13:48:12下载
- 积分:1
-
基于STM32的网络通信实例
【实例简介】
该实例是运行在STM32平台上的LWIP网络通信实例
- 2021-08-05 00:30:58下载
- 积分:1
-
ListView下拉刷新,上拉加载更多
ListView下拉刷新,上拉加载更多
- 2018-05-31下载
- 积分:1