|
识别依据是:
首先通过获取系统Configuration中的screenLayout进行判断,如果是SCREENLAYOUT_SIZE_LARGE模式,则认为是pad(这是google提供的标准判断)。
如果此处判断不通过,则通过获取当前系统的UiMode进行判断,该模式会返回phone、desk、car、tv等标识当前设备是手机、桌面、车载、电视等模式。
如果以上都判断失败,会默认返回phone。
国内手机厂商可能会对以上模式进行定制,导致判断失败,因此这个没有通用并且100%准确的方法。可以通过给你的应用内置一个pad名单的方式进行弥补,将那些判断失败的设备,统一放到这个名单中,你判断设备是否是pad的时候,先从这个名单取,如果没有再使用api.uiMode。 |
|