安卓---android:versionCode和android:versionName 用途
主要用于升级和自我识别,转自:http://blog.csdn.net/wh_19910525/article/details/8660416
Android的版本可以在androidmainfest.xml中定义,主要有android:versionCode和android:versionName
- android:versionCode:主要是用于版本升级所用,是INT类型的,第一个版本定义为1,以后递增,这样只要判断该值就能确定是否需要升级,该值不显示给用户。
- android:versionName:这个是我们常说明的版本号,由三部分组成<major>.<minor>.<point>,该值是个字符串,可以显示给用户。
关于版本号有两个值,如下面的例子
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.xxx.xxx"
android:versionCode="2"
android:versionName="1.1">
......
versionCode是给设备程序识别版本(升级)用的,必须是一个interger值,整数,代表app更新过多少次
versionName是给用户看的,可以写1.1 , 1.2等等版本
延伸出另外一个问题:当app需要校对版本的时候怎样读取这个值?
1、读取manifest.xml
PackageManager pm = context.getPackageManager();//context为当前Activity上下文
PackageInfo pi = pm.getPackageInfo(context.getPackageName(), 0);
version = pi.versionName;
2、在里面定义 android:versionName="@string/app_versionName" 然后在 res/values/strings.xml 里定义一个同名 string item :<string name="app_versionName">1.1</string>
安卓---android:versionCode和android:versionName 用途的更多相关文章
- android:versionCode和android:versionName 用途
本文转载自:http://blog.csdn.net/wh_19910525/article/details/8660416 Android的版本可以在androidmainfest.xml中定义,主 ...
- android:versionCode和android:versionName 用途(转)
转自:http://blog.csdn.net/wh_19910525/article/details/8660416 Android的版本可以在androidmainfest.xml中定义,主要有a ...
- android:versionCode和android:versionName
Android的版本可以在androidmainfest.xml中定义,主要有android:versionCode和android:versionName android:versionCode:主 ...
- Android开发之 Android应用程序详细解析
我们继续的沿用上一篇所建立的应用. Android应用程序可以分为:应用程序源代码(.java),应用程序描述文件(.xml),各种资源. 可以这么理解: 安卓应用程序,通过java代码来实现其业务逻 ...
- Android随笔之——Android单元测试
在实际开发中,开发android软件的过程需要不断地进行测试.所以掌握Android的单元测试是极其重要的.您应该把单元测试作为Android应用开发周期的一部分,精心编写的测试可以在开发早起帮你发现 ...
- Android 学习之--android多线程断点下载
我们平时都用"迅雷"下载软件,当下载到一半的时候突然断网,下次开启的时候能够从上次下载的地方继续下载,而且下载速度很快,那么这是怎么做到的呢! 其实它的“快”其实就是多线程的下载实 ...
- 发布android app到android market的方法
转载自: http://www.stwind.org/android-market 给你的程序签名注意事项:所有提交到Market的程序必须经过签名.未经签名的程序不能安装.你可以使用个人证书去签 ...
- Android——android学习(android目录与AndroidManifest解析)
res目录:存放android项目的各种资源文件 layout:存放界面布局文件 values:存放各种xml格式的资源文件 strings.xml:字符串资源文件: colors.xml:颜色资源文 ...
- (转)Android属性设置android:noHistory="true"
设置 android:noHistory="true"后,该Activity在statck中不留历史痕迹.默认的值是false. 举例说明,假设有三个Activity分别是:A,B ...
随机推荐
- jsp解决kindeditor在线编辑器struts图片上传问题
1.下载 官网下载ckeditor,解压后去掉不需要的部分,仅需保留plugin,lang,theme文件夹,这三个文件夹中用不到的东西可以删除, 比如lang文件下存放所有语言文件js,仅仅 保留e ...
- [转载]John Burkardt搜集的FORTRAN源代码
Over the years, I have collected, modified, adapted, adopted or created a number of software package ...
- WXPP QuickFramework V2.0
微信快速开发框架(WXPP QuickFramework)V2.0版本上线--源码已更新至github 用了一个多星期的时间,把微信快速开发框架进行了改进,之前1.0版本针对的是普通订阅号,V2. ...
- ASP.NET MVC+Knockout+Web API+SignalR
架构设计(ASP.NET MVC+Knockout+Web API+SignalR) 架构设计(ASP.NET MVC+Knockout+Web API+SignalR) 2014-01-16 18: ...
- 线程:Semaphore实现信号灯
Semaphore是一个计数的信号量,可以维护当前访问自身的线程个数,并提供了同步机制.使用Semaphore可以控制同时访问资源的线程个数,例如实现一个文件允许的线程访问数.打个通俗的比喻,Sema ...
- CSLA .NET是一个.NET软件开发框架
CSLA .NET是一个.NET软件开发框架,帮助开发者“为Windows.Web.面向服务和工作流等应用构建强大和可维护的业务逻辑层”. CSLA是Component-based, Scalable ...
- [google面试CTCI] 2-3 只给定链表中间节点指针,如何删除中间节点?
[链表] Q:Implement an algorithm to delete a node in the middle of a single linked list, given only acc ...
- 关于socket通讯,如何才能高效?
关于socket通讯,如何才能高效? 网络通讯,一个不朽的话题,今天和一个做游戏的朋友(以前的同事聊天),他向我诉说了他的痛苦 他之前是做客户端的,无奈人力资源紧张,也开始搞服务器,他说自己的服务器总 ...
- 一个意想不到的Javascript内存泄漏
原文:http://point.davidglasser.net/2013/06/27/surprising-javascript-memory-leak.html 本周我在Meter的同事追踪到了一 ...
- 使用WPF教你一步一步实现连连看
使用WPF教你一步一步实现连连看(一) 第一步: 问题,怎样动态的建立一个10*10的grid(布局) for (int i = 0; i < 10; i++){ RowDefinition r ...