prima di tutto l'applicazione che riceve l'intent deve dichiarare di riceverlo, più specificamente deve filtrare (catturare) i messaggi (Intent) di broadcast che corrsipondono ad una certa action(specificata nell intent). Sarà compito di una classe che estende broadcastreceiver (UnBroadcastReceiver) processare l'intent filtrato.
<receiver android:name=".UnBroadcastReceiver" >
<intent-filter>
<action android:name="ch.applicazione.AZIONE_ESPLODI" />
</intent-filter>
</receiver>Ma tutto ciò riguarda l'applicazione ricevente...
Quello che devi fare tu, per mandare questo intent è
Intent intent=new Intent("ch.applicazione.AZIONE_ESPLODI");
intent.putExtra.....//eventualmente, se ce n'è bisogno aggiungi all'intent dei valori...come avviene normalmente
sendBroadcast(intent) // se non sei in una activity hai bisogno (chiaramente) del context per inviare un broadcastContext | Android DevelopersPer rispondere alla seconda domanda:
devi conoscere che azioni filtra il programma a cui vuoi mandare l'intent.
se volessi esporre la mia applicazione a terzi, registrerei la mia applicazione su
OpenIntentsSaluti.
Qlimax