要解決此問題,您可以依靠Android Tasks。
你要做的:
啓動的WebView活動使用國旗:Intent.FLAG_ACTIVITY_NEW_TASK
和Intent.FLAG_ACTIVITY_MULTIPLE_TASK
這些活動裏面調用getTaskId()
和提供的ID給您的主要活動。當你要恢復的活動,請執行以下操作:
ActivityManager am = (ActivityManager) context.getSystemService(ACTIVITY_SERVICE);
am.moveTaskToFront(taskId, 0);
需要許可permission android.Manifest.permission.REORDER_TASKS
當你想返回從一個的WebView任務(其中包括一個單一的活動),你的主要任務,做到這一點:
Context context = getApplicationContext();
String packageName = context.getPackageName();
Intent launchIntent = context.getPackageManager().getLaunchIntentForPackage(packageName);
launchIntent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT | Intent.FLAG_ACTIVITY_SINGLE_TOP);
context.startActivity(launchIntent);