0

アプリが実行されているデバイスが C2DM を使用できるかどうかを示すブール関数を作成する最も簡単な方法を探しています。

Android Google Play アプリの存在により、C2DM 機能が保証されていることは承知していますが、すべてのデバイスがこれを備えているわけではなく、C2DM に対応しているわけではありません。

私が知る限り、デバイスには GSF (Google Services Framework) がインストールされ、有効な GMail アカウントが設定されている必要があり、これらは C2DM が機能することを保証するための唯一の要件です。これは正確ですか?

もしそうなら、GMail パッケージと Google サービス フレームワーク パッケージの存在を確認することが最善かつ最も正確な方法でしょうか?

4

1 に答える 1

1

非常に簡単ですが、概念は残っています。Google サービス フレームワークの存在を単純に検索したい場合は、以下を使用できます。

私の知る限り、別の明白な方法がないため、これを投稿するだけです。

 boolean installed  =   appInstalledOrNot("com.google.process.gapps");
        if(installed)
        {
                  System.out.println("App installed on phone");
        }
        else
        {
            System.out.println("App is not installed phone");
        }
    }
    private boolean appInstalledOrNot(String uri)
    {
        PackageManager pm = getPackageManager();
        boolean app_installed = false;
        try
        {
               pm.getPackageInfo(uri, PackageManager.GET_ACTIVITIES);
               app_installed = true;
        }
        catch (PackageManager.NameNotFoundException e)
        {
               app_installed = false;
        }
        return app_installed ;
}
于 2012-05-29T11:59:36.180 に答える