[ERLEDIGT] Notification sendet eher zufällig als festgelegt

  • 1 Antworten
  • Letztes Antwortdatum
Status
Für weitere Antworten geschlossen.
Q

quidproquo

Neues Mitglied
0
Hallo,

in der onCreate der MainActivity ist folgender code:

Code:
public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        intent_anmeldeActivity = new Intent(this, anmeldeActivity.class);
        intent_WebViewActivity = new Intent(this, WebViewActivity.class);

        prefs = getSharedPreferences("prefs", Context.MODE_PRIVATE);
        prefsEditor = prefs.edit();


        Calendar calendar = Calendar.getInstance();
            calendar.set(Calendar.HOUR_OF_DAY, 07);
            calendar.set(Calendar.MINUTE, 00);
            calendar.set(Calendar.SECOND, 00);

        intent_notification = new Intent(this, NotificationClass.class);

        Intent intent1 = new Intent(MainActivity.this, NotificationClass.class);
        PendingIntent pendingIntent = PendingIntent.getBroadcast(MainActivity.this, 0, intent1, PendingIntent.FLAG_UPDATE_CURRENT);
        AlarmManager am = (AlarmManager) MainActivity.this.getSystemService(MainActivity.this.ALARM_SERVICE);
        am.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), AlarmManager.INTERVAL_DAY, pendingIntent);

das ist die NotificationClass:
Code:
public class NotificationClass extends BroadcastReceiver{

@Override
public void onReceive(Context context, Intent intent) {
   // TODO Auto-generated method stub

   loadText loadText = new loadText();
   loadText.startAsyncTask(context);
} }

loadText extended AsyncTask und in onPostExecute von loadText wird die Klasse NotificationBuilding aufgerufen:
Code:
public class NotificationBuilding {

    Context mContext = null;

    int ID = 1;
    Uri alarmSound = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
    long when = System.currentTimeMillis();

    public void startNotificationBuilding(Context con, String title, String text) {

        this.mContext = con;

        NotificationManager notificationManager = (NotificationManager) mContext.getSystemService(Context.NOTIFICATION_SERVICE);

        Intent notificationIntent = new Intent(mContext, MainActivity.class);
        notificationIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

        PendingIntent pendingIntent = PendingIntent.getActivity(mContext, 0,
                notificationIntent, PendingIntent.FLAG_UPDATE_CURRENT);

        NotificationCompat.Builder mNotifyBuilder = (NotificationCompat.Builder) new NotificationCompat.Builder(
                mContext)
                .setSmallIcon(R.drawable.ic_stat_name)
                .setColor(Color.argb(255, 234, 146, 21))
                .setContentTitle(title)
                .setContentText(text)
                .setSound(alarmSound)
                .setAutoCancel(true)
                .setWhen(when)
                .setContentIntent(pendingIntent)
                .setVibrate(new long[]{1000, 1000, 1000, 1000, 1000})
                .setLights(Color.argb(255, 234, 146, 21), 1000, 10000)
                .setStyle(new NotificationCompat.BigTextStyle().bigText(text));

        notificationManager.notify(ID, mNotifyBuilder.build());
        ID++;
    } }

Ich hab die Vermutung, dass es daran liegt, dass der Alarm bei jedem Öffnen der app der Alarm gestellt wird. Ist es, wenn es daran liegt, sinnvoller, beim Öffnen der app zu überprüfen, ob es der erste Start der app ist und nur wenn es das erste Mal ist, den Alarm zu stellen?

Danke im Voraus!
 
Status
Für weitere Antworten geschlossen.

Ähnliche Themen

AnnaBauer21
Antworten
0
Aufrufe
473
AnnaBauer21
AnnaBauer21
Zurück
Oben Unten