如何在android开发中支持多个api级别?

时间:2015-01-19 06:07:13

标签: android api

如果您想支持多个API级别并提供更新的功能,您的应用程序在更高级别的API上运行,并在您的应用程序在较低级别API上运行时减少功能,那么用于解决此问题的常见设计模式是什么?使用Mono for Android?

示例希望您的应用程序不仅可以在2.3.x,3.x,4.0.x,4.1.x上运行,还可以充分利用我们安装的设备上提供的完整API。我知道我们显然可以使用反射来做到这一点,但我们真的不想使用它,并且正在寻找一种更易于维护和支持的更清洁的设计。

**更新:
例如,我想在我的应用程序中使用(主题)'Holo Light with Dark Action Bar',我想在android 2.2中运行。

android 2.2能支持吗?

1 个答案:

答案 0 :(得分:2)

简单。您可以添加api版本的检查并相应地执行您的功能。喜欢:

if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.GINGERBREAD) {
     // only for gingerbread and newer versions
}else if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.HONEYCOMB) {
     // only for gingerbread and newer versions
}else if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
     // only for ICE_CREAM_SANDWICH and newer versions
}else if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.JELLY_BEAN) {
     // only for JELLY_BEAN and newer versions
}

如果你想支持一些更高的api功能来降低api,那么你可以使用支持库。