Android屏幕On And Off Make调用哪种方法

时间:2014-07-24 21:14:49

标签: android android-activity android-fragments

当Android屏幕变为关闭开启时,会调用方法
当Android屏幕关闭 onPause等并且当Andriod屏幕变为 onResume等等被调用时我想知道是不是任何特殊的方法只是为了屏幕上和活动或特别是 片段 中的目的。

4 个答案:

答案 0 :(得分:2)

当屏幕关闭时,您的活动变得不可见,触发 onPause ,然后是 onStop

另一方面,

屏幕上会触发 onStart ,然后触发 onResume

话虽如此,您检测屏幕事件的最佳方法是注册广播接收器

"android.intent.action.ACTION_SCREEN_ON"
"android.intent.action.ACTION_SCREEN_OFF"

请参阅代码示例here

答案 1 :(得分:1)

如果您在谈论自己的活动,请在Android文档中查看onResume onPauseactivity life cycle的可见/不可见内容。

如果您正在谈论屏幕开启和关闭,请检查BroadcastReceivers以查看Intent.ACTION_SCREEN_ONIntent.ACTION_SCREEN_OFF事件。

同时查看this example

答案 2 :(得分:1)

屏蔽 onPause> onStop (第一个onPause被调用然后onStop)

屏幕 - > onStart> onResume (第一个onStart get,然后onResume)

请参阅activityLifecycle diagram

Diagram of activity life cycle

答案 3 :(得分: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" />

如果您想知道当App再次变为活动状态时调用的方法是

onResume()

如果您想进行任何更改,您应该@Override。