Принудительное закрытие пользовательской вкладки Chrome - PullRequest
0 голосов
/ 10 февраля 2019

Я хочу закрыть пользовательскую вкладку Chrome нажатием кнопки возврата устройства, но она работает только тогда, когда на пользовательской вкладке в настоящий момент нет истории;когда есть оставшаяся история, нажатие кнопки возврата устройства только перематывает пользовательскую вкладку обратно на страницу в ее истории.Могу ли я заставить пользовательскую вкладку игнорировать историю в любой момент и немедленно закрыть пользовательскую вкладку?

Я пробовал разные варианты для пользовательских вкладок, такие как ниже, но, похоже, ни одна из них не помогает моей цели.Я был бы очень признателен за вашу идею.Спасибо!

customTabsIntent.intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
customTabsIntent.intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
customTabsIntent.intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

Мой текущий код

String url = eacharticle.get("url");
String PACKAGE_NAME = "com.android.chrome";
android.support.customtabs.CustomTabsIntent customTabsIntent = new android.support.customtabs.CustomTabsIntent.Builder().setShowTitle(true).build();
customTabsIntent.intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
customTabsIntent.intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
customTabsIntent.intent.setData(Uri.parse(url));
java.util.List<android.content.pm.ResolveInfo> resolveInfoList = context.getPackageManager().queryIntentActivities(customTabsIntent.intent, android.content.pm.PackageManager.MATCH_DEFAULT_ONLY);
for (android.content.pm.ResolveInfo resolveInfo : resolveInfoList) {
String packageName = resolveInfo.activityInfo.packageName;
if(PACKAGE_NAME.equals(packageName))
customTabsIntent.intent.setPackage(PACKAGE_NAME); // force use chrome if installed
}
customTabsIntent.launchUrl(context, Uri.parse(url));

1 Ответ

0 голосов
/ 19 февраля 2019

Я не думаю, что в настоящее время есть возможность сделать это, поскольку мы не можем переопределить действие onBackPressed на пользовательских вкладках Chrome.На самом деле, лучше так работать во многих случаях.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...