0

我很惭愧地问这个问题,因为我知道的更好,但现在我很困难!当我点击通知时,我写了我的代码来调用一个活动。然而,加班时我点击通知,活动不会开始,而是通知消失。我有一个Receiver.java,它扩展了BroadcastReceiver,然后调用包含我设置的通知生成器的Alarm Service。这里是我使用的通知生成器:当通知被点击时,通知页面没有出现

Intent intent1=new Intent(Alarm.this,NotificationPage.class); 
    PendingIntent pendingIntent=PendingIntent.getActivity(Alarm.this,1,intent1,0); 

    NotificationCompat.Builder builder=new NotificationCompat.Builder(Alarm.this); 
    builder.setAutoCancel(true); 
    builder.setContentTitle(from); 
    builder.setContentText(message); 
    builder.setSmallIcon(R.drawable.icon); 
    builder.setContentIntent(pendingIntent); 
    builder.setSound(sound); 
    builder.build(); 
    nm=(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE); 
    notify=builder.getNotification(); 
    notify.flags=Notification.FLAG_AUTO_CANCEL; 
    nm.notify(0, notify); 

一切,但通知页面弹出,工作。我在设备上测试了它,该应用没有崩溃,所以我知道没有错误。 请帮忙!

失意编码器ATM

回答

1
public void notifyIncomingRequest(Context context,String message) 
{ 
    Intent intent=new Intent(); 
    NotificationManager mNotificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE); 
    intent.putExtra("notification", true); 
    intent.putExtra("message", message); 
    intent.setAction(Long.toString(System.currentTimeMillis())); 
    intent.setClass(context, YOURCLASS.class); 
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
    intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP); 
    PendingIntent contentIntent = PendingIntent.getActivity(context,0,intent, PendingIntent.FLAG_UPDATE_CURRENT); 



    NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(context).setSmallIcon(R.drawable.ic_launcher).setAutoCancel(true); 

    boolean notification = true; 
    boolean notification_vibration = false; 
    boolean notification_sound = true; 



    String title = "YOURTITLE"; 
    mBuilder.setContentTitle(title); 
    String msg=message; 
    mBuilder.setContentText(msg); 
    mBuilder.setStyle(new NotificationCompat.BigTextStyle().bigText(title)); 


    if(notification){ 

     mBuilder.setContentIntent(contentIntent); 
     Notification notify = mBuilder.build(); 

     if(notification_vibration) 
      notify.defaults |= Notification.DEFAULT_VIBRATE; 

     if(notification_sound) 
      notify.defaults |= Notification.DEFAULT_SOUND; 

     mNotificationManager.notify(Integer.valueOf(intent.getIntExtra("number", 13)), notify); 
    } 
} 

YOURCLASS.class的是,你要显示一下通知后的活动,尝试调用适当的上下文和信息这一功能,你是好去。

+0

它每分钟都不是每一天都像我想要的 – droidnoob

+0

@droidnoob它到您的服务,它要求通知是否显示通知在每一天或每一分钟,检查您的服务,并确保您每天都调用notifyIncomingRequest方法每一分钟。 (顺便说一句,我无法看到你的评论中提到的任何信息,作为你主要问题的一部分) –