Я создаю приложение для браузера на Android и хочу, чтобы пользователь мог открывать веб-поиски по всей системе в моем браузере.
Например, веб-поиск из выбранных:
И, если возможно, выполняет поиск из виджета поиска на главном экране.
В настоящее время оба приложения открыты в приложении Google, несмотря на то, что я зарегистрировал фильтр намерений для WEB_SEARCH.
Вот мое определение активности в AndroidManifest.xml
<activity
android:name=".Browser"
android:alwaysRetainTaskState="true"
android:configChanges="keyboardHidden|orientation|screenSize|smallestScreenSize|screenLayout"
android:hardwareAccelerated="true"
android:label="@string/app_name"
android:launchMode="singleInstance"
android:resizeableActivity="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
<category android:name="android.intent.category.APP_BROWSER" />
</intent-filter>
<intent-filter>
<!-- Allows activity to be opened for links around the OS -->
<action android:name="android.intent.action.VIEW" />
<data android:scheme="http" />
<data android:scheme="https" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
</intent-filter>
<intent-filter>
<!-- *should* catches system google searches? wasn't able to trigger it -->
<action android:name="android.intent.action.WEB_SEARCH" />
<data android:scheme="http" />
<data android:scheme="https" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
</intent-filter>
</activity>
Я ожидал, что в следующий раз, когда я нажму на веб-поиск для Android, он спросит меня, какое приложение я хотел бы использовать, но пока ничего, он автоматически перейдет в приложение Google.