Benachrichtigung nach Aktualisierung

  • 8 Antworten
  • Neuester Beitrag
Diskutiere Benachrichtigung nach Aktualisierung im Android App Entwicklung im Bereich Betriebssysteme & Apps.
B

ben56a

Ambitioniertes Mitglied
Hallo,

ich steht gerade vor einem Problem: wie ist es möglich, eine Benachrichtigung auf dem Handy anzuzeigen, wenn es eine Aktualisierung gibt. Dies soll geschehen, wenn die App unaktiv ist. Es soll zB im 10 Minuten Takt gecheckt werden, ob eine Aktualisierung stattgefunden hat, wenn ja, dann die Benachrichtigung.

wie ist dies zu realisieren?
 
K

ko5tik

Stammgast
Mit dem Broadcast-receiver. Du bestellst einfach wiederkehrenden Alarm (am Besten 15 Minuten unscharf)
 
B

ben56a

Ambitioniertes Mitglied
Danke für die schnelle Antwort. Leider funktioniert das ganze noch nicht so wie ich mir das vorstelle. Die Toastnachircht wird nicht angezeigt.

Code:
public class AlarmReceiver extends BroadcastReceiver{

    @Override
    public void onReceive(Context context, Intent intent) {
        Toast.makeText(context, "anzeigen",
                Toast.LENGTH_LONG).show();

        
    }

}
Refresh wird in der onCreate aufgerufen (bei appstart)
Code:
public void Refresh()
    {
        Intent intent = new Intent(this, AlarmReceiver.class);
        
        PendingIntent sender = PendingIntent.getBroadcast(this, 0, intent, 0);
        
        AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
        
        // Fire Service in 30 seconds, each second
        alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, 30000, 10 * 1000, sender);

    }
folgendes habe ich in die androidmanifest eingefügt:
Code:
 <receiver android:name=".receiver.AlarmReceiver" android:enabled="true">
       </receiver>
kann mir jemand einen Tipp geben... danke
 
B

ben56a

Ambitioniertes Mitglied
hat niemand einen Vorschlag?
 
U

Unicate

Erfahrenes Mitglied
Ich vermute das du den falschen Context verwendest um den Toast auszugeben
 
B

ben56a

Ambitioniertes Mitglied
der Context wird doch der methode onReceive übergeben. Das wird doch dann vom Betriebssystem übernommen? oder sehe ich das falsch?

Unicate schrieb:
Ich vermute das du den falschen Context verwendest um den Toast auszugeben
 
B

ben56a

Ambitioniertes Mitglied
ich habe nun festgestellt, dass die Funktion onReceive nie aufgerufen wird.

Woran kann dies liegen?
 
Mugendon

Mugendon

Stammgast
ben56a schrieb:
ich habe nun festgestellt, dass die Funktion onReceive nie aufgerufen wird.

Woran kann dies liegen?
Du musst im Android Manifest nicht nur den Receiver eintragen, sondern auch noch einen Filter setzen, auf welche Intents er horchen soll:

Code:
        <receiver android:name="DeinReceiver" android:enabled="true">
        <intent-filter>
           <action android:name="Dein.Intent.Name" />
        </intent-filter>
        </receiver>
Zumindest kenn ich das so :)
 
Zuletzt bearbeitet:
B

ben56a

Ambitioniertes Mitglied
Mugendon schrieb:
Du musst im Android Manifest nicht nur den Receiver eintragen, sondern auch noch einen Filter setzen, auf welche Intents er horchen soll:

Code:
        <receiver android:name="DeinReceiver" android:enabled="true">
        <intent-filter>
           <action android:name="Dein.Intent.Name" />
        </intent-filter>
        </receiver>
Zumindest kenn ich das so :)

Leider scheint das nicht das Problem gewesen zu sein!!!! Fällt sonst noch jemandem etwas auf?