在任何情況下,你應該在適當的清單文件中定義minSDK和targetSDK。當你編譯例如API 19(KitKat)並且你設置爲minSDK API 10時,所有東西都應該在2.3.3 Android上運行。
但是,如果您在代碼中使用了一些方法,那麼在2.3.3上不可用的常量,您將在Eclipse中看到警告/錯誤(我也在Android Studio中下注)。例如:
if (android.os.Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.JELLY_BEAN_MR2) {
// before JELLY_BEAN_MR2 code;
// methods, constants available for example from API 1
} else {
// after JELLY_BEAN_MR2 code
// here are new methods,constants available from GINGERBREAD_MR1 and after
}
所以在這裏你的應用程序在兩個不同的方式取決於它是在...運行如果您不API編譯Android版本將執行什麼等於或JELLY_BEAN_MR2的更高,你不會即使能夠編譯,因爲之前,常量JELLY_BEAN_MR2在API中不可用...但是,當您使用更高API編譯時,所有內容都將被正確編譯,並且應用程序可以在早期版本中正常工作。
如果您保留這樣的代碼,警告將在調用方法之前出現,但是@SuppressLint(「NewApi」)應該將其刪除,而不會再有問題。
希望它幫助,它現在很清楚..;)
乾杯