こんにちは。YOSHITAKA(@YOSHITA19704216)です。
- minSdkVersion とtargetSdkVersion の違いがわかります。
Contents
minSdkVersion とtargetSdkVersion の違い
対象者
- minSdkVersion とtargetSdkVersion を全然知らない人向けです。
最小バージョンと対象バージョンを指定
build.gradleとAndroidManifest.xmlの2つのファイルに最小バージョンと対象バージョンを指定可能ですが、通常build.gradleに記載します。
- アプリのbuild.gradleに最小バージョンと対象バージョンを記述することで、ビルド時にAndroidManifest.xmlに最小バージョンと対象バージョンを埋め込んでくれるからです。
アプリのbuild.gradleに最小バージョンと対象バージョンを指定
アプリのbuild.gradleファイルに、最小バージョンと対象バージョンを記載した例です。
次のminSkdVersionとtargetSdkVersionがそれぞれ最小バージョンと対象バージョンの指定であり、その数値にはAPIレベルの値を記載します。
android {
...
defaultConfig {
...
minSdkVersion 14
targetSdkVersion 24
}
}
AnoidManifest.xmlに最小sdkバージョンを記述する
先程伝えたとおり、AndroidManifest.xmlに直接最小バージョンと対象バージョンを記述することはありませんが、次のようにAndroidManifest.xmlの<uses-sdk>要素の属性に指定します。
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<uses-sdk android:minSdkVersion="16"
android:targetSdkVersion="27" />
...
</manifest>
AndroidManifest.xmlのバージョンとAPIレベル (xxx Sdk Version)
AndroidManifest.xmlファイルのルート要素<manifest>の子要素<uses-sdk>の属性にAPI レベルを指定したときの意味を説明します。
先程説明したとおり、こちらには何も設定しなくてもアプリのbuild.gradleに指定していれば問題ありません。
<uses-sdk>の属性 | 説明 |
android:minSdkVersion | アプリが実行できる最小バージョンです。 これより小さいとインストールできません。 属性省略時のデフォルトは”1″です。 |
android:targetSdkVersion | アプリが実行するように設計されたバージョンです。 できる限り新しいバージョンを指定すべきです。 minSdkVersion以上の値を設定します。 属性省略時はminSdkVersionの値となります。 |
android:maxSdkVersion | 非推奨の属性です。 アプリが実行できる最大バージョンです。 簡単に言えばAndroid2.0.1以上では属性値は無効です。 |
以下の2つがよく紹介されるのは必要があるからですね。
- android:minSdkVersion
- android:targetSdkVersion
まとめ
今回はminSdkVersion とtargetSdkVersion について理解したことをお伝えしました。
※プログラミングは習得中ですので、参考程度に記事を読んでください。
参考はこちら
https://feel-log.net/android/api-level-target-version-min-version/