收到报警通知后,页面未定向到其他活动?

时间:2016-08-03 15:06:29

标签: android alarmmanager

我是android developpement的新手。我已经以5秒的间隔设置了警报。 因此,一旦触发警报,我就设置了通知。但是当我选择通知时,我将页面配置为移动其他一些活动。但是没有任何事情发生。

 public class Snooze extends BroadcastReceiver {

    @Override
    public void onReceive(Context context, Intent intent) {

        Intent intent1=new Intent(context,NotificaitonPage.class);
        intent1.putExtra("notify","SNOOZE") ;



        intent1.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
        int requestCode = 0;

        PendingIntent pendingIntent = PendingIntent.getBroadcast(context, requestCode, intent1, PendingIntent.FLAG_UPDATE_CURRENT);

        NotificationCompat.Builder noBuilder = new NotificationCompat.Builder(context)
                .setSmallIcon(R.mipmap.ic_launcher)
                .setContentTitle("Push notification alerts")
                .setContentText("This for alaram notification")
                .setAutoCancel(true)
                .setContentIntent(pendingIntent)
                .setStyle(new NotificationCompat.BigTextStyle().bigText("This for alaram notification")) ;

        NotificationManager notificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);


        notificationManager.notify(0, noBuilder.build()); //0 = ID of notification

    }
}

所以,请帮我解决问题。 提前谢谢。

2 个答案:

答案 0 :(得分:1)

将以下标记添加到intent1

intent1.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

正如@Alexander在另一个答案中指出的那样,您还需要将PendingIntent设置为:

pendingIntent.getActivity();

答案 1 :(得分:1)

创建 PendingIntent 时,您应使用PendingIntent.getActivity()代替PendingIntent.getBroadcast。查看更多link