为什么我的应用不适用于特定设备
Why is my app not available for specific devices
为什么是我问题的重点。
我知道有一个过滤系统使用 AndroidManifest.xml
中指定的要求和功能,而且可以手动排除设备。
但是,有没有办法找出哪些特定要求或功能导致被排除?
在 Google Developer Console
中,设备仅显示为 "unsupported",但没有关于 为什么 不支持它们的任何进一步信息。我确信他们被拒绝是有充分理由的。但是如何找出原因呢?我真的更喜欢一种更通用的方法,而不是将每个要求和功能与清单文件进行比较。
这只是一个示例屏幕截图,并不表示我希望找出排除原因的设备。
非常感谢任何帮助!
提前致谢。
您的应用中可能有一些方法不符合这些设备的最低要求(硬件或软件,例如 RAM、处理器、API 级别或其他)。
在我的例子中,我使用了一些不支持某些设备的第三方库(基于 API 级别)。
(至少目前)没有通用方法 可以找出导致排除的确切原因。因此,必须尝试错误才能找到答案。
感谢 Neal Ahluvalia 指引我正确的方向。
但是,在我的例子中,问题是设备与 <compatible-screens>
中的 android:screenDensity
不匹配。这真的很奇怪,因为我有从 mdpi
到 640
的所有内容,对于从 normal
到 xlarge
的任何 android:screenSize
。
根据 this page 看起来从 mdpi
到 xxxhdpi
(= 640
) 在这些范围所涵盖的范围之间没有差距。
但是(至少)肯定存在一个差距,其中 tvdpi
出现(顺便说一句,电视屏幕被认为是.. 0_o)。
不知何故,这些设备属于该页面上未提及的奇怪 tvdpi
,直到您一直向下滚动到可以找到它的 table。
这还不是故事的结尾.. 你必须添加这个 tvdpi
而不是它的名字,而是它的 dpi 值 => android:screenDensity="213"
,就像你也必须为 dpi 值做的一样大于 xhdpi
。
此时我脑子里有一个很大的"WTF"。感谢 Google 创建了人们能想象到的最糟糕的可理解系统。
为什么是我问题的重点。
我知道有一个过滤系统使用 AndroidManifest.xml
中指定的要求和功能,而且可以手动排除设备。
但是,有没有办法找出哪些特定要求或功能导致被排除?
在 Google Developer Console
中,设备仅显示为 "unsupported",但没有关于 为什么 不支持它们的任何进一步信息。我确信他们被拒绝是有充分理由的。但是如何找出原因呢?我真的更喜欢一种更通用的方法,而不是将每个要求和功能与清单文件进行比较。
非常感谢任何帮助! 提前致谢。
您的应用中可能有一些方法不符合这些设备的最低要求(硬件或软件,例如 RAM、处理器、API 级别或其他)。
在我的例子中,我使用了一些不支持某些设备的第三方库(基于 API 级别)。
(至少目前)没有通用方法 可以找出导致排除的确切原因。因此,必须尝试错误才能找到答案。
感谢 Neal Ahluvalia 指引我正确的方向。
但是,在我的例子中,问题是设备与 <compatible-screens>
中的 android:screenDensity
不匹配。这真的很奇怪,因为我有从 mdpi
到 640
的所有内容,对于从 normal
到 xlarge
的任何 android:screenSize
。
根据 this page 看起来从 mdpi
到 xxxhdpi
(= 640
) 在这些范围所涵盖的范围之间没有差距。
但是(至少)肯定存在一个差距,其中 tvdpi
出现(顺便说一句,电视屏幕被认为是.. 0_o)。
不知何故,这些设备属于该页面上未提及的奇怪 tvdpi
,直到您一直向下滚动到可以找到它的 table。
这还不是故事的结尾.. 你必须添加这个 tvdpi
而不是它的名字,而是它的 dpi 值 => android:screenDensity="213"
,就像你也必须为 dpi 值做的一样大于 xhdpi
。
此时我脑子里有一个很大的"WTF"。感谢 Google 创建了人们能想象到的最糟糕的可理解系统。