1

ユーザーが Chrome で Chrome カスタム タブを開くタイミングを判断しようとしています (メニューの [Chrome で開く] オプション)。

私のナビゲーション コールバックはイベント コード 6 を返します。これは、ユーザーがカスタム タブを閉じたときに返されるコードと同じです。ユーザーがカスタム タブを閉じたか、Chrome で開いたかを区別する方法はありますか?

4

1 に答える 1

0

ナビゲーション コード 6 は、ユーザーが CustomTabs インテントを開始したアクティビティに戻ったか、別のアクティビティ (この場合は Chrome が開始された) が実行されたため、CustomTabs アクティビティが表示されなくなったことを意味します。

ユーザーが CustomTabs アクティビティから Chrome に移動すると、ナビゲーション コード 6 が返されます。戻るボタンが押されると、別のイベントがコード 5 で送信されます (タブが再び表示されます)。この場合、CustomActivity はまだ表示されており、前のアクティビティは終了しており、インテントを開始したアクティビティはまだ一時停止しています。

onActivityResult()アクティビティの CustomTabs を開始すると、セッションを開始したアクティビティでナビゲーション コード 6 とメソッドが呼び出された場合に問題が解決する場合があります。

public void openUrlForResult(String url, int requestCode){
    CustomTabsIntent customTabsIntent = buildCustomTabIntent(mCustomTabSession);
    customTabsIntent.intent.setData(Uri.parse(url));
    mContext.startActivityForResult(customTabsIntent.intent, requestCode);
}
于 2016-01-11T15:58:56.900 に答える