Всегда запускать мое приложение вместо того, чтобы видеть выбор действий? - PullRequest
0 голосов
/ 01 июля 2011

У меня есть одно действие с теми же фильтрами намерений, что и в другом приложении. Когда я запускаю свое приложение, мне нужно выбрать, какое действие я хочу выполнить, но я не хочу выбирать это.

Я всегда хочу запускать свое приложение с высоким приоритетом и не отображать средство выбора действий. Любая идея сделать это? спасибо

1 Ответ

2 голосов
/ 02 июля 2011

Я всегда хочу запускать свое приложение с высоким приоритетом и не отображать средство выбора действий.Любая идея сделать это?

Пользователь может сделать это, установив флажок «сделать это по умолчанию» в нижней части диалогового окна выбора.

Вы, какразработчик, не может в одностороннем порядке сделать себя по умолчанию.

Моя деятельность читает теги NFC, но как Android уже установил другое приложение NFC с тем же фильтром намерений, я не знаю никакого решения.

Ваш фильтр говорит, что вы хотите обработать все теги.Если это так, то пользователь должен будет выбрать, будет ли ваше приложение по умолчанию.

Однако вы можете сделать более жесткий фильтр и иметь приоритет.Например:

<activity android:name="URLHandler" android:label="@string/app_name">
    <intent-filter android:label="@string/app_name">
        <action android:name="android.nfc.action.NDEF_DISCOVERED" />
        <data android:scheme="http"
                    android:host="commonsware.com"
                    android:path="/nfctest"
        />
        <category android:name="android.intent.category.DEFAULT" />
    </intent-filter>
</activity>

Здесь моя деятельность получит контроль, если (и только если) у тега будет запись NDEF, в результате которой URL-адрес будет http://commonsware.com/nfctest.Поскольку мой фильтр имеет более узкую область применения, чем другие конкурирующие приложения, мой получит контроль без выбора.

...