From 81bd120f26d545d6397e9db806dda16bbd14d6d6 Mon Sep 17 00:00:00 2001
From: Daniel Yu When your activity switches to PIP, the system considers the activity in a
-paused state, and calls your activity's onPause() method. Video
-playback should not be paused and should continue playing if the activity is
-paused due to PIP mode. Check for PIP in your activity's
-onPause() method and handle playback appropriately, for
-example:
In Android N, you should pause and resume video playback when the system +calls your activity's {@link android.app.Activity#onStop onStop()} and +{@link android.app.Activity#onStart onStart()}. By doing this, you can avoid +having to check if your app is in PIP mode in +{@link android.app.Activity#onPause onPause()} and explicitly +continuing playback.
+ +If you have to pause playback in your {@link android.app.Activity#onPause +onPause()} implementation, check for PIP mode by calling {@code +isInPictureInPictureMode()} and handle playback appropriately, for example:
@Override
@@ -170,7 +179,8 @@ public void onPause() {
When your activity switches out of PIP mode back to full-screen mode, the
-system resumes your activity and calls your onResume() method.
When an activity is in PIP mode, by default it doesn't get input focus. To
receive input events while in PIP mode, use
MediaSession.setMediaButtonReceiver().
When your app is in PIP mode, video playback in the PIP window can cause +audio interference with another app, such as a music player app or voice search +app. To avoid this, request audio focus when you start playing the video, +and handle audio focus change notifications, as described in +Managing Audio +Focus. If you receive notification of audio focus loss when in PIP mode, +pause or stop video playback.
\ No newline at end of file