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
<code><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> </code>
MyBroadcastReceiver.java
<code>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(); } </code>
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?