6

Zawarłem odpowiednie linki do metatagów aplikacji w kodzie HTML, więc klikając na ten link na Facebooku, aplikacje na Androida i iOS otworzyłyby się z odpowiednią treścią.Facebook na Androida: aplikacja docelowa nie otwiera się po kliknięciu linku

To jest przykład strony: https://trenit.info/L2o

<meta property="al:ios:url" content="https://trenit.info/L2o" /> 
<meta property="al:ios:app_store_id" content="1058908183" /> 
<meta property="al:ios:app_name" content="Trenit!" /> 
<meta property="al:android:url" content="https://trenit.info/L2o" /> 
<meta property="al:android:app_name" content="Trenit!" /> 
<meta property="al:android:package" content="eu.baroncelli.oraritrenitalia" /> 

wydałem ten link na Facebooku, a mam zainstalowane Trenìt! aplikacja na obu urządzeniach z Androidem i iOS.

na iOS:
gdybym korzystać z aplikacji Facebook i kliknij na ten link, Trenìt! Aplikacja na iOS otwiera się prawidłowo z tą treścią.

na Androida:
Gdybym korzystać z aplikacji Facebook i kliknij na ten link, strona HTML otwiera zamiast Trenìt! Aplikacja na Androida.

Czy robię coś nie tak?

Uwaga na Androida manifestować już określony Ta metoda filtr:

 <intent-filter> 
      <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="trenit.info" /> 
     </intent-filter> 
+0

al: ios: url i al: android: url powinny to być linki do aplikacji, a nie https/http linki – WizKid

+0

Zarówno aplikacje na iOS, jak i na Androida odpowiadają na uniwersalne linki https. Masz pomysł, jak otworzyć aplikację na Androida? –

+0

Nie ma wątpliwości, że musisz użyć linku do aplikacji, a nie linku https/http – WizKid

Odpowiedz

1

w Android, aby otworzyć aplikację z linku zewnętrznego/SMS .., trzeba użyć głęboki związek w swojej aplikacji. tak, że aplikacja zostanie pokazane w oknie dialogowym wyboru wyrzutni, gdzie można wybrać aplikację, aby otworzyć
proszę postępować zgodnie z poniższymi deweloperzy odwołują
https://developer.android.com/training/app-indexing/deep-linking.html

tym poniżej XML jest po prostu za zrozumienie. Zmień odpowiednio

<activity android:name="--YourActivityName--" android:label="--your app lable--" > <intent-filter android:label="@string/filter_title"> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <!-- Accepts URIs that begin with "https://trenit.info/L2o” --> <data android:scheme="https" android:host="trenit.info" android:pathPrefix="/L2o" /> </intent-filter> </activity>
+0

Podałem już to w manifeście Android. Właśnie dodałem to do pytania. –

2

Niedawno zaimplementowałem tę samą funkcjonalność w mojej aplikacji i działa ona poprawnie.

Jak na Facebook documentation tagi na stronie internetowej nie są poprawne, dla android powinno być jak ten

<meta property="al:android:url" content="trenit://L2o/*" /> 
<meta property="al:android:app_name" content="Trenit!" /> 
<meta property="al:android:package" content="eu.baroncelli.oraritrenitalia" /> 

iw swoim manifeście powinny być jak ten

 <intent-filter> 
      <action android:name="android.intent.action.VIEW" /> 
      <category android:name="android.intent.category.DEFAULT" /> 
      <category android:name="android.intent.category.BROWSABLE" /> 
      <data android:scheme="trenit" /> 
     </intent-filter> 
+0

Witaj, Adeel, dodałem: '' do filtra intencji Androida i '' na stronę HTML. To faktycznie działa (tzn. Pojawia się okno dialogowe wyboru aplikacji Andoid) podczas udostępniania go za pośrednictwem czatu Facebooka i klikania go w aplikacji Android Facebook Messenger. Ale jeśli udostępnię go na osi czasu na profilu Facebook, a kliknę na nim z poziomu aplikacji Android na Androida, strona HTML zostanie otwarta bez wyświetlania okna dialogowego wyboru aplikacji na Androida. Czy jesteś w stanie sprawić, by działał on w aplikacji Facebook na Androida? –

+0

@DanieleB Tak, otworzyłem moją aplikację za pomocą aplikacji Facebook, musisz dodać metatagi na każdej stronie, którą chcesz otworzyć z Facebooka. –

+0

Niestety nie działa z aplikacją Facebooka, więc nadal próbuję znaleźć rozwiązanie –

0

utworzyć oddzielne filtr zamiaru w przypadku aktywności poniżej:

 <intent-filter> 
      <action android:name="android.intent.action.VIEW"></action> 
      <category android:name="android.intent.category.DEFAULT"></category> 
      <data android:scheme="schemIncludedInMetaTag"></data> 
     </intent-filter>