Я хочу закрыть пользовательскую вкладку 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));