【发布时间】:2011-08-21 05:45:21
【问题描述】:
嗨 我制作了一个选择 2.2 和 API 8 的 android 应用程序 现在我怎样才能让它在 2.1 中工作? 是否可以支持 2.1 设备? 或者我必须从头开始重新开发所有应用程序? :-( 希望不是 请帮帮我 感谢您 ChinniKrishna Kothapalli
【问题讨论】:
标签: java android android-emulator android-layout android-manifest
嗨 我制作了一个选择 2.2 和 API 8 的 android 应用程序 现在我怎样才能让它在 2.1 中工作? 是否可以支持 2.1 设备? 或者我必须从头开始重新开发所有应用程序? :-( 希望不是 请帮帮我 感谢您 ChinniKrishna Kothapalli
【问题讨论】:
标签: java android android-emulator android-layout android-manifest
在你的 Android Manifest 文件中,写:
<uses-sdk android:minSdkVersion="3" android:targetSdkVersion = "8"/>
这将支持所有操作系统为 1.5 的手机, 如果你想要 2.1,指定 minSDK = 7。
【讨论】:
uses-sdk 本身并不能使您的应用程序可运行或与早期版本的 Android 兼容 - 它只是使其可安装。根据我的回答,您仍然必须确保您的代码兼容。例如,尝试在 API 级别 7 或更低级别上使用 android.app.backup - uses-sdk 可能会让您安装应用程序,但当您尝试从 API 级别 8 或更高级别执行代码时,它将强制关闭。见developer.android.com/guide/topics/manifest/…
您需要更改清单以将您的应用标记为 SDK 2.1,因为这就是 Android Market 过滤设备无法运行的应用的方式 - 如果不将 uses-sdk 值更改为较低级别,则搭载 Android 2.1 的设备永远不会在 Market 中查看您的应用,就这么简单。
话虽如此,完成此操作后,请阅读backwards compatibility 上的 Android 开发页面 - 它包含您需要了解的有关如何优雅地处理您想要的较低 Android 版本的设备的所有信息。
唯一需要进行的额外开发是您的应用使用仅 API 8 的功能,然后您需要投入额外的工作以使其也与较低的 API 级别兼容。您的大部分代码可能会保持不变。
【讨论】: