Aktivität ist nicht zwingend.
Ein Beispiel
Sie eine BroadcastReceiver
haben kann, die den Toast Nachricht zum Beispiel zeigt. Auf diese Weise können Sie Ihre BroadcastReceiver
registrieren, um das gewünschte Ereignis anzuhören (Like Incoming SMS, Boot Completed usw.) und den Toast anzeigen, wenn das Ereignis eintritt ...
Im folgenden Beispiel zeigen Sie einen Toast nach Empfangen einer SMS (unabhängig davon, ob der Nutzer die App geöffnet hat oder nicht).
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest>
...
<uses-permission android:name="android.permission.READ_SMS"/>
<uses-permission android:name="android.permission.RECEIVE_SMS"/>
<application>
....
<receiver android:name=".MyCustomBroadcastReceiver">
<intent-filter>
<action android:name="android.provider.Telephony.SMS_RECEIVED" />
</intent-filter>
</receiver>
</application>
</manifest>
MyCustomBroadcastReceiver.java
public class MyCustomBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if(intent != null) {
String action = intent.getAction();
if(action != null) {
if(action.equals("android.provider.Telephony.SMS_RECEIVED")) {
Toast.makeText(context, "SMS Received", Toast.LENGTH_LONG).show();
}
}
}
}
}
Derzeit erstelle ich sie in 'onCreate()' der Haupttätigkeit und bekommen Zusammenhang mit 'getApplicationContext()' . –