Facebook SDK не публикует ссылку в первый раз, но работает со второго раза, когда приложение Facebook отсутствует - PullRequest
0 голосов
/ 28 ноября 2018

Facebook SDK для Android.

Ситуация: Делать Facebook Поделиться, когда приложение отсутствует в мобильном телефоне.

**

Выполненные действия

  1. Открывается веб-представление, пользователь успешно может войти в систему.
  2. После входа веб-представление Facebook (диалоговое окно публикации) открывается на секунду, но возвращает код ошибки-11

**

Ответ об ошибке: {Исключение диалога Facebook: код ошибки: -11, сообщение: ноль, URL: ноль}

Требование к функции: пользователь может поделиться ссылкой, независимо от того, присутствует приложение Facebook или нет.

// Мои письменные коды

// Инициализация SDK Facebook.

    callbackManager = CallbackManager.Factory.create();
    shareDialog = new ShareDialog(activity);
    shareDialog.registerCallback(callbackManager, getShareCallback());

// Совместное использование функции.

    ShareLinkContent linkContent = new ShareLinkContent.Builder()
            .setContentUrl(uri)
            .setQuote("XXXXXX")
            .build();

    Profile profile = Profile.getCurrentProfile();

    if (ShareDialog.canShow(ShareLinkContent.class)) {
        shareDialog.show(linkContent);
    }

// Совместное использование функции обратного вызова

@NonNull
private FacebookCallback<Sharer.Result> getShareCallback() {
    return new FacebookCallback<Sharer.Result>() {
        @Override
        public void onSuccess(Sharer.Result result) {
            shareCallback.onSuccess("Share Success");
        }

        @Override
        public void onCancel() {
            shareCallback.onError("Share Cancel");
        }

        @Override
        public void onError(FacebookException error) {
            shareCallback.onError("onError: " + error.toString());
        }
    };
}

// Операция для результата Обратный вызов

if (callbackManager == null) return;
callbackManager.onActivityResult(requestCode, resultCode, data);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...