Подтвердить что ты не робот

Как мне обрабатывать намерение браузера "поделиться" в андроиде?

Я читаю здесь (http://androidlittle.blogspot.com/2009/08/intent-filter-for-share-link.html), какой фильтр намерения требуется для обработки намерения "общего доступа", которое отправляет веб-браузер Android, Я разместил это внутри блока в AndroidManifest.xml так:

    <activity android:name=".ShareLink">
        <intent-filter>
            <action android:name="android.intent.action.SEND" />
            <category android:name="android.intent.category.DEFAULT" />
            <data android:mimeType="text/plain" />
        </intent-filter>
        <meta-data/>
    </activity>

Я не могу для жизни меня заставить это срабатывать, хотя. Когда я обмениваюсь ссылкой в ​​браузере Android, журнал эмулятора показывает, что он создает намерение выбора, но не дает подробностей о намерении, на которое действует селекционер. Окно выбора не появляется, и намерение обрабатывается приложением SMS.

Я также попытался выполнить намерение вручную:

adb shell am start -D -a android.intent.action.SEND -c android.intent.category.DEFAULT -t text/plain -d http://google.com/

но я получаю ответ:

Starting: Intent { act=android.intent.action.SEND cat=[android.intent.category.DEFAULT] dat=http://google.com/ typ=text/plain }
Error: Activity not started, unable to resolve Intent { act=android.intent.action.SEND cat=[android.intent.category.DEFAULT] dat=http://google.com/ typ=text/plain flg=0x10000000 }

Может ли кто-нибудь сказать мне, что я делаю неправильно? Моя основная (Launcher) активность работает нормально, поэтому я предполагаю, что нет проблемы с установкой на эмулятор.

4b9b3361

Ответ 1

упс!

Оказывается, у меня был установлен пакет, но при переустановке он молчал. Между этими двумя сборками я зафиксировал манифест так, как вы видите выше: у установленной версии не были установлены фильтры намерений, что явно не сработало.

Думаю, я оставлю это здесь, если у кого-то будет такая же потребность? Или я должен просто удалить его?