0

我有一个广播接收器,他的工作是打开一个活动。(特别是当我收到某条短信时)。当我的手机开机并使用它时,它工作得很好。
但是当我的手机处于睡眠模式时,什么也没有发生。
我是否需要在我的广播接收器中添加一个代码来唤醒手机并释放屏幕锁定(如果有)然后打开活动?
还是有更好的解决方案?

这是广播接收器 onReceive 函数中的相关代码:

    //Create a new PendingIntent and add it to the AlarmManager
Intent intent = new Intent(context, Alarm.class);
intent.putExtra("coordinates", coordinates);
PendingIntent pendingIntent = PendingIntent.getActivity(context,
    0, intent, PendingIntent.FLAG_ONE_SHOT);
AlarmManager am = (AlarmManager)context.getSystemService(Activity.ALARM_SERVICE);
am.set(AlarmManager.RTC_WAKEUP, System.currentTimeMillis() + 100, pendingIntent);
4

1 回答 1

1

您将需要使用 WakeLock 来完成此操作。

这个特定的教程帮助了我:http: //it-ride.blogspot.com/2010/10/android-implementing-notification.html

以及另一个更好的关于唤醒锁的教程:https ://github.com/commonsguy/cwac-wakeful

于 2012-10-21T13:12:09.573 回答