Android屏幕的开和关调用哪个方法?

3

当安卓屏幕变暗和变亮时,会调用哪个方法
当安卓屏幕变暗时,会调用onPause等,当安卓屏幕变亮时,会调用onResume等。我想知道,在Activity或特定的Fragment中,是否有专门用于屏幕开关的特殊方法。

4个回答

2
当屏幕关闭时,您的活动变得不可见,这会触发 onPause ,然后是 onStop
另一方面,屏幕打开会触发 onStart ,然后是 onResume
话虽如此,检测屏幕事件的最佳方法是注册广播接收器。
"android.intent.action.ACTION_SCREEN_ON"
"android.intent.action.ACTION_SCREEN_OFF"

查看代码示例此处


1

1

屏幕关闭 < onPause > onStop(先调用第一个onPause,然后是onStop)

屏幕开启 > onStart > onResume(先调用第一个onStart,然后是onResume)

请参见activityLifecycle图表

活动生命周期图表


0

我不确定你想要的是这个,但这可以打开和关闭屏幕。

PowerManager manager = (PowerManager) getSystemService(Context.POWER_SERVICE);

// Choice 1
manager.goToSleep(int amountOfTime);

// Choice 2
PowerManager.WakeLock wl = manager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "Your Tag");
wl.acquire();
wl.release();

另外,您还需要这个权限:

<uses-permission android:name="android.permission.WAKE_LOCK" />

如果你想知道当应用程序再次变为活动状态时调用的方法是什么,那就是onResume()。如果你想要进行任何更改,你应该使用 @Override 来重写它。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接