Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/185.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
Android 更改手机查看模式后,活动将重新启动_Android - Fatal编程技术网

Android 更改手机查看模式后,活动将重新启动

Android 更改手机查看模式后,活动将重新启动,android,Android,在我的应用程序中,当播放视频时,如果我更改手机的模式,视频不会继续播放,而是从头开始播放。我所了解的是,当模式更改时,活动将重新创建,我如何修复此问题我不知道,请有人帮助我修复此问题。 提前感谢当您的活动重新启动时,通过以下方法保存视频的当前位置: @Override public Object onRetainNonConfigurationInstance() { int videoPosition = videoView.getCurrentPosition(); Bund

在我的应用程序中,当播放视频时,如果我更改手机的模式,视频不会继续播放,而是从头开始播放。我所了解的是,当模式更改时,活动将重新创建,我如何修复此问题我不知道,请有人帮助我修复此问题。
提前感谢

当您的活动重新启动时,通过以下方法保存视频的当前位置:

@Override
public Object onRetainNonConfigurationInstance() {
    int videoPosition = videoView.getCurrentPosition();
    Bundle data = new Bundle();
    data.putInt("POSITION", videoPosition);
    return data;
}
然后在
onCreate()
方法上按如下方式检索此值:

final Bundle data = (Bundle) getLastNonConfigurationInstance();

// The activity is starting for the first time...
if (data == null) {
   // start your video for the first time here..
} else {
    // Resume your video from where it was left..
    int videoPosition = data.getInt("POSITION");
// start your video from videoposition....          
}

您可以将AndroidManifest文件中的这一行添加到活动标记中,这样您的活动就不会重新开始

<activity android:name=".Activity_name"
          android:configChanges="orientation|keyboardHidden">


查找参数名称onconfigchange您能否详细解释一下,因为我是androidin AndroidManifest的新手,在activty set onconfigchange Property下,我们为什么需要添加Keyboard Hidden Property检查但这样做不会停止方向。它用于在活动中获取方向更改事件..是,但这将阻止活动的再创造。您可以试试。@lalit已经尝试过您的解决方案,它完全有效。。你在link中给出的文档也在说同样的事情…所以+1。继续努力。