我正在尝试从英特尔和Android cpu设备获取CPU信息。我在代码中运行它:
Process process process = Runtime.getRuntime().exec("cat /proc/cpuinfo");
然后逐行读取输出。奇怪的是这显示了ARM信息,例如:
Processor : ARMv7 processor rev 1 (v7l)
当您从IO中清楚地读取文件时,也会发生这种情况。
现在,当我通过ADB shell运行'cat / proc / cpuinfo'时,所有与Intel proc相关的正确信息都在那里。
有谁能解释这里发生了什么?
答案 0 :(得分:0)
我的设备(DELL平板电脑)也有类似的问题。
起初,当我的app加载libs(armeabi-v7a)时崩溃了,然后我发现它的架构不是arm而是x86。
所以我构建了x86的库,我想在代码中识别设备的体系结构,以决定应该加载哪些库(arm或x86)。
结果总是手臂不是x86 !!
也许它运行像模拟器之类的东西来改变背景下的类型,因为其他的lib仍然是amr类型。
最后,我在libs中创建一个x86文件夹并构建所有库(x86),
然后它可以成功运行并从“/ proc / cpuinfo”中获取正确的信息。