0

我开发了一个 android 应用程序,它的 GUI 是为小屏幕设计的。在平板电脑上运行时,它看起来很垃圾,因为我假设 320dp 宽度让我的生活更轻松——我没有资源在平板电脑上进行测试。

使用 android 3.2 的人能够放大应用程序,因此它看起来像是在大手机上运行。但是在我上次更新之后,该选项不可用,我不明白为什么。

更改与 Manifest 文件有关。这是我的原始应用程序所拥有的(与清单中的屏幕无关):

<uses-sdk android:minSdkVersion="7" />

更新我的开发环境后,我收到一条警告说我应该指定一个目标 sdk,所以我这样做了:

<uses-sdk android:minSdkVersion="7" android:targetSdkVersion="10" />

使用一个非常缓慢的 Android 3.2 模拟器,我已经确认这是导致问题的原因。我认为任何低于 11 的目标 SDK 都不会影响缩放选项?

使用以下还删除了缩放选项:

<uses-sdk android:minSdkVersion="7" android:targetSdkVersion="9" />

但这没有:

<uses-sdk android:minSdkVersion="7" android:targetSdkVersion="8" />

所以将我的目标 SDK 设置为 8 是一种解决方法,但这也是错误的,因为我使用 2.3.3 版本进行测试。

我在这里错过了什么吗?有更好的解决方案吗?

谢谢。

4

1 回答 1

2

尝试将 targetSdkVersion 设置为 9(或 10)添加<supports-screens android:xlargeScreens="false" />到您的 AndroidManifest.xml(supports-screens 的文档)。这告诉系统您的应用程序不明确支持 xlarge 屏幕,并且它应该为在 xlarge 设备上使用该应用程序的用户提供兼容性缩放/缩放选项。请注意,这不会导致应用程序在 Play 商店中对 xlarge 设备隐藏(supports-screens如果应用程序设计为在较大屏幕上运行,则只会导致 Play 商店过滤来自较小屏幕的应用程序,而不是相反)。

我认为一旦将 targetSdkVersion 设置为 9+ 就会发生这种情况的原因是因为在 API 级别 9 中添加了 support-screens xlargeScreens 并且(我相信)默认为 true(至少对于 API 级别 9+)。一旦 xlargeScreens 为真,系统将禁用兼容性缩放/缩放模式。

支持文档(它确实这么说但相当复杂):

于 2012-04-09T12:30:59.410 回答