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方法每一分鐘。 (順便說一句,我無法看到你的評論中提到的任何信息,作爲你主要問題的一部分) –