在新建一個 android project 時,要求輸入 minSdkVersion 這一項,一般是指定使用的 SDK 版本相一致的 API Level. 然後,在androidManifest.xml 檔案中會有一個對應的屬性:android:minSdkVersion .那這個屬性就決定了本程式最低相容的android系統版本。
由於andrid系統是向下相容的,也就是說,高版本的SDK會相容低版本的SDK
舉例說明:
1. 新建一個 Android Project (HelloAndroid), 指定為 Android 2.2 版本,對應的 minSdkVersion 填8,finish;
2. 此時我們執行 HelloAndroid ,會執行一個 2.2 版本的模擬器。
3. 假若現在去 AndroidManifest.xml 檔案 中修改 android:minSdkVersion=7,再次執行,那麼會在已經開啟的 2.2 模擬器上執行。因為 Android API 都是向後相容的,所以系統在編譯時,這個 Project 是利用 2.1 版本來編譯的,但也可以在 2.2 模擬器上執行;若先把 2.2 模擬器關閉,再執行 HelloAndroid 這個Project 的話,那麼會新建一個 API Level=7 的 模擬器來執行這個程式(也就是 2.1模擬器)。
4. 假若修改 android:minSdkVersion=10, 那麼無論是否打開了 2.2 版本的模擬器,都會報錯:
ERROR: Application requires API version 10. Device API version is 8 (Android 2.2).
Launch canceled!
在新建一個 android project 時,要求輸入 minSdkVersion 這一項,一般是指定使用的 SDK 版本相一致的 API Level. 然後,在androidManifest.xml 檔案中會有一個對應的屬性:android:minSdkVersion .那這個屬性就決定了本程式最低相容的android系統版本。
由於andrid系統是向下相容的,也就是說,高版本的SDK會相容低版本的SDK
舉例說明:
1. 新建一個 Android Project (HelloAndroid), 指定為 Android 2.2 版本,對應的 minSdkVersion 填8,finish;
2. 此時我們執行 HelloAndroid ,會執行一個 2.2 版本的模擬器。
3. 假若現在去 AndroidManifest.xml 檔案 中修改 android:minSdkVersion=7,再次執行,那麼會在已經開啟的 2.2 模擬器上執行。因為 Android API 都是向後相容的,所以系統在編譯時,這個 Project 是利用 2.1 版本來編譯的,但也可以在 2.2 模擬器上執行;若先把 2.2 模擬器關閉,再執行 HelloAndroid 這個Project 的話,那麼會新建一個 API Level=7 的 模擬器來執行這個程式(也就是 2.1模擬器)。
4. 假若修改 android:minSdkVersion=10, 那麼無論是否打開了 2.2 版本的模擬器,都會報錯:
ERROR: Application requires API version 10. Device API version is 8 (Android 2.2).
Launch canceled!