0
我想在使用WakefulBroadcastReceiver打開屏幕後進入特定活動。屏幕正常打開,但之後沒有執行任何操作,甚至沒有顯示任何異常。如何使用WakefulBroadcastReceiver打開屏幕後進入特定活動?
以下是我的代碼。
AndroidManifest.xml中
<uses-permission android:name="android.permission.WAKE_LOCK" />
<receiver android:name=".Alarm" />
Java文件
public class Alarm extends WakefulBroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
PowerManager powerManager = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.KITKAT_WATCH) {
isScreenOn = powerManager.isInteractive();
}
else
{
isScreenOn = powerManager.isScreenOn();
}
if(!isScreenOn)
{
PowerManager.WakeLock wakeLock = powerManager.newWakeLock(PowerManager.FULL_WAKE_LOCK |PowerManager.ACQUIRE_CAUSES_WAKEUP |PowerManager.ON_AFTER_RELEASE,"Remind Me");
wakeLock.acquire();
Intent gotoIntent;
gotoIntent = new Intent(context, MainActivity.class);
gotoIntent.putExtra(ReminderActivity.EXTRA_REMINDER_ID, Integer.toString(mReceivedID));
context.startActivity(gotoIntent);
}
}
您的broadcastreceiver是否在您的清單文件中註冊? – GrIsHu
@GrIsHu是的,它已註冊。 –