Android Build类获取设备信息
前言
因为项目中经常会遇到要上传一系列设备信息的功能,为了方便使用,所以就拆分成以下系列文章来单独介绍如何获取各类设备信息
- 手机运营商获取
- AndroidID、IMEI、OAID获取
- 地理位置信息经纬度获取
- 公网IP地址获取:移动网络IP、Wifi IP
- Build类获取相关设备信息
- 屏幕相关信息:密度、物理尺寸获取
- BuildConfig获取的一系列基础信息
- UA、网络状态…等持续更新
我们需要的一些设备信息,其实可以直接从Build类中获取。
Build类介绍:
Information about the current build, extracted from system properties.
Build类可以从系统属性中获取到关于当前设备的一些信息
下面我们看看常用的哪些信息可以从Build类中获取到。
1. 常用的设备信息
字段 | 示例 | 说明 |
---|---|---|
Build.MODEL | Pixel XL | 手机型号 |
Build.BRAND | 设备品牌 | |
Build.DEVICE | marlin | 设备名 |
Build.BOARD | marlin | 主板名称 |
Build.PRODUCT | marlin | 手机制造商 |
Build.HARDWARE | marlin | 硬件名称,来自内核命令行或者proc |
Build.SERIAL | 01121411b0gg |
硬件序列号,但是始终设置为unknown,已过时,被替换为Build.getSerial(),该方法只有系统应用才能获取,需要READ_PRIVILEGED_PHONE_STATE 权限
|
Build.MANUFACTURER | 硬件制造商 |
Build.VERSION相关
字段 | 示例 | 说明 |
---|---|---|
Build.VERSION.RELEASE | 7.1.1 | 安卓系统版本 |
Build.VERSION.SDK_INT | 25 | 运行软件的sdk版本,除非ota升级,否则设备运行时是不会改变的 |
Build.VERSION.SDK | 25 | 编译时sdk版本 |
Build.VERSION.BASE_OS | 空 | 产品构建所基于的操作系统 |
Build.VERSION.CODENAME | REL | 当前的开发代号,如果是正式版则是REL |
Build.VERSION.INCREMENTAL | 3636322 | 当前系统的版本(底层代码使用的值) |
Build.VERSION.PREVIEW_SDK_INT | 0 | 永远是0 |
Build.VERSION.SECURITY_PATCH | 2017-02-05 | 最近安全补丁日期 |
2. 其他设备信息
字段 | 示例 | 说明 |
---|---|---|
Build.TYPE | user | builder类型 |
Build.USER | build | 系统用户名 |
Build.HOST | Build2 | 系统主机名 |
Build.TAGS | release-keys | 描述build的标签 |
Build.ID | NOF26V | 修订版本编号 |
Build.SUPPORTED_ABIS | x86、armeabi-v7a、armeabi | 支持的ABI列表 |
Build.DISPLAY | NOF26V | 用于向用户显示的构建 ID 字符串?(对接文档称显示屏参数) |
Build.BOOTLOADER | unknown | 系统的引导加载程序版本号 |
Build.getRadioVersion() | 空 | 返回无线电固件版本号,可能返回null,因为收音机未打开 |
Build.VERSION_CODES.M Build.VERSION_CODES.Q |
枚举当前已知的SDK版本号 | |
Build.SUPPORTED_32_BIT_ABIS | x86、armeabi-v7a、armeabi | 支持的32位ABI列表 |
Build.SUPPORTED_64_BIT_ABIS | 空 | 支持的64为ABI列表 |
Build.FINGERPRINT |
google/marlin/marlin:7.1.1/NOF26V/ 3636322:user/release-keys |
唯一标识此build的唯一参数,不要解析它 |
Build.TIME | 1505736970000 | Build文件生成的时间 |
3. 总结
可以看到Build类可以获取到的信息还是很多的,除了getSerial()
,剩下的都不需要什么权限。以上就是全部内容,如果本文对你有帮助,请别忘记点赞start,如果有不恰当的地方也请提出来,下篇文章见。
项目地址
Android Build类获取设备信息相关推荐
- Android Build类获取系统信息
Build类中的常量列表 Build类可以用来获取Android系统的相关信息.Build类中定义了一系列的public static final的常量,和两个静态内部类(VERSION和VERSIO ...
- android异常信息,Android 获取设备信息 异常
/**获取设备信息 * @param c * @return */ public static void setDeviceInfo(Context c,RequestParams params){ ...
- Android之使用MediaMetadataRetriever类获取媒体信息
一.昨天,介绍了使用MediaMetadataRetriever类来获取视频第一帧: http://blog.csdn.net/u012561176/article/details/47858099, ...
- react获取设备高_React-Native 获取设备信息, Android获取IEMI码
简单介绍 关于引入上面的依赖, 链接中都有说明, 算了还是说一遍吧: **注意: ** 这里只说 Android 的配置步骤, IOS请去链接中查看 1: 获取设备信息 react-native-de ...
- 2022-01-26 Android app java 获取设备制造商的方法:Build.MANUFACTURER,实际上是读ro.product.manufacturer的值。
一.Android app java 获取设备制造商的方法:Build.MANUFACTURER 二.例如 二.分析Build.MANUFACTURER流程,实际上是读ro.product.manu ...
- Android 集成FCM(Google 推送)导致上架失败,提前获取设备信息ANDROID ID
又来记笔记 大佬们~~ 近期启用之前的项目上架,首先上架的是华为市场,发现一大堆问题,各种审核被拒,搞得问候了审核员的亲戚几次,一次给你来一两条,不会全部一次性给完.奈何别人的大公司.... 大致总结 ...
- Flutter中使用device_info获取设备信息
1. 安装插件 配置 device_info 插件. dependencies:flutter:sdk: flutter# 设备信息device_info: ^2.0.2 在pubspec.yaml中 ...
- java 自己实现 解析处理user-agent 获取设备信息 ip-ua转化归因
前景提要 最近在做app投放的转化归因,几个搜索平台并不一定能获取到muid,于是需要用到ip-ua归因模式 网上粗略搜了一下,发现许多文章ua处理用的uaparser又或者user-agent-ut ...
- Android通过蓝牙获取设备的通讯录、通话记录等
本功能实现方案流程如下: 1.在AndroidManifest文件中添加蓝牙相关权限: 2.通过静态或者动态注册广播的形式,监听蓝牙设备的状态(本文以动态监听的方式实现): 3.根据已实现广播的回调状 ...
最新文章
- 一文掌握常用的机器学习模型(文末福利)
- 根据根据图片的url怎么取得图片ImageView对象
- java集合框架03
- Windows Server 2012改造成Windows8的方法(转载)
- 最短路径之迪杰斯特拉(Dijkstra 算法)弗洛伊德算法(C语言完整代码实现)
- vue3 echarts5 graph关系图谱 点击图例节点消失线不消失重复生成问题
- 2019.01.24【NOIP普及组】模拟赛C组
- 程序猿必备工具『CSDN浏览器助手』之超实用小工具测评
- k8s集群之master节点部署
- 32怎么将mcu内的代码擦除_8位和32位MCU该如何选择?
- 从Visual studio 2005移出Visual Assist
- 谢菲尔德遗传算法工具箱函数简介
- Python分析与处理---利用Python进行学生成绩分析
- Java继承同时实现接口 以及继承方法的使用
- 老虎的屁股摸不得,宝宝的屁屁一样碰不得!
- 智芯传感MEMS压力传感器产品助力电子血压计安全性能大幅提升
- 股票分析师如何在市场中利用Arron实现炒股
- js中firstChild和childNodes[0]以及children[0]之间的点滴问题
- java performance pdf_Java Performance: The Definitive Guide 英文PDF
- 顶象端加固保障App安全与合规