Android Build类的详解及简单实例

Android Build类的详解及简单实例

一、类结构:

java.lang.Object
? android.os.Build

二、类概述:从系统属性中提取设备硬件和版本信息。

三、内部类:

1、Build.VERSION 各种版本字符串

2、Build.VERSION_CODES 目前已知的版本代码的枚举类

四、常量:UNKNOWN 当一个版本属性不知道时所设定的值。其字符串值为 unknown .

五、构造方法: Build ()

六、静态属性

1、BOARD 主板:The name of the underlying board, like goldfish.

2、BOOTLOADER 系统启动程序版本号:The system bootloader version number.

3、BRAND 系统定制商:The consumer-visible brand with which the product/hardware will be associated, if any.

4、CPU_ABI cpu指令集:The name of the instruction set (CPU type + ABI convention) of native code.

5、CPU_ABI2 cpu指令集2:The name of the second instruction set (CPU type + ABI convention) of native code.

6、DEVICE 设备参数:The name of the industrial design.

7、DISPLAY 显示屏参数:A build ID string meant for displaying to the user

8、FINGERPRINT 唯一识别码:A string that uniquely identifies this build. Do not attempt to parse this value.

9、HARDWARE 硬件名称:The name of the hardware (from the kernel command line or /proc).

10、HOST

11、ID 修订版本列表:Either a changelist number, or a label like M4-rc20.

12、MANUFACTURER 硬件制造商:The manufacturer of the product/hardware.

13、MODEL 版本即最终用户可见的名称:The end-user-visible name for the end product.

14、PRODUCT 整个产品的名称:The name of the overall product.

15、RADIO 无线电固件版本:The radio firmware version number. 在API14后已过时。使用getRadioVersion()代替。

16、SERIAL 硬件序列号:A hardware serial number, if available. Alphanumeric only, case-insensitive.

17、TAGS 描述build的标签,如未签名,debug等等。:Comma-separated tags describing the build, like unsigned,debug.

18、TIME

19、TYPE build的类型:The type of build, like user or eng.

20、USER

七、公共方法:

public static String getRadioVersion() 获取无线电固件版本

八、测试示例:

public static String getDeviceInfo() {
    StringBuffer sb = new StringBuffer();
    sb.append("主板: "+ Build.BOARD+"\n");
    sb.append("系统启动程序版本号: " + Build.BOOTLOADER+"\n");
    sb.append("系统定制商:" + Build.BRAND+"\n");
    sb.append("cpu指令集: " + Build.CPU_ABI+"\n");
    sb.append("cpu指令集2 "+ Build.CPU_ABI2+"\n");
    sb.append("设置参数: "+ Build.DEVICE+"\n");
    sb.append("显示屏参数:" + Build.DISPLAY+"\n");
    sb.append("无线电固件版本:" + Build.getRadioVersion()+"\n");
    sb.append("硬件识别码:" + Build.FINGERPRINT+"\n");
    sb.append("硬件名称:" + Build.HARDWARE+"\n");
    sb.append("HOST: " + Build.HOST+"\n");
    sb.append("修订版本列表:" + Build.ID+"\n");
    sb.append("硬件制造商:" + Build.MANUFACTURER+"\n");
    sb.append("版本:" + Build.MODEL+"\n");
    sb.append("硬件序列号:" + Build.SERIAL+"\n");
    sb.append("手机制造商:" + Build.PRODUCT+"\n");
    sb.append("描述Build的标签:" + Build.TAGS+"\n");
    sb.append("TIME: " + Build.TIME+"\n");
    sb.append("builder类型:" + Build.TYPE+"\n");
    sb.append("USER: " + Build.USER+"\n");
    return sb.toString();
  }

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

(0)

