旧设备和AndroidManifest configChanges“屏幕大小”(Older devi

2019-10-17 12:27发布

引用文档:

注意:与Android 3.2(API级13)开始,“画面尺寸”也改变时纵向和横向之间的设备切换。 因此,如果你想防止因方向改变运行时重新启动了API等级13以上的开发时(以作为的minSdkVersion声明和targetSdkVersion属性),您必须包括除“方向”值“屏幕尺寸”的价值。 也就是说,你必须decalare机器人:configChanges =“方向|屏幕尺寸”

我需要忽略screenSize的配置变化。 我最小的SDK级别为8(Android 2.2的),和目标SDK水平是13。因此,我需要在清单中介绍它。

但是,Eclipse不认识它,因为其Android设置为2.2。 所以,我把它改成了应有的水平,而现在它建立正常。

我很害怕,但是,会有旧版本在问题的screenSize配置的变化是尚未公布。 (例如,当应用程序被运行在Android 2.2。装置)。也就是说,当它读取清单中的应用程序会崩溃,因为screenSize将是它未知值。 还是会简单地忽略它的预3.2设备?

PS:我没有,现在来测试它在真实设备上的机会,我不会在这样一个关键的事情单独信任模拟器。

Answer 1:

它会忽略它。 同样是分屏操作栏和其他东西都是类似的事实。 不像在Java中,任何事物的Android操作系统不会从它本质上忽略了明显的理解。



Answer 2:

答案很简单:它被忽略。

作为一项规则,在不被识别(如屏幕尺寸预2.2设备)的清单值都被忽略,正是这个原因。 否则就不能开发人员能够使用新的平台版本中添加的功能,而不会破坏向后兼容的旧设备。



文章来源: Older devices and AndroidManifest configChanges “screenSize”