2

アプリケーションで別の種類の通知を行う必要があります。アプリケーションがタスク マネージャーから強制終了された場合でも、通知が表示されるはずです。通知は次々にスタックされる必要があります。私が使用している既存の通知コードを以下に示します。

これは、通知を作成するためのクラスです。

public class TimeAlarm extends BroadcastReceiver {

     NotificationManager nm;

     @Override
     public void onReceive(Context context, Intent intent) {
      nm = (NotificationManager) context
        .getSystemService(Context.NOTIFICATION_SERVICE);
      CharSequence from = "Scheduled Training";
      CharSequence message = "Please attend the scheduled training";


      PendingIntent contentIntent = PendingIntent.getActivity(context, 0,
        new Intent(), 0);
      Notification notif = new Notification(R.drawable.ic_launcher,
        "Scheduled Training", System.currentTimeMillis());
      notif.setLatestEventInfo(context, from, message, contentIntent);
      nm.notify(1, notif);
     }
    }

これは、通知を作成するためにアクティビティで使用しているコードです。

  @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);

  duration=(EditText)findViewById(R.id.duration_editText);
        dateAndTimeLabel=(TextView)findViewById(R.id.timeTxt);

        updateLabel();
        updateNotification();
        am = (AlarmManager) getSystemService(Context.ALARM_SERVICE);

     // On Click Confirm

            confirm=(ImageView)findViewById(R.id.confirm_imageView);
            confirm.setOnClickListener(new OnClickListener() {

                public void onClick(View v) {
                    getDateTime();
                     count++;
                   setOneTimeAlarm();
                }
            });

      }


     public void setOneTimeAlarm() {
    Calendar calendar = Calendar.getInstance();
    calendar.set(Calendar.HOUR_OF_DAY, hour);
             calendar.set(Calendar.MINUTE, minute);
             calendar.set(Calendar.SECOND, 0);





          Intent intent = new Intent(this, TimeAlarm.class);
          PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0,
            intent,count);
          am.set(AlarmManager.RTC_WAKEUP,
           calendar.getTimeInMillis(), pendingIntent);
         }


    void updateNotification()
          {
              hour= dateAndTime.get(Calendar.HOUR_OF_DAY);
              minute=dateAndTime.get(Calendar.MINUTE);
          }

これは私の目標を達成するのに役立ちません。私は何をすべきか?アイス エイジの村のゲームで見られるような通知を作成したいと考えています。

4

0 に答える 0