Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/213.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android PiP模式和应用程序生命周期_Java_Android_Picture In Picture - Fatal编程技术网

Java Android PiP模式和应用程序生命周期

Java Android PiP模式和应用程序生命周期,java,android,picture-in-picture,Java,Android,Picture In Picture,我正在将PiP模式添加到我的应用程序中,发现生命周期存在问题。官方文档说:“当您的活动切换到PIP时,系统会将该活动置于暂停状态,并调用该活动的onPause()方法。如果该活动在PIP模式下暂停,则视频播放不应暂停,并应继续播放。”但在我的情况下,在进入PIP模式后,我有以下顺序: 07-19 17:03:40.094 Enter PiP mode 07-19 17:03:40.193 OnPause( 07-19 17:03:40.780 OnStop() 07-19 17:03:40.78

我正在将PiP模式添加到我的应用程序中,发现生命周期存在问题。官方文档说:“当您的活动切换到PIP时,系统会将该活动置于暂停状态,并调用该活动的onPause()方法。如果该活动在PIP模式下暂停,则视频播放不应暂停,并应继续播放。”但在我的情况下,在进入PIP模式后,我有以下顺序:

07-19 17:03:40.094 Enter PiP mode
07-19 17:03:40.193 OnPause(
07-19 17:03:40.780 OnStop()
07-19 17:03:40.788 OnDestroy()
07-19 17:03:40.927 OnCreate()
07-19 17:03:40.937 OnStart()
07-19 17:03:41.014 OnResume
07-19 17:03:41.024 OnPause()
怎么了?之后,我在一个小窗口中重新启动了一个应用程序

public void Pip_Click(View v) {

        if (android.os.Build.VERSION.SDK_INT >= 26) {
            //Trigger PiP mode
            try {
                Rational rational = new Rational(simpleExoPlayerView.getWidth(), simpleExoPlayerView.getHeight());

                PictureInPictureParams mParams = new PictureInPictureParams.Builder()
                                .setAspectRatio(rational)
                                .build();

                appendLog("enter PiP mode");
                enterPictureInPictureMode(mParams);

                setFullScreen();
            } catch (IllegalStateException e) {
                e.printStackTrace();
            }
        } else {
            Toast.makeText(MainActivity.this, "Not supported", Toast.LENGTH_SHORT).show();
        }

    }
从舱单:

<activity
            android:name=".MainActivity"
            android:configChanges="orientation|keyboardHidden|screenSize"
            android:supportsPictureInPicture="true"
            android:label="@string/app_name"
            android:launchMode="singleTask">

        </activity>

通过更改此选项解决了我的问题:

<activity
            android:name=".MainActivity"
            android:resizeableActivity="true"
            android:configChanges="orientation|keyboardHidden|screenSize|smallestScreenSize|screenLayout"
            android:supportsPictureInPicture="true"
            android:label="@string/app_name"
            android:launchMode="singleTask">
        </activity>

通过更改此选项解决了我的问题:

<activity
            android:name=".MainActivity"
            android:resizeableActivity="true"
            android:configChanges="orientation|keyboardHidden|screenSize|smallestScreenSize|screenLayout"
            android:supportsPictureInPicture="true"
            android:label="@string/app_name"
            android:launchMode="singleTask">
        </activity>


这解决了我的问题,但解释会让答案变得很棒。这解决了我的问题,但解释会让答案变得很棒。