Build.VERSION.SDK_INT判断Android SDK版本号

转自:http://blog.csdn.net/l_serein/article/details/6287474 


尽管Android向下兼容不好,但是一个程序还是可以在多个平台上跑的。向下兼容不好,接口改变,新的平台上不能用旧的API,旧的平台更不可能用新的API,不等于一个平台需要一个APK。可以在高SDK上开发,并在程序中作版本判断,低版本运行环境使用旧的API。 


例如要开发一个显示通话记录的程序,需要兼容1.6~2.2,我们知道不同的平台SDK level不同,1.5是3,1.6是4,2.2是8。对应的可以使用android.os.Build进行判断。源代码如下:
Java代码  
if(Build.VERSION.SDK_INT <= 4)  
        {  
        Toast.makeText(this, "version" + Build.VERSION.RELEASE+ " :" + Build.VERSION.SDK_INT, Toast.LENGTH_SHORT).show();  
        }  
        else
        {  
        Toast.makeText(this, "version" + Build.VERSION.RELEASE+ " :" + Build.VERSION.SDK_INT, Toast.LENGTH_SHORT).show();  
        }  
if(Build.VERSION.SDK_INT <= 4)


        {


        Toast.makeText(this, "version" + Build.VERSION.RELEASE+ " :" + Build.VERSION.SDK_INT, Toast.LENGTH_SHORT).show();


        }


        else


        {


        Toast.makeText(this, "version" + Build.VERSION.RELEASE+ " :" + Build.VERSION.SDK_INT, Toast.LENGTH_SHORT).show();


        }






转自:http://www.linuxidc.com/Linux/2011-11/48325.htm
Java代码  
android.os.Build  
Java代码  
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    
// 运行结果  
/*  
board: unknown  
brand: generic  
cpu abi: armeabi  
device: generic  
display: google_sdk-eng 2.1 ERD79 22607 test-keys  
finger print: generic/google_sdk/generic/:2.1/ERD79/22607:eng/test-keys  
host: genki.mtv.corp.google.com  
id: ERD79  
manufacturer: unknown  
model: google_sdk  
product: google_sdk  
tags: test-keys  
time: 1261185425000  
type: eng  
user: android-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    
// 运行结果   
/*  
board: unknown  
brand: generic  
cpu abi: armeabi  
device: generic  
display: google_sdk-eng 2.1 ERD79 22607 test-keys  
finger print: generic/google_sdk/generic/:2.1/ERD79/22607:eng/test-keys  
host: genki.mtv.corp.google.com  
id: ERD79  
manufacturer: unknown  
model: google_sdk  
product: google_sdk  
tags: test-keys  
time: 1261185425000  
type: eng  
user: android-build  
*/
Build.VERSION  
Java代码   
// 当前开发代号  
Build.VERSION.CODENAME    
// 源码控制版本号  
Build.VERSION.INCREMENTAL    
// 版本字符串  
Build.VERSION.RELEASE    
// 版本号  
Build.VERSION.SDK    
// 版本号  
Build.VERSION.SDK_INT    
// 结果  
/*  
REL  
22607  
2.1  
7  
7  
*/
// Build.VERSION.SDK_INT可与switch搭配用  
switch (Build.VERSION.SDK_INT) {    
case Build.VERSION_CODES.BASE: // 1.0  
    break;    
case Build.VERSION_CODES.BASE_1_1: // 1.1  
    break;    
case Build.VERSION_CODES.CUPCAKE: // 1.5  
    break;    
case Build.VERSION_CODES.CUR_DEVELOPMENT: // current dev version  
    break;    
case Build.VERSION_CODES.DONUT: // 1.6  
    break;    
case Build.VERSION_CODES.ECLAIR: // 2.0  
    break;    
case Build.VERSION_CODES.ECLAIR_0_1: // 2.0.1  
    break;    
case Build.VERSION_CODES.ECLAIR_MR1: // 2.1  
    break;    
}    
// 当前开发代号   
Build.VERSION.CODENAME    
// 源码控制版本号   
Build.VERSION.INCREMENTAL    
// 版本字符串   
Build.VERSION.RELEASE    
// 版本号   
Build.VERSION.SDK    
// 版本号   
Build.VERSION.SDK_INT    
// 结果   
/*  
REL  
22607  
2.1  
7  
7  
*/
// Build.VERSION.SDK_INT可与switch搭配用   
switch (Build.VERSION.SDK_INT) {    
case Build.VERSION_CODES.BASE: // 1.0   
    break;    
case Build.VERSION_CODES.BASE_1_1: // 1.1   
    break;    
case Build.VERSION_CODES.CUPCAKE: // 1.5   
    break;    
case Build.VERSION_CODES.CUR_DEVELOPMENT: // current dev version   
    break;    
case Build.VERSION_CODES.DONUT: // 1.6   
    break;    
case Build.VERSION_CODES.ECLAIR: // 2.0   
    break;    
case Build.VERSION_CODES.ECLAIR_0_1: // 2.0.1   
    break;    
case Build.VERSION_CODES.ECLAIR_MR1: // 2.1   
    break;    
}    
android.os.Build
Java代码
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  
  
