5

我计划为用户创建一个应用程序来查看他们对我目前正在制作的游戏的统计信息,但我的问题就像标题一样。我不确定Android 3.0、Android 2.0 或更低版本的手机是否可以使用这些应用程序?如果没有,我将如何解决这个问题?我会不能使用新的 API 功能,例如 NFC 等?总而言之,如果我开始使用 Android 4.0 SDK 进行开发,是否所有的安卓手机都可以使用我的应用程序?

4

3 回答 3

5

我对 android 开发的理解是,如果您构建单个包,您可以针对最低公分母进行构建,并且它将在该版本上运行,并且很可能在任何较新的版本上运行。但不是反过来。

于 2011-10-20T19:56:48.107 回答
4

兼容性库(我们现在只是称为支持库)没有使用任何特殊的魔法来实现这一点。您可以Build.VERSION.SDK_INT在运行时检查并使用类加载器保证在可用时访问更新的功能。一些例子在这里:http ://android-developers.blogspot.com/2010/07/how-to-have-your-cupcake-and-eat-it-too.html

我们建议采用分级方法来支持不同的平台版本。在旧版本上提供更简单的 UI 版本,并在功能可用时将其分层。上面的链接提供了一些如何执行此操作的示例,我们将继续扩展支持库,其中包含更多*Compat类,这些类在您使用可能在您想要的所有设备上都可用或可能不可用的新功能时为您进行版本检查支持。

于 2011-10-20T20:48:08.673 回答
1

克里斯是对的。然而,这可能是限制性的。如果您想要灵活并在您的应用程序中使用 3.0 和 4.0 android 的功能,如果您正在运行的设备有它们,然后如果它们没有,则优雅地回退怎么办?进入安卓兼容包。您可以使用非常旧的 api(一直到 1.6)进行开发,并且仍然可以访问新的 api 功能。

于 2011-10-20T20:03:02.980 回答