0

Facebook アプリの代わりにブラウザーで共有ページを開くことができるかどうかを知りたいです。Facebook アプリが存在する場合は、Facebook アプリを開いて何かを共有します。それ以外の場合は、ブラウザを開いて共有します。ガイダンスとして、次のスタック オーバーフローの質問を使用しています: Share Text on Facebook from Android App via ACTION_SEND

sharingIntent.setType("text/plain");
sharingIntent.putExtra(android.content.Intent.EXTRA_TEXT,
        "http://www.some-link-to-open.com");
PackageManager pm = getPackageManager();
List<ResolveInfo> activityList = pm.queryIntentActivities(sharingIntent, 0);
for (final ResolveInfo app : activityList) {
    if ((app.activityInfo.name).contains("facebook")) {
        /**
         * Open Facebook app 
         */

        final ActivityInfo activity = app.activityInfo;
        final ComponentName name = new ComponentName(
                activity.applicationInfo.packageName, activity.name);
        sharingIntent.addCategory(Intent.CATEGORY_LAUNCHER);
        sharingIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK
                | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
        sharingIntent.setComponent(name);
        startActivity(sharingIntent);
        break;
    } else if ((app.activityInfo.name).contains("internet")) {
        /**
         * Open Facebook in the browser. 
         */

        Intent i = new Intent(Intent.ACTION_VIEW);
        i.setData(Uri.parse("https://m.facebook.com/sharer.php?u="
                + "http://www.some-link-to-open.com"));
        startActivity(i);
    }

Facebook アプリを決定するために、以下を使用します。

(app.activityInfo.name).contains("facebook")

したがって、上記のコードで知りたいのは

else if ((app.activityInfo.name).contains("internet"))

ブラウザを決定するために入力する必要がある適切なコードは何ですか?

4

0 に答える 0