Duplizieren von this Post mit einem Link zu einem Facebook bug report wo Facebook das Verhalten bestätigt und erklärt, dass sie wahrscheinlich nicht beheben.
Wie für andere Anwendungen dieses Verhalten bekommen, habe ich eine Vermutung.
Wenn Sie Anwendung sind hat eine Website, die Sie eine Dummy-Seite hinzugefügt werden können, dann könnte tun Sie folgendes: für Ihre ShareDialog
verwenden
<html>
<head>
<script type="text/javascript">
window.location.replace('https://play.google.com/store/apps/details?id=com.example.client');
</script>
</head>
<body></body>
</html>
Dann setContentUrl(Uri.parse("https://example.com/android")
wo die URL einer Seite öffnet, die den HTML dient über.
Dadurch werden Nutzer beim Öffnen der Seite automatisch zu Ihrer Google Play Store-Seite weitergeleitet. Die Zurück-Taste sollte immer noch so funktionieren, als ob sie direkt zur Google Play Store-Seite geleitet würde.
Ich habe versucht, nur eine HTTP-Redirect statt tatsächlich die Seite hosten, aber das hat nicht funktioniert.
EDIT: Sie AppLinks Meta-Tags im Seitenkopf enthalten können die Umleitung auf Android-Geräte zu überspringen.
<html>
<head><title>App Link</title>
<meta property="fb:app_id" content="XXXXXXXXXXXXXXX"/>
<meta property="al:ios:url" content="example://test"/>
<meta property="al:ios:app_name" content="Example App"/>
<meta property="al:ios:app_store_id" content="XXXXXXXXX"/>
<meta property="al:android:package" content="com.example.client"/>
<meta property="al:android:app_name" content="Example App"/>
<meta property="al:android:url" content="example://test"/>
<meta property="al:web:should_fallback" content="false"/>
<meta http-equiv="refresh" content="0;url=http://play.google.com/store/apps/details?id=com.example.client"/>
</head>
<body>Redirecting...</body>
</html>
This zeigt Ihnen, wie Sie mit dem Link in Ihrer App umgehen.
<activity
android:name="com.example.client.MainActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
<intent-filter>
<data android:scheme="example"/>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
</intent-filter>
</activity>
Wenn die App dann nicht auf dem Gerät installiert wird, die Sie im Google Play Store (wenn auch durch eine sehr hässliche Popup gesendete die im normalen ShareDialog fließen, wenn ein Play Store Link verwendet nicht passieren wird direkt).
Zusätzlich Facebook will create and host the page for you wenn Sie das wollen. Das Beispiel HTML oben stammt von einer ihrer gehosteten Seiten (beachten Sie die unterschiedliche Implementierung der Weiterleitung).
Ich glaube, dass dieses Verhalten beim Teilen von App-Store-Links beabsichtigt ist, siehe [Bericht] (https://developers.facebook.com/bugs/1543859162514546/). – ifaour
Wie überschreibe ich dieses Verhalten? Ich habe andere Apps gesehen, die das tun. – TimSim
Vielleicht [App Links] (https://developers.facebook.com/docs/applinks) könnte für Sie nützlich sein. – ifaour