我计划创建一个应用程序,让用户查看我目前正在开发的游戏的统计数据,但我的问题就像标题一样。我不确定使用Android 3.0、Android 2.0或更低版本的手机是否能够使用这些应用程序?如果不能,我该怎么解决?我是否无法使用新的API功能,例如NFC等?总之,如果我开始使用Android 4.0 SDK进行开发,所有Android手机都能够使用我的应用程序吗?
我计划创建一个应用程序,让用户查看我目前正在开发的游戏的统计数据,但我的问题就像标题一样。我不确定使用Android 3.0、Android 2.0或更低版本的手机是否能够使用这些应用程序?如果不能,我该怎么解决?我是否无法使用新的API功能,例如NFC等?总之,如果我开始使用Android 4.0 SDK进行开发,所有Android手机都能够使用我的应用程序吗?
我对Android开发的理解是,如果你构建一个单一的包并针对最低公共分母进行构建,那么它将在该版本上运行,并且很可能在任何更新的版本上也能运行。但反过来则不行。
Build.VERSION.SDK_INT
并使用类加载器保证来访问可用的更新功能。下面是一些示例:http://android-developers.blogspot.com/2010/07/how-to-have-your-cupcake-and-eat-it-too.html
我们建议采取分阶段支持不同平台版本的方法。在较旧的版本上提供较简单的用户界面,并在可用新功能的情况下添加功能。上面的链接提供了一些如何实现这一点的示例,我们将继续扩展支持库与更多的*Compat
类,在使用可能不适用于您要支持的所有设备的新功能时替您进行版本检查。Chris是正确的。然而这可能会有限制。如果您想要灵活地使用3.0和4.0 Android的功能,但只有在运行设备上具备这些功能时才能优雅地回退怎么办?这时就需要Android兼容包了。您可以使用非常旧的API(一直到1.6),并仍然可以访问新的API功能。