Вкратце: все, кажется, работает на стороне клиента, но ничего не получено для целевого друга Facebook.
Это подробные шаги с кодом и скриншотами:
AppInviteContent content = new AppInviteConent.Builder()
.setApplinkUrl("App link url created via the Facebook AppLink creator tool")
.setPreviewImageUrl("http://www.redacted.com/previewImage.png")
.build();
appInviteDialog.show(this, content);
В результате отображается диалоговое окно с предварительным просмотром ссылки на установку приложения и возможность ввода сообщения вверху:
Затем нажмите "Далее", выберите одного или нескольких друзей и нажмите кнопку "Вверх" справа "Отправить":
В результате получается успешная передача:
Я также добавил обратный вызов, чтобы убедиться, что это действительно успешная передача:
appInviteDialog.registerCallback(facebookCallbackManager, new FacebookCallback<AppInviteDialog.Result>() {
@Override
public void onSuccess(AppInviteDialog.Result result) {
Log.d(TAG,"onSuccess result = "+ result.getData().toString());
}
@Override
public void onCancel() {}
@Override
public void onError(FacebookException e) {
Log.d(TAG,"onError message = "+ e.getMessage());
}
});
Отпечатает "onSuccess result = Bundle [{didComplete = 1}]"
Ожидаемый результат: Friend получает уведомление. Фактический результат: Друг ничего не получает.
Дополнительная информация, которая может быть полезна:
- Приложение доступно только для Android.
- Уведомление не получено ни на одной платформе, включая приложение для Android android.
- URL-адрес ссылки на приложение подтвержден, нажав на него в приложении Android android. (Он создает всплывающее окно, связанное с Google Play Store).
- Единый вход включен и пользователь вошел в систему, хотя это не обязательно в соответствии с документацией AppInviteDialog на Facebook.
- Пробовал это с целевым пользователем, который еще не разрешил приложение, а также с пользователем, у которого уже установлено приложение. Те же результаты.
- Версия SDK для Facebook, которую я использую, - 4.0.0
Это расстраивает, потому что все кажется ОК, и нет способа (что я знаю) отлаживать эту проблему.
Я надеюсь, что кто-то может мне помочь или указать мне в правильном направлении.
Спасибо!