// 运行结果  
/* 
board: unknown 
brand: generic 
cpu abi: armeabi 
device: generic 
display: google_sdk-eng 2.1 ERD79 22607 test-keys 
finger print: generic/google_sdk/generic/:2.1/ERD79/22607:eng/test-keys 
host: genki.mtv.corp.google.com 
id: ERD79 
manufacturer: unknown 
model: google_sdk 
product: google_sdk 
tags: test-keys 
time: 1261185425000 
type: eng 
user: android-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  
  
// 运行结果   
/* 
board: unknown 
brand: generic 
cpu abi: armeabi 
device: generic 
display: google_sdk-eng 2.1 ERD79 22607 test-keys 
finger print: generic/google_sdk/generic/:2.1/ERD79/22607:eng/test-keys 
host: genki.mtv.corp.google.com 
id: ERD79 
manufacturer: unknown 
model: google_sdk 
product: google_sdk 
tags: test-keys 
time: 1261185425000 
type: eng 
user: android-build 
*/  
Build.VERSION
Java代码 
// 当前开发代号  
Build.VERSION.CODENAME  
// 源码控制版本号  
Build.VERSION.INCREMENTAL  
// 版本字符串  
Build.VERSION.RELEASE  
// 版本号  
Build.VERSION.SDK  
// 版本号  
Build.VERSION.SDK_INT  
  
// 结果  
/* 
REL 
22607 
2.1 


*/  
  
// Build.VERSION.SDK_INT可与switch搭配用  
switch (Build.VERSION.SDK_INT) {  
case Build.VERSION_CODES.BASE: // 1.0  
    break;  
      
case Build.VERSION_CODES.BASE_1_1: // 1.1  
    break;  
      
case Build.VERSION_CODES.CUPCAKE: // 1.5  
    break;  
      
case Build.VERSION_CODES.CUR_DEVELOPMENT: // current dev version  
    break;  
      
case Build.VERSION_CODES.DONUT: // 1.6  
    break;  
      
case Build.VERSION_CODES.ECLAIR: // 2.0  
    break;  
      
case Build.VERSION_CODES.ECLAIR_0_1: // 2.0.1  
    break;  
      
case Build.VERSION_CODES.ECLAIR_MR1: // 2.1  
    break;  
}  
 
// 当前开发代号   
Build.VERSION.CODENAME  
// 源码控制版本号   
Build.VERSION.INCREMENTAL  
// 版本字符串   
Build.VERSION.RELEASE  
// 版本号   
Build.VERSION.SDK  
// 版本号   
Build.VERSION.SDK_INT  
  
// 结果   
/* 
REL 
22607 
2.1 


*/  
  
// Build.VERSION.SDK_INT可与switch搭配用   
switch (Build.VERSION.SDK_INT) {  
case Build.VERSION_CODES.BASE: // 1.0   
    break;  
      
case Build.VERSION_CODES.BASE_1_1: // 1.1   
    break;  
      
case Build.VERSION_CODES.CUPCAKE: // 1.5   
    break;  
      
case Build.VERSION_CODES.CUR_DEVELOPMENT: // current dev version   
    break;  
      
case Build.VERSION_CODES.DONUT: // 1.6   
    break;  
      
case Build.VERSION_CODES.ECLAIR: // 2.0   
    break;  
      
case Build.VERSION_CODES.ECLAIR_0_1: // 2.0.1   
    break;  
      
case Build.VERSION_CODES.ECLAIR_MR1: // 2.1   
    break;  
}  


                
  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值