如何在安卓设备中检测芯片组信息?

5

如何解冻这个问题? - John Deer
2个回答

5
除了Android API之外,您可以使用proc调用cpuinfo来获取有关CPU名称的信息(例如,您可以将其作为mediatek,mt6589获取)。其中一个示例位于如何从“/ proc / cpuinfo”文件中获取Android设备的特定信息?。但是,特定的SOC相关错误将需要SOC级别的识别,因为未来的修订可能会消除错误,但保留相同的名称/零件编号。

4

没有非常好和直接的解决方案,但有一些你可以检查的事情。这完全取决于你想要做什么 - 你是想避免所有联发科芯片组,还是只避免特定的一个?在某些情况下,这些问题也可能会随着编码器驱动程序的不同代际而改变。

你可以检查 Build.BOARD,并希望它在多个具有相同芯片组的设备上相同。但在大多数情况下,这可能不是这样。

你还可以尝试读取 ro.board.platform 系统属性 - 它在 Build 类中不是公开可用的,但你可以尝试访问 android.os.SystemProperties.get 方法(通过反射,以确保在它已更改的情况下安全失败)。

你还可以尝试根据编码器名称进行决策,通过 MediaCodec.getName()MediaCodecInfo.getName() 公开的方式。这可能是实现你想要的最直接的方法。对于某些芯片制造商,编码器的名称相同,而不考虑芯片组,而有些则在不同的芯片组代际中具有稍微不同的名称。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接