Facebook en Android: la aplicación de destino no se abre al hacer clic en el enlace

Incluí los metatags adecuados de enlaces de aplicación en el HTML, de modo que al hacer clic en ese enlace en Facebook, las aplicaciones de Android y iOS se abrirían con el contenido correcto.

Este es un ejemplo de página: 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" /> 

He publicado ese enlace en Facebook, y he instalado el Trenìt! App en mis dispositivos Android e iOS.

En iOS :
Si utilizo la aplicación de Facebook y haga clic en ese enlace, el Trenìt! La aplicación de iOS se abre correctamente con ese contenido.

En Android :
Si utilizo la aplicación de Facebook y hago clic en ese enlace, la página HTML se abre en vez de la página de Trenìt! Aplicación Android.

¿Estoy haciendo algo mal?

Tenga en cuenta que en el manifiesto de Android ya he especificado este filtro de intenciones:

  <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> 

Recientemente he implementado la misma funcionalidad en mi aplicación y funciona correctamente.

Según la documentación de Facebook , sus etiquetas en la página del sitio web no son correctas, para android debería ser así

 <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" /> 

Y en tu manifiesto debería ser así

  <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> 

En Android para abrir tu aplicación desde el enlace externo / sms .., tienes que usar el enlace profundo en tu aplicación. Para que su aplicación se muestre en el cuadro de diálogo de selección de lanzador, donde puede elegir su aplicación para abrir
Siga el siguiente enlace de desarrolladores
https://developer.android.com/training/app-indexing/deep-linking.html

Esto a continuación xml es sólo para la comprensión. Por favor cambie en consecuencia


<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>

Crear filtro de intenciones por separado para la actividad como a continuación

  <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> 
FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.