読者です 読者をやめる 読者になる 読者になる

インストール済みアプリの一覧を取得したり、指定アプリがインストールされているか判定したり

PackageManagerを使えば良いらしい。

import java.util.List;

import android.app.Activity;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageManager;
import android.content.pm.PackageManager.NameNotFoundException;
import android.os.Bundle;
import android.util.Log;

public class MainActivity extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        // PackageManagerの取得
        PackageManager pm = this.getPackageManager();
        
        // インストール済みアプリケーションの一覧を取得
        List<ApplicationInfo> list = pm.getInstalledApplications(0);
        for (ApplicationInfo ai : list) {
            Log.i("PackageManagerTest", ai.packageName);
        }
        
        // 特定のパッケージがインストールされているか判定
        try {
            ApplicationInfo ai = pm.getApplicationInfo("com.android.browser", 0);
            Log.i("PackageManagerTest", "com.android.browser is found");
        } catch (NameNotFoundException e) {
            Log.i("PackageManagerTest", "com.android.browser is not found");
        }
    }
}