2015-12-08 4 views
2

Я ищу решение до сих пор, т.е. когда пользователь нажимает на ссылку из своего почтового ящика. Мое приложение должно открыть, если мое приложение уже установлено на его устройстве, не спрашивая у пользователя, чтобы выбрать параметры с помощью Just Once и Всегда Например, нажатие на URI в электронном письме из банка может привести к диалогу с просьбой к пользователю использовать ли браузер или собственное приложение банка, чтобы открыть ссылку. Но в моем случае мое приложение должно открываться напрямую, не запрашивая выберите любой вариант. Я выполнил мое приложение следующим образом: Мой файл манифеста как AndroidManifest.xmlКак открыть приложение напрямую, нажав на ссылку из письма?

<activity android:name=".WelcomeActivity" 
     android:label="@string/app_name"> 
     <intent-filter> 
      <action android:name="android.intent.action.VIEW"></action> 
      <category android:name="android.intent.category.DEFAULT"></category> 
      <category android:name="android.intent.category.BROWSABLE"></category> 
      <data android:host="www.example.com" 
       android:scheme="http" 
       android:pathPrefix="/blog"></data> 
     </intent-filter> 
    </activity> 

Мой пример URL является http://www.example.com/blog

Я хотел бы открыть мое приложение, если пользователь нажимает на ссылку выше. Пожалуйста, помогите мне с примером кода с шагами.

+0

BroadCast Receiver? – Razgriz

+0

Я не думаю, что вы можете это сделать. потому что это зависит от системы и системы, которые откроют ваше приложение, если его значение по умолчанию в противном случае отобразит выбор. – Arslan

+0

@ Арслан вы можете? Нажмите ссылку YouTube на приложение Twitter, и ваше устройство спросит вас, хотите ли вы открыть ссылку с помощью Chrome или Youtube. – Razgriz

ответ

3

Эта функция доступна только на устройствах Android, работающих как минимум с Marshmallow (6+), и упоминается как App Link на всей территории Android documentation.

Чтобы полностью реализовать эту функцию, вам необходимо иметь соответствующий URL-адрес и добавить файл конфигурации по этому адресу: https://www.example.com/.well-known/assetlinks.json. Содержимое файла описано в документации (содержит имя пакета и его подпись).

Затем измените ваше намерение-фильтр, как следовать, чтобы включить auto-verify особенность:

<intent-filter android:autoVerify="true"> 
    <action android:name="android.intent.action.VIEW" /> 
    <category android:name="android.intent.category.DEFAULT" /> 
    <category android:name="android.intent.category.BROWSABLE" /> 
    <data android:scheme="https" android:host="www.example.com" android:pathPrefix="/blog" /> 
</intent-filter> 

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

Смежные вопросы