定義
API Level (API 等級) 是 Android 平台專有的概念,對應 Android 系統版本提供的框架 API 版本號 (整數)。
| API Level | Android 版本 | 代號 |
| 34 | 14 | UpsideDownCake |
| 33 | 13 | Tiramisu |
| 30 | 11 | R |
| 29 | 10 | Q |
| 28 | 9 | Pie |
| 26 | 8.0 | Oreo |
| 21 | 5.0 | Lollipop |
作用
- `minSdkVersion`:** 應用支援的最低 API Level,安裝時檢查。
- `targetSdkVersion`:** 應用測試/優化的目標 API Level,影響系統行為相容性 (如權限模型、儲存體存取)。
- `compileSdkVersion`:** 編譯時使用的 Android SDK 版本,決定可使用哪些 API。
其他語言/平台無此概念
- Java:** 只有 JDK 版本 (1.8, 11, 17, 21),無「API Level」。
- iOS:** 有 `Deployment Target` (最低支援 iOS 版本) 與 `Base SDK`,概念類似但術語不同。
- .NET:** 有 Target Framework Moniker (TFM, 如 `net8.0`, `net6.0-windows`)。
- Web (JS):** 透過 Polyfill / Babel / browserslist 處理瀏覽器 API 差異,無統一整數等級。
層級越高意味著
- 可用 API 更豐富 (新功能、新權限模型、新 UI 元件)。
- 舊裝置無法安裝 (若 `minSdkVersion` 過高)。
- 系統行為更嚴格 (如 Scoped Storage、前台服務限制、隱私保護)。
結論:API Level 僅存在於 Android 開發中,用於管理碎片化版本下的 API 相容性。