相关推荐

  • Android Studio 当build时候出错解决办法

    Android Studio在build的时候出现transformClassesWithDexForDebug Android Studio在build的时候出现以下问题: Error:Execution failed for task ':app:transformClassesWithDexForDebug'. > com.android.build.api.transform.TransformException: com.android.ide .common.process.Proc

  • Android Gradle Build Error:Some file crunching failed, see logs for details解决办法

    Android Gradle Build Error:Some file crunching failed, see logs for details解决办法 错误日志:Error:java.lang.RuntimeException: Some file crunching failed, see logs for details Log: FAILURE: Build failed with an exception. * What went wrong: Execution failed

  • Android设计模式之Builder模式详解

    Builder模式使用链式结构创建复杂对象,将过程与结果分开,创建过程中可以自行组合. 使用场景 一个对象,不同组合,不同顺序生成不同的结果 优点:封装性更规范,程序调用不用关系内部细节,注重结果即可 缺点:如果builder对象过多,会加大内存消耗 public class TabInfoBean { private int count;//Tab的个数 必选 private int currentTab;//默认选中的tab 必选 private String[] tabText;//文字必

  • Android 解决build path errors的问题

    新建一个eclipse-android项目后,如test2,从其它项目中拷贝若干个包到test2中, 在编译时总会出现以下错误: ?主要看第三条:The project cannot be built until build path errors are resolved 这个错误的原因是:AndroidManifest.xml中配置的主包名与AndroidManifest.xml 中配置的activtiy所在的包不一致造成的. 修改方法为: 1.在AndroidManifest.xml中找到

  • Android 中build.prop 文件与 getprop 命令

    Android 中build.prop 文件与 getprop 命令 在android系统中,它的根文件系统下有几个用于启动系统时需要的配置文件: /init.rc /default.prop /system/build.prop 我们先看看 build.prop 里面到底有些什么东西: E:\AndroidProject\NowaMagic>adb shell shell@android:/ $ su su root@android:/ # cd system cd system root@a

  • Android中用Builder模式自定义Dialog的方法

    前言 我们开发人员在实际项目过程中遇到的需求是多种多样的,有时我们要匹配APP自己的设计风格,有时我们会觉得系统的对话框使用起来不够自由,因此自己定义一个适合自己的Dialog是很有必要的. 为什么要用Builder模式 Builder设计模式是一步步创建一个复杂对象的创建型模式,它允许用户在不知道内部构建细节的情况下,可以更精细地控制对象的构造流程.它的优点就在于将对象的构建和表示分离从而解耦.我们都知道Android系统自身的对话框如AlertDialog就采用了Builder模式,因此可见

  • Android使alertDialog.builder不会点击外面和按返回键消失的方法

    这个问题之前一直困扰我,我的需求就是点击对话框外面和按返回键对话框不会消失,按返回键还好解决,拦截下返回键就OK了. 但是点击外面不好解决.之前有人说模态对话框,我看了一会,觉得不是我想要的效果.popWindow的话,必须提供父view. 重新看下api,发现设置setCancelable属性就行了. 如: public void showNoProject(){ Builder builder = new AlertDialog.Builder(MainActivity.this) .set

  • Android Gradle Build Error:Some file crunching failed, see logs for details的快速解决方法

    错误日志:Error:java.lang.RuntimeException: Some file crunching failed, see logs for details Log: FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':app:mergeDebugResources'. > Error: java.lang.RuntimeException: Crunch

  • Android对话框AlertDialog.Builder使用方法详解

    我们在平时做开发的时候,免不了会用到各种各样的对话框,相信有过其他平台开发经验的朋友都会知道,大部分的平台都只提供了几个最简单的实现,如果我们想实现自己特定需求的对话框,大家可能首先会想到,通过继承等方式,重写我们自己的对话框.当然,这也是不失为一个不错的解决方式,但是一般的情况却是这样,我们重写的对话框,也许只在一个特定的地方会用到,为了这一次的使用,而去创建一个新类,往往有点杀鸡用牛刀的感觉,甚至会对我们的程序增加不必要的复杂性,对于这种情形的对话框有没有更优雅的解决方案呢? 幸运的是,an

  • Android 中StringBuffer 和StringBuilder常用方法

    如果我们的程序是在单线程下运行,或者是不必考虑到线程同步问题,我们应该优先使用StringBuilder类:如果要保证线程安全,自然是StringBuffer. 除了对多线程的支持不一样外,这两个类的使用方式和结果几乎没有任何差别, 区别在于StringBufferd支持并发操作,线性安全的,适 合多线程中使用.StringBuilder不支持并发操作,线性不安全的,不适合多线程中使用.新引入的StringBuilder类不是线程安全的,但其在单线程中的性能比StringBuffer高. Str

随机推荐