Я рад, что Facebook наконец позволил пользователям пригласить своих друзей с SDK версии 4, но я не знаю, как это сделать. Документация понятна хотя бы на время:
if (appInviteDialog.canShow()) {
AppInviteContent content = new AppInviteContent.Builder()
.setApplinkUrl("https://play.google.com/store/apps/details?id=com.myapp.android")
.setPreviewImageUrl("http://www.myapp.com/Images/stub.jpg")
.build();
appInviteDialog.show(MainActivity.this, content);
}
Пока это не может быть проще. Но как только я выбираю пользователя для приглашения, я получаю ошибку URL-адреса Missing App Link:

Я понимаю, что мне нужно создать URL ссылки на приложение, но я действительно не знаю, как это сделать. Согласно документации я должен поместить метатеги между разделами <head></head> на веб-сайте, связанном с моим приложением Facebook, в консоли разработчика Настройки /URL сайта раздел.
Итак, я разместил их на своем веб-сайте:
<meta property="al:android:url" content="https://fb.me/1047359658624810" />
<meta property="al:android:app_name" content="MyApp" />
<meta property="al:android:package" content="com.myapp.android" />
<meta property="al:web:url" content="http://myapp.com" />
https://fb.me/1047359658624810 создается с помощью генератора ссылок приложения.
Эта часть полностью неясна. В примере url sharesample://story/1234 и sharesample определяется как схема в целевом фильтре, но тогда что такое story/1234?
В генераторе ссылок приложений
-
Я добавил фильтр намерений в
AndroidManifestсо схемой<data android:scheme="com.myapp.android" /> -
Я установил глубокую привязку в классе launcher как
Uri targetUrl = AppLinks.getTargetUrlFromInboundIntent(this, getIntent()); if (targetUrl != null) { Log.i("ACTIVITY", "App Link Target URL: " + targetUrl.toString()); } -
Я установил имя ссылки на приложение как URL-адрес ссылки на приложение для MyApp
- Я установил URL как URL-адрес Google Play
- Я установил имя приложения как MyApp
- Я установил имя пакета как com.myapp.android
- Затем я установил созданный URL ссылки на ссылку на веб-сайт как
<meta property="al:android:url" content="https://fb.me/1047359658624810" />
Теперь мне нужно только отправлять приглашения на приложение, а когда пользователи нажимают на них, они должны быть отправлены на URL-адрес Google Play приложения. Это похоже на то, что я один шаг от завершения этой вещи, но я не могу понять, чего мне не хватает.

