Merge "Fixed the conflict of the release methods of ActivityView & TaskEmbedder" into rvc-dev

This commit is contained in:
Shawn Lin
2020-06-16 09:32:15 +00:00
committed by Android (Google) Code Review
2 changed files with 5 additions and 16 deletions

View File

@@ -360,18 +360,9 @@ public class ActivityView extends ViewGroup implements android.window.TaskEmbedd
}
/**
* Release this container. Activity launching will no longer be permitted.
* <p>Note: Calling this method is allowed after
* {@link StateCallback#onActivityViewReady(ActivityView)} callback was triggered and before
* {@link StateCallback#onActivityViewDestroyed(ActivityView)}.
*
* @see StateCallback
* Release this container if it is initialized. Activity launching will no longer be permitted.
*/
public void release() {
if (!mTaskEmbedder.isInitialized()) {
throw new IllegalStateException(
"Trying to release container that is not initialized.");
}
performRelease();
}
@@ -487,7 +478,9 @@ public class ActivityView extends ViewGroup implements android.window.TaskEmbedd
return;
}
mSurfaceView.getHolder().removeCallback(mSurfaceCallback);
mTaskEmbedder.release();
if (mTaskEmbedder.isInitialized()) {
mTaskEmbedder.release();
}
mTaskEmbedder.setListener(null);
mGuard.close();

View File

@@ -746,11 +746,7 @@ public class BubbleExpandedView extends LinearLayout {
if (mActivityView == null) {
return;
}
switch (mActivityViewStatus) {
case INITIALIZED:
case ACTIVITY_STARTED:
mActivityView.release();
}
mActivityView.release();
if (mTaskId != -1) {
try {
ActivityTaskManager.getService().removeTask(mTaskId);