我在API 8上创建了一个应用程序。现在我想让它与ICS一起使用,为此我需要API 8中没有的其他导入。 我想添加以下导入:
import android.provider.CalendarContract;
import android.provider.CalendarContract.Calendars;
import android.provider.CalendarContract.Events;
所以我必须为API而制作一个不同的应用程序> 15?应用程序的名称不应更改。
或者也许可以放置2个App版本并根据API级别将minSdkVersion和maxSdkVersion制作成Google Play?
你是如何处理的?
答案 0 :(得分:7)
我在API 8上创建了一个应用程序。
大!
现在我想让它与ICS一起使用,为此我需要API 8中没有的其他导入。
没问题!由于import
语句在编译时应用,只要您将项目的构建目标(例如,Project> Properties> Android)设置为API级别14或更高级别,您的代码就可以正常编译。
所以我必须为API而制作一个不同的应用程序> 15?
没有。只需使用版本保护块,以确保您不要尝试在旧设备上使用较新的代码:
if (Build.VERSION.SDK_INT>=Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
// do stuff with CalendarContract
}
或者也许可以放置2个App版本并根据API级别将minSdkVersion和maxSdkVersion制作成Google Play?
这不应该是必要的。
答案 1 :(得分:1)
您希望为现有应用添加兼容性填充程序,以便它可以在较低的API级别上运行,并且仍然可以从更高级别访问API。
通常,执行此操作的方法是隔离在运行时通过反射加载的类中使用更高级API的代码,只有在API级别支持它们时才会这样做。