2016-12-08 26 views
1

アプリケーションを起動すると、データベースからデータが取得されます。新しいデータがある場合、アプリケーションにアプリ内通知(バナー)を表示してユーザーに警告する必要があります。アプリ内通知

if (!taskToNotify.isEmpty()) { 
      //Notification builder 
      NotificationCompat.Builder builder = new NotificationCompat.Builder(mContext); 
      builder.setAutoCancel(true); 
      builder.setSmallIcon(R.drawable.ic_event_notification); 
      builder.setContentTitle(taskToNotify.get(0).getName() + mContext.getString(R.string.notification_content_task)); 
      builder.setDefaults(Notification.DEFAULT_VIBRATE | Notification.DEFAULT_SOUND); 

      // inbox style 
      NotificationCompat.InboxStyle inboxStyle = new NotificationCompat.InboxStyle(); 
      inboxStyle.addLine(mContext.getString(R.string.notification_detail_date) + taskToNotify.get(0).dueDateToString()); 
      inboxStyle.addLine(mContext.getString(R.string.notification_detail_location) + taskToNotify.get(0).getLocationName()); 

      // Moves the expanded layout object into the notification object. 
      builder.setStyle(inboxStyle); 


      mAdapter.notifyDataSetChanged(); 

      builder.build(); 
     } 

しかし、これは現時点では動作しません:私はこれを実装した瞬間のために

。コード実行時に通知は表示されません。

Android搭載端末でその可能性はありますか?または、私はこの情報をユーザーに表示する別の方法が必要ですか?

は、あなたの貴重な助けをありがとう:)

答えて

2

をあなたはsetContentText()に欠けているそれ以外の場合は、要件を満たしていません。

通知を作成するときは、NotificationCompat.BuilderオブジェクトでUIコンテンツとアクションを指定します。 (setContentTextによって設定されたsetContentTitle(で設定されたsetSmallIcon()

  • タイトル、)
  • 詳細テキストが設定した

    • 小さなアイコン、:最低限、ビルダーオブジェクトには、次のものが含まれている必要があります)

    https://developer.android.com/training/notify-user/build-notification.html

    関連する問題