Android Build.VERSION.SDK_INT兼容介绍

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

例如要开发一个显示通话记录的程序,需要兼容1.6~2.2,我们知道不同的平台SDK level不同,1.53,1.64,2.28。对应的可以使用android.os.Build进行判断。源代码如下:

Java代码:

           if(Build.VERSION.SDK_INK<=4){

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

}

else{

Toast.makeText(this,"version"+Build.VERSION.RELEASE+Build.VERSION.SDK_INK,Toast.length_short).show();

}

  1. // Build.VERSION.SDK_INT可与switch搭配用
  2. switch (Build.VERSION.SDK_INT) {
  3. case Build.VERSION_CODES.BASE: // 1.0
  4. break;
  5. case Build.VERSION_CODES.BASE_1_1: // 1.1
  6. break;
  7. case Build.VERSION_CODES.CUPCAKE: // 1.5
  8. break;
  9. case Build.VERSION_CODES.CUR_DEVELOPMENT: // current dev version
  10. break;
  11. case Build.VERSION_CODES.DONUT: // 1.6
  12. break;
  13. case Build.VERSION_CODES.ECLAIR: // 2.0
  14. break;
  15. case Build.VERSION_CODES.ECLAIR_0_1: // 2.0.1
  16. break;
  17. case Build.VERSION_CODES.ECLAIR_MR1: // 2.1
  18. break;
  19. }

Build.BORAD          //主板

Build.BRAND           //android系统定制商

Build.CPU_ABI          //cpu指令集

Build.DEVICE           //设备参数

Build.DISPLAY         //显示屏参数

Build.FINGERPRINT    //硬件名称

Build.HOST

Build.ID               //修订版本列表

Build.Manufacture   //硬件制造商

Build.Model            //版本

Build.product     //手机制造商

Build.tags         //描述build的标签

Build.time

Build.type         //builder类型

Build.user

原文地址:https://www.cnblogs.com/hun2014/p/4705828.html