按下电源按钮关闭屏幕正在重新启动活动

Posted

技术标签:

【中文标题】按下电源按钮关闭屏幕正在重新启动活动【英文标题】:Pressing the power button to turn off screen is restarting the activity 【发布时间】:2013-08-19 01:12:37 【问题描述】:

这就是正在发生的事情。我有一个简单的相机应用程序可以拍照。我主要是从 android Camera javadoc 复制代码

1) 我按下电源按钮。我在日志中看到以下内容。

I/ImageUploader(15724):OnPause

I/ImageUploader(15724):Surface Preview 已损坏

I/ImageUploader(15724): OnCreate

I/ImageUploader(15724): OnResume

I/ImageUploader(15724):OnPause

我理解的是为什么在 onPause 之后调用 OnCreate?

这是我的 OnPause 代码。

@Override
protected void onPause() 
    super.onPause();
    Logger.i("OnPause");

    //turn off the screen
    if(previewLayout!=null)
        previewLayout.setKeepScreenOn(false);
    

    //release the camera
    if(camera != null) 
        camera.stopPreview();
        //preview.setCamera(null);
        camera.release();
        camera = null;
        //preview.mHolder.addCallback(null);
        preview = null;
    

【问题讨论】:

【参考方案1】:

这很简单。这是由于配置更改而发生的。只需将其添加到清单中的活动中即可。

<activity 
        android:configChanges="orientation|keyboardHidden|keyboard|screenSize"
        android:name=".About"
        android:label="@string/app_name" 
        android:screenOrientation="portrait">
    </activity>

【讨论】:

以上是关于按下电源按钮关闭屏幕正在重新启动活动的主要内容,如果未能解决你的问题,请参考以下文章

如果在我的 android 应用程序中没有按下电源按钮 (x) 次,如何启动活动?

按下后退按钮时避免启动屏幕活动

关闭iOS电源按钮上的应用程序关闭

在 Android 中重新启动时保存更改字符串

xss如何清除mac重启

Android如何在屏幕关闭/打开时防止webview重新加载?