2017-11-22 3 views
0

정의 된 시간에 알림을 표시하려고합니다. "setWhen()"를 사용합니다. 그러나 setWhen()의 인수는 무시하고 항상 즉시 표시됩니다. 내가 뭘 잘못 했니? 내 코드 :NotificationCompat 한 번에

NotificationCompat.Builder mBuilder = 
    new NotificationCompat.Builder(this) 
        .setWhen(???) 
        .setSmallIcon(R.drawable.app_icon) 
        .setContentTitle("Test") 
        .setContentText("Test"); 
    Intent resultIntent = new Intent(this, MainActivity.class); 

    NotificationManager mNotificationManager = 
      (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); 
    mNotificationManager.notify(1, mBuilder.build()); 
+0

내 질문과 대답을 살펴보십시오. 나는 오늘 그것을 고쳤다. [BroadcastReceiver 및 AlarmManager를 사용하여 특정 시간에 알림] (https://stackoverflow.com/questions/47420667/notification-at-specific-time-using-broadcastreceiver-and-alarmmanager) –

답변

1

이는 용도가 setWhen이 아닙니다. UI의 유일한 것입니다. setShowWhen이 활성화 된 경우이 타임 스탬프는 이며 알림시으로 표시됩니다.

귀하의 목적을 위해, 나는 안드로이드 AlarmManager 제안하고 싶습니다. 예를 찾을 수 있습니다. 알림이 표시 될 때가 아니라 알림 자체에 시간을 표시하는 데 사용되는 here

0

setWhen()이 사용됩니다.

enter image description here

특정 시간에 알림을 보여주는를 들어, AlarmManager 클래스를 사용할 수 있습니다 :

알림의 오른쪽 상단에있는 시간이 setWhen() 컨트롤 것입니다. This에는 동일한 작업을 수행하는 코드가 있습니다.