<< Android-Note
起動可能なアプリ一覧を調べる方法
PackageManagerを使うと次のようにして端末にインストールされているアプリのパッケージ情報の一覧を調べることができます。
PackageManager pm = getPackageManager(); List<PackageInfo> pckInfoList = pm.getInstalledPackages( PackageManager.GET_ACTIVITIES | PackageManager.GET_SERVICES); for(PackageInfo pckInfo : pckInfoList){ /// ...処理 }
これでインストールされているパッケージについては調べることができます。
しかし調べたパッケージにたとえActivityが含まれていたとしても起動可能かどうかという所までは判断できません。
そこでそれを判断するにはgetLaunchIntentForPackageメソッドを使います。
PackageManager pm = getPackageManager(); List<PackageInfo> pckInfoList = pm.getInstalledPackages( PackageManager.GET_ACTIVITIES | PackageManager.GET_SERVICES); for(PackageInfo pckInfo : pckInfoList){ if(pm.getLaunchIntentForPackage(pckInfo.packageName) != null){ ///起動可能な時の処理 }else{ ///起動不可の時の処理 } }
getLaunchIntentForPackageでnullが返って来なければ起動可能なActivityが含まれているのでアプリも起動可能、もしnullなら起動できないアプリだということが判断できます。
© Kaz