为什么是我提问的要点。
我知道有一个过滤系统使用AndroidManifest.xml
中指定的要求和功能,而且还可以手动排除设备。
但是,是否有办法找出哪些具体要求或功能导致排除?
在Google Developer Console
设备中只显示“不支持”,但没有任何关于为什么的更多信息,不支持这些设备。我确信他们被拒绝是有充分理由的。但是如何找出原因呢?我真的更喜欢一种更通用的方法,而不是将每个要求和功能与清单文件进行比较。
这只是一个示例屏幕截图,并不表示我希望找出它们被排除在外的设备。
非常感谢任何帮助! 提前谢谢。
答案 0 :(得分:1)
您的应用中可能有一些方法无法满足这些设备的最低要求(硬件或软件,例如RAM,处理器,API级别或其他)。
就我而言,我使用的是一些不支持某些设备的第三方库(在API级别基础上)。
答案 1 :(得分:0)
(至少在目前)没有一般方法来找出,究竟是什么导致排除。因此,必须尝试和错误才能找到它。
感谢Neal Ahluvalia让我朝着正确的方向前进。
但是,在我的情况下,问题是这些设备与android:screenDensity
中的<compatible-screens>
不匹配。从我mdpi
到640
的所有内容,从android:screenSize
到normal
的{{1}},我真的很奇怪。
根据this page,它似乎从xlarge
到mdpi
(= xxxhdpi
),在这些范围之间没有留下任何差距。
但是(至少)肯定存在一个差距,其中640
进来(对于电视屏幕而言,btw被认为是... 0_o)。
不知何故,这些设备属于该页面上未提及的奇怪tvdpi
,直到您一直向下滚动到可以找到它的表格。
这还不是故事的结尾......您必须不是通过名称添加此tvdpi
,而是通过其dpi值=&gt;添加此tvdpi
。 android:screenDensity="213"
,就像你必须为大于xhdpi
的dpi值做的那样。
此时有一个很大的&#34; WTF&#34;在我的脑子里。感谢Google创造了人们可以想象的最难以理解的系统。