Zenn
🐥

compileSdk・minSdk・targetSdkの違いって何?(Android)

2025/03/13に公開

compileSdk

compileSdkVersionは、Gradleがアプリをコンパイルする際に使用するAndroid APIレベルを指定します。これは、アプリがこのAPIレベル以下に含まれるAPI機能を使用できることを意味します。

引用:https://developer.android.com/studio/build

要はプログラムのソースコードを機械語(バイナリーコード)に変換する時に使うSDKバージョンです。
新しい機能を使えるようにするため、基本的には最新を指定します。

minSdk

アプリの実行に必要な最低限のAPIレベルを定義します。

要はアプリの最低OSバージョンです。
古いOSをサポートする場合、こちらの値を小さくします。

targetSdk

アプリのテストに使用するAPIレベルを指定します。

アプリを動作させるAPIレベルを指定します。
compileSdkと同様で最新を指定すれば良いですが、Android12(APIレベル31)対応が完了していない場合、targetSdkを30にすればAndroid12でも11のように振る舞うということです。

参考記事

https://qiita.com/uhooi/items/0f2ad61d83b96d9166c8

https://developer.android.com/build

Discussion

ログインするとコメントできます