BroadcastReceiver z intent-filter dla nich?
To właśnie próbuję osiągnąć:
Gdy użytkownik próbuje udostępnić jakiś tekst z dowolnej aplikacji (np. Udostępnianie tweeta lub linku), moja aplikacja pojawi się na liście udostępniania.Jeśli wybierze moją aplikację, zostanie uruchomiony prosty kod (np. Wyświetlenie Toast), a to wszystko. Nie jest potrzebny interfejs ani interfejs użytkownika.Oto jak to zrobiłem:
AndroidManifest.xml
<receiver
android:name=".MyBroadcastReceiver" >
<intent-filter
android:label="select my app">
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
</receiver>
MyBroadcastReceiver.java
public void onReceive(Context arg0, Intent arg1) {
// TODO Auto-generated method stub
//Some simple code
Toast.makeText(arg0, "My Receiver is cool", Toast.LENGTH_LONG).show();
}
To nie zadziałało, moja aplikacja nie wyświetla się na liście udostępniania.
Dlaczego pracujęBroadcatReceivers
a nie zActivities
? Ponieważ nie chcę żadnego interfejsu użytkownika i myślę, że właśnie dlatego mamy odbiorców (popraw mój plz)
Czy robię to dobrze?