android build 细节学习

android 系统权限判断

android build version版本号解释

compileSdkVersion:表示编译的 SDK 版本

minSdkVersion :表示应用兼容的最低 SDK 版本

targetSdkVersion :
这个是 Android 系统提供前向兼容的主要手段。这是什么意思呢?随着 Android 系统的升级,某个系统的 API 或者模块的行为可能会发生改变,但是为了保证老 APK 的行为还是和以前兼容。只要 APK 的 targetSdkVersion 不变,即使这个 APK 安装在新 Android 系统上,其行为还是保持老的系统上的行为,这样就保证了系统对老应用的前向兼容性。

Build相关属性和调用系统信息的方法
一、Build类的作用主要是获取系统信息,他有两个嵌套类:
Build.BOARD // 主板       
Build.BRAND // Android系统定制商   
Build.CPU_ABI // cpu指令集      
Build.DEVICE // 设备参数       
Build.DISPLAY // 显示屏参数       
Build.FINGERPRINT // 硬件名称       
Build.HOST  //    
Build.ID // 修订版本列表       
Build.MANUFACTURER // 硬件制造商      
Build.MODEL // 版本       
Build.PRODUCT // 手机制造商       
Build.TAGS // 描述build的标签       
Build.TIME  //时间    
Build.TYPE // builder类型       
Build.USER  //用户

① [Build.VERSION](http://android.toolib.net/reference/android/os/Build.VERSION.html)      获取android系统的版本信息。
 当前开发代号   Build.VERSION.CODENAME  
 源码控制版本号   Build.VERSION.INCREMENTAL  
 版本字符串   Build.VERSION.RELEASE  
 版本号   Build.VERSION.SDK  

           版本号   Build.VERSION.SDK_INT  
② [Build.VERSION_CODES](http://android.toolib.net/reference/android/os/Build.VERSION_CODES.html) 这个类封装了已经存在的SDK框架及android版本。

ECLAIR_0_1 December 2009: Android 2.0.1
ECLAIR_MR1 January 2010: Android 2.1
FROYO June 2010: Android 2.2
GINGERBREAD November 2010: Android 2.3
GINGERBREAD_MR1 February 2011: Android 2.3.3.
HONEYCOMB February 2011: Android 3.0.
HONEYCOMB_MR1 May 2011: Android 3.1.
HONEYCOMB_MR2 June 2011: Android 3.2.
ICE_CREAM_SANDWICH Android 4.0.

二、关于在获取系统信息的使用
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB_MR2)对比应用的版本与平台的版本做相应的处理。
    @TargetApi(Build.VERSION_CODES.HONEYCOMB_MR2)这个语句在程序中指出应用的版本。
    [getRadioVersion](http://android.toolib.net/reference/android/os/Build.html#getRadioVersion())方法可以根据以上属性获取系统信息。

//当前系统权限是否>6.0
if (Build.VERSION.SDK_INT>Build.VERSION_CODES.M){

 }

你可能感兴趣的:(android build 细节学习)