屏幕亮起时启动活动

时间:2012-08-19 08:22:40

标签: android

这是我的情景:

我需要在屏幕启动时启动一个活动,没问题,只是它运行缓慢(至少需要一秒)。

所以我所做的就是在屏幕开始时启动活动,并等待用户转动屏幕。

现在我的问题是活动会打开锁定屏幕,这就是我想要的,但它会在屏幕显示时发出解锁声音。是否有可能取消声音?或者可以在屏幕上工作时更快地激活?

2 个答案:

答案 0 :(得分:0)

当应用程序再次进入后台并进入前台时,会调用onPause()和onResume()方法,因此只需在onPause()中调用以下函数。

public static boolean isApplicationSentToBackground(final Context context) {
ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
List<RunningTaskInfo> tasks = am.getRunningTasks(1);
if (!tasks.isEmpty()) {
  ComponentName topActivity = tasks.get(0).topActivity;
  if (!topActivity.getPackageName().equals(context.getPackageName())) {
    return true;
  }
}

return false;
}

uses-permission android:name =“android.permission.GET_TASKS”

您必须将此权限添加到Android清单文件

答案 1 :(得分:-2)

您可以使用ACTION_SCREEN_ON和ACTION_SCREEN_OFF意图关闭屏幕并屏幕显示案例。以下链接将为您提供有关此

的更多信息

http://thinkandroid.wordpress.com/2010/01/24/handling-screen-off-and-screen-on-intents/