2012年4月10日火曜日

Google Playストアからインストールしたアプリか判別する方法

Google Playストアからインストールしたアプリか判別するコードをメモしておく。
ローカルとGoogle Playストアのどちらからインストールしたのか
判別出来ていないため、その方法について今後調査する予定。

【要件】
・Google Playストアからインストール可能なアプリならばtrue
・プリインストールアプリでGoogle Playストアでアップデート可能ならばtrue
・プリインストールアプリでGoogle Playストアに無ければfalse

public boolean isMarketApp(String packageName){
    boolean isFound = false;

    if(!packageName.equal("com.android.vending")){
        try {
            ApplicationInfo applicationInfo = getPackageManager().getApplicationInfo(packageName, 0);
        
            if((applicationInfo.flags & ApplicationInfo.FLAG_UPDATED_SYSTEM_APP) != 0 ||
                (applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM) == 0){
                isFound = true;
            }
        } catch (NameNotFoundException e) {
        }
    }

    return isFound;
}

0 件のコメント:

コメントを投稿