Прежде всего, мой вопрос очень похож на этот, этот и это. Документация для Android, которую я пытаюсь достичь, здесь. Я не мог заставить это работать с использованием этих ресурсов, поэтому, пожалуйста, не отмечайте это как дублирующее, так как это не так.
У меня есть веб-сайт и приложение для Android. Пользователь сможет сканировать QR-коды, содержащие ссылки, такие как http://mywebsite.com/map/. Когда пользователь попытается открыть эту ссылку, я хочу, чтобы Android показал ему диалог выбора, где он может выбрать, чтобы открыть эту ссылку, используя мое приложение. Если мое приложение не установлено, оно должно перейти на указанный веб-сайт.
Я знаю, что Chrome позволяет это, открыв диалог выбора, когда пользователь переходит к этому адресу. Например, попробуйте загрузить приложение для стека Exchange и перейти к этому вопросу в Chrome. Он покажет это:
Я добавил следующий код в AndroidManifest.xml после того, как вы указали в вышеупомянутых ответах:
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:host="mywebsite.com"
android:path="/map"
android:scheme="http" />
<data
android:host="mywebsite.com"
android:path="/animals"
android:scheme="http" />
<data
android:host="mywebsite.com"
android:path="/articles"
android:scheme="http" />
</intent-filter>
Кроме того, я попытался добавить android: mimeType = "text/plain" к данным, но это не помогло.
Проблема в том, что когда я перехожу к http://mywebsite.com/map или http://mywebsite.com/map/ Chrome просто открывает веб-страницу, не показывая диалог выбора.
Я хотел бы упомянуть:
- Следуя документации на Android, я добавил этот код внутри одной из структур активности в AndroidManifest.xml. Поскольку я не уверен, что это идеальное место для его добавления, я также попытался добавить его вне структуры приложения и непосредственно внутри структуры приложения, но он не работал.
- Это единственный код, который я реализовал для этого. Если что-то еще нужно, пожалуйста, дайте мне знать. Насколько я понимаю, добавление href на веб-страницу необходимо только при использовании настраиваемых схем
- Я не хочу использовать пользовательскую схему, чтобы достичь этого.
- Я развиваюсь на Nexus 4, под управлением Android 4.4.2 (последний)