Android端末にインストールされているアプリとアプリのバージョンを取得する

PackageManagerのgetInstalledPackagesメソッドでインストールされているアプリを取得できる。

@SuppressLint("QueryPermissionsNeeded")
private fun updatePackageList() {
    val pm: PackageManager = applicationContext.packageManager
    val pkgInfoList: List<PackageInfo> = pm.getInstalledPackages(0)
    for (pkgInfo: PackageInfo in pkgInfoList) {
        Log.d(TAG, "packageName " + pkgInfo.packageName)
        Log.d(TAG, "versionName " + pkgInfo.versionName)
        Log.d(TAG, "longVersionCode " + pkgInfo.versionCode)
    }
}

Android 11からは、PackageManagerで取得するアプリをAndroidManifest.xmlに宣言する必要がある

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="jp.gesource.appversion">

    <queries>
        <package android:name="jp.gesource.app1" />
        <package android:name="jp.gesource.app2" />
    </queries>

    ...
</manifest>

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください