Как зафиксировать намерение (с действием android.intent.action.VIEW) программно

Я получаю следующий журнал при предварительном просмотре вложения Gmail. Я хочу получить (обнюхать) это намерение (с действием android.intent.action.VIEW) программно. Я создал фильтр намерений с действием android.intent.action.VIEW и зарегистрировал этот фильтр в широковещательном приемнике. Тем не менее, я не могу получить широковещательное намерение.

Как я могу добиться этого программно? Помощь высоко ценится.

LogCat:
12-07 18:21:50.528: I/ActivityManager(96): Starting: Intent { dat=content://gmail-ls/messages/hawkagent%40interfaceinfosoft.com/35/attachments/0.1/BEST/false cmp=com.google.android.gm/.ViewAttachmentActivity } from pid 8309

12-07 18:21:52.598: I/ActivityManager(96): Starting: Intent { act=android.intent.action.VIEW dat=content://gmail-ls/messages/hawkagent%40interfaceinfosoft.com/35/attachments/0.1/BEST/false typ=text/plain flg=0x80001 cmp=android/com.android.internal.app.ResolverActivity } from pid 8309

person Balaji Khadake    schedule 07.12.2012    source источник


Ответы (1)


Вы зарегистрировали свой Receiver в AndroidManifest.xml:

    <receiver android:name="MyReceiver" >
        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
        </intent-filter>
    </receiver>
person Murmel    schedule 07.12.2012
comment
Я создал класс BroadcatReceiver внутри своего класса Activity и зарегистрировал его программно. Так что не нужно регистрировать его в AndroidManifest.xml - person Balaji Khadake; 07.12.2012
comment
Действие VIEW отправляется с помощью startActivity или StartActivityForResult, а не с помощью sendBroadcast. это обрабатывается по-другому: см. stackoverflow.com/a/9668591 - person kaay; 11.04.2013