Android
 Computer >> コンピューター >  >> プログラミング >> Android

Kotlinで現在のAndroid SDKバージョンをプログラム的に取得する方法【初心者向け解説】

この記事では、Kotlinを使ってAndroidアプリ内で現在のAndroid SDKバージョン(APIレベル)とリリースバージョンを動的に取得し、画面に表示する方法を解説します。デバイスのOSバージョンに応じた処理を行いたい場合や、デバッグ時に端末情報を確認したい場合などに役立つ基本的なテクニックです。

ポイント:Build.VERSIONクラスを使う

Android SDKのバージョン情報は、android.os.Buildクラスから簡単に取得できます。主に以下の2つのプロパティを使用します。

  • Build.VERSION.SDK_INT … APIレベルを整数値(Int)で返します。例:Android 12なら「31」
  • Build.VERSION.RELEASE … ユーザー向けのバージョン文字列を返します。例:「12」

それでは、実際の手順を見ていきましょう。

ステップ1:新規プロジェクトを作成する

Android Studioを開き、メニューから「File」→「New Project」を選択します。「Empty Activity」テンプレートを選び、必要な項目(プロジェクト名、パッケージ名、保存先など)を入力して新しいプロジェクトを作成してください。

ステップ2:レイアウトファイル(activity_main.xml)を編集する

次のコードを res/layout/activity_main.xml に追加します。中央にSDKバージョンを表示するためのTextViewを配置しています。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="https://schemas.android.com/apk/res/android"
    xmlns:tools="https://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:padding="4dp"
    tools:context=".MainActivity">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="50dp"
        android:text="Tutorials Point"
        android:textAlignment="center"
        android:textColor="@android:color/holo_green_dark"
        android:textSize="32sp"
        android:textStyle="bold" />

    <TextView
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:textColor="@android:color/black"
        android:textSize="24sp"
        android:textStyle="bold" />

</RelativeLayout>

ステップ3:MainActivity.ktにコードを追加する

次に、src/MainActivity.kt を開き、以下のコードを記述します。Build.VERSION.SDK_INTBuild.VERSION.RELEASE の値を取得し、Kotlinの文字列テンプレートを使ってTextViewに表示しています。

import android.os.Build
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.TextView

class MainActivity : AppCompatActivity() {

    private lateinit var textView: TextView

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        title = "KotlinApp"
        textView = findViewById(R.id.textView)

        // APIレベルとリリースバージョンを取得
        val versionAPI = Build.VERSION.SDK_INT
        val versionRelease = Build.VERSION.RELEASE

        // 取得した情報をTextViewに表示
        textView.text = "API Version : $versionAPI\nVersion Release : $versionRelease"
    }
}

コードの解説

  • val versionAPI = Build.VERSION.SDK_INT — 実行中のデバイスのAPIレベル(例:33)を整数として取得します。
  • val versionRelease = Build.VERSION.RELEASE — 「13」のようなOSバージョン番号を文字列として取得します。
  • $versionAPI のような記法はKotlinの文字列テンプレートであり、変数の値を直接文字列に埋め込めます。

ステップ4:AndroidManifest.xmlを確認する

androidManifest.xml に特別な権限の追加は不要ですが、参考として以下のようになっていることを確認してください。

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="https://schemas.android.com/apk/res/android"
    package="com.example.q11">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">

        <activity android:name=".MainActivity">
            <intent-filter>
               <action android:name="android.intent.action.MAIN" />
               <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

    </application>

</manifest>

アプリを実行して結果を確認する

それでは、アプリを実際に実行してみましょう。実機のAndroidスマートフォンをパソコンにUSB接続していることを前提とします。Android Studioでプロジェクト内のアクティビティファイルを開き、ツールバーの実行(Run)アイコンをクリックしてください。

表示されたダイアログで接続したモバイルデバイスを選択すると、アプリが起動し、画面中央に以下のようにSDKのバージョン情報が表示されます。

  • API Version: 実行環境のAPIレベル(例:30)
  • Version Release: OSのバージョン番号(例:11)

このように、わずか数行のコードでAndroidデバイスのSDKバージョン情報を取得できます。バージョンごとに異なる機能を提供したい場合の分岐処理などにも応用できるので、ぜひマスターしておきましょう。

  1. 【Android】端末で現在選択されている言語を取得する方法をわかりやすく解説

    Androidで現在選択されている言語を取得する方法この記事では、Androidデバイスに現在設定されている言語(システムロケール)をプログラムから取得する方法を、サンプルプロジェクトを使ってステップごとに解説します。Androidでは Locale.getDefault().getDisplayLanguage() を呼び出すだけで、端末の現在の言語名を簡単に取得できます。多言語対応アプリの開発や、ユーザーの言語設定に応じた表示を切り替えたい場合に非常に便利なテクニックなので、ぜひ参考にしてください。手順1:Android Studioで新規プロジェクトを作成Android Studioを起

  2. 【Android開発】プログラムから現在のSDKバージョン(APIレベル)を取得する方法

    この記事では、Androidアプリ内から現在のSDKバージョン(APIレベル)をプログラムで取得する方法を、実際のサンプルコードとともにわかりやすく解説します。使用するクラス:android.os.BuildAndroidでは、android.os.Build.VERSION クラスを使うことで、端末のOS情報を簡単に取得できます。主に以下の2つのフィールドを使用します。Build.VERSION.SDK_INT … APIレベルを整数値で返します(例:33)Build.VERSION.RELEASE … OSバージョンを文字列で返します(例:「13」)手順1:新規プロジェクトの作成まず、An