Andriod 获取手机CPU型号设备信息

Posted deeperDeveloper

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Andriod 获取手机CPU型号设备信息相关的知识,希望对你有一定的参考价值。

环境

  • Mac mini 2014(Intel)
  • android Studio Bumblebee
  • Android 手机

问题描述

获取手机 CPU 信息时,使用 Build.HARDWARE 只能获取到型号,没有 CPU 名称。

问题解决

注:写文章引用来源一直力求引用原创,但下面的引文没找到原创文献

面向搜索引擎编程,参考文献1 介绍了在 Windows 下的 shell 命令操作获取 CPU 信息。参考文献2 介绍了怎样解析出 CPU 名称,网上都是类似,但实际上获取的都不是 CPU 名称型号。

shell 命令获取 CPU 信息

在 Mac(Intel) 下 shell 命令获取 CPU 有两个途径,一是在 Mac 终端中,一是在 Android Studio 的 Terminal 里面,都是使用如下指令:

adb shell
cat /proc/cpuinfo

所得结果如下:

Processor	: AArch64 Processor rev 2 (aarch64)
processor	: 0
BogoMIPS	: 3.84
Features	: fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid
CPU implementer	: 0x41
CPU architecture: 8
CPU variant	: 0x0
CPU part	: 0xd03
CPU revision	: 4

processor	: 1
BogoMIPS	: 3.84
Features	: fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid
CPU implementer	: 0x41
CPU architecture: 8
CPU variant	: 0x0
CPU part	: 0xd03
CPU revision	: 4

processor	: 2
BogoMIPS	: 3.84
Features	: fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid
CPU implementer	: 0x41
CPU architecture: 8
CPU variant	: 0x0
CPU part	: 0xd03
CPU revision	: 4

processor	: 3
BogoMIPS	: 3.84
Features	: fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid
CPU implementer	: 0x41
CPU architecture: 8
CPU variant	: 0x0
CPU part	: 0xd03
CPU revision	: 4

processor	: 4
BogoMIPS	: 3.84
Features	: fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid
CPU implementer	: 0x41
CPU architecture: 8
CPU variant	: 0x0
CPU part	: 0xd09
CPU revision	: 2

processor	: 5
BogoMIPS	: 3.84
Features	: fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid
CPU implementer	: 0x41
CPU architecture: 8
CPU variant	: 0x0
CPU part	: 0xd09
CPU revision	: 2

processor	: 6
BogoMIPS	: 3.84
Features	: fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid
CPU implementer	: 0x41
CPU architecture: 8
CPU variant	: 0x0
CPU part	: 0xd09
CPU revision	: 2

processor	: 7
BogoMIPS	: 3.84
Features	: fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid
CPU implementer	: 0x41
CPU architecture: 8
CPU variant	: 0x0
CPU part	: 0xd09
CPU revision	: 2

Hardware	: Hisilicon Kirin970

由此可知,CPU 名称型号在最后一行。现有文章里面只是获取第一行肯定是不对的。

解析 CPU 名称型号

解析 CPU 名称型号,则应使用如下方法:

public static String getCpuName() 
 String str1 = "/proc/cpuinfo";
 String str2 = "";
 String cpuName = "";

 try 
     FileReader fileReader = new FileReader(str1);
     BufferedReader bufferedReader = new BufferedReader(fileReader);
     
     while ((str2 = bufferedReader.readLine()) != null) 
         if (TextUtils.isEmpty(str2)) 
             continue;
         
         String[] arrayOfString = str2.split(":\\\\s+", 2);
         if (TextUtils.equals(arrayOfString[0].trim(), "Hardware")) 
             cpuName = arrayOfString[1];
             break;
         
     

     bufferedReader.close();
     fileReader.close();
  catch (IOException e) 
     e.printStackTrace();
 
 return cpuName;

参考文献

[1] android查看cpu信息
[2] Android获取系统cpu信息

以上是关于Andriod 获取手机CPU型号设备信息的主要内容,如果未能解决你的问题,请参考以下文章

如何通过adb命令获取手机型号与设备信息

js获取移动端设备信息(IMEM,IMIS,手机型号,系统版本,浏览器信息等)

浏览器h5获取不到具体的手机型号和设备唯一标识符

获取Android手机CPU/ABI型号

以编程方式获取 Android 手机型号,如何在 android 中以编程方式获取设备名称和型号?

获取手机设备号及型号的宏