1、minSdkVersion,targetSdkVersion,maxSdkVersion,compileSdkVersion四个数值之间有什么区别?
• minSdkVersion,maxSdkVersion是项目支持的最低sdk版本和最高sdk版本。在安装apk前,系统会对这两个数值进行判断,决定当前系统是否可以安装,一般maxSdkVerson不会设置。
• compileSdkVersion是项目编译时的sdk版本。
• targetSdkVersion 会告诉系统,此版本已经经过充分测试,那么程序运行在该版本的系统时,就不会做过多额外的兼容性判断,运行效率会高一些。
2、获取版本信息
versionName和versionCode的区别和用处?
• android:versionCode:主要是用于版本升级所用,是INT类型的,第一个版本定义为1,以后递增,这样只要判断该值就能确定是否需要升级,该值不显示给用户。
• android:versionName:这个是我们常说明的版本号,该值是个字符串,可以显示给用户。
• versionCode是给设备程序识别版本(升级)用的,必须是一个interger值,整数,代表app更新过多少次可以为1,2等;versionName是给用户看的,可以写1.1 , 1.2等等版本
或取版本信息
代码如下 | 复制代码 |
privatevoidgetVersion(){ PackageManager pm=getPackageManager(); try{ PackageInfo info=pm.getPackageInfo(getPackageName(),0); String versionName=info.versionName; intversionCode=info.versionCode; }cache(NameNotFoundException e){ e.printStackTrace(); }
} |