仅在API级别> 15上导入

use*_*816 2 android

我在API 8上创建了一个应用程序.现在我想让它与ICS一起使用,为此我需要API 8中没有的其他导入.我想添加以下导入:

import android.provider.CalendarContract;
import android.provider.CalendarContract.Calendars;
import android.provider.CalendarContract.Events;
Run Code Online (Sandbox Code Playgroud)

那么我是否必须为API> 15制作一个不同的应用程序?应用程序的名称不应更改.

或者也许可以放置2个App版本并根据API级别将minSdkVersion和maxSdkVersion制作成Google Play?

你怎么处理?

Com*_*are 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
}
Run Code Online (Sandbox Code Playgroud)

或者也许可以放置2个App版本并根据API级别将minSdkVersion和maxSdkVersion制作成Google Play?

这不应该是必要的.