Android facebook sdk ошибка входа 1118578

Все работало нормально, пока я не захотел проверить, что произойдет, если пользователь нажмет кнопку «Войти с Facebook» без подключения к Интернету.

Появился тост, сказавший:

Ошибка входа. Свяжитесь с разработчиком этого приложения и попросите сообщить о проблеме №1118578 на Facebook.

В logcat у меня есть:

D / Facebook-authorize (2824): Вход отменяется пользователем.

Я попытался избавиться от этого тоста и отобразить собственное сообщение об ошибке в onCancel() но я не могу найти способ отключить этот тост. Когда я снова включил Wi-Fi, один вход не работал!

Что может быть причиной этого?

  private void fbLogin() { facebook.authorize(this, new String[] { "email" }, new DialogListener() { @Override public void onComplete(Bundle values) { app.save("fb_token", facebook.getAccessToken()); app.save("fb_expire", facebook.getAccessExpires()); mAsyncRunner.request("me", new meRequestListener()); } @Override public void onFacebookError(FacebookError error) {} @Override public void onError(DialogError e) {} @Override public void onCancel() {} }); } @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); facebook.authorizeCallback(requestCode, resultCode, data); } 

РЕДАКТИРОВАТЬ:

Чтобы ответить на мой собственный вопрос, удалите android:launchMode="singleInstance" Из манифеста в <activity> разрешен вопрос # 1118578.

Тем не менее, мне нужен android:launchMode="singleInstance" для входа в twitter OAuth, так как браузер передает данные обратно в действие с помощью нового Intent. Если я не предоставил android:launchMode="singleInstance" в манифесте, запускается новое действие и не получает верификатор OAuth.

Есть ли способ обойти это, чтобы использовать Facebook и Twitter в одном и том же действии? Единственное решение, о котором я думаю, это использовать фиктивную активность для Twitter4j с singleInstance .

Моим способом преодолеть это было изменение обратного вызова в twitter, от «twitter: // callback» до «http: // localhost / callback» и удаление андроида: launchMode = «singleInstance» и твитер-фильтр-твиттер из манифест.

Я все еще могу получить ответ в WebView (а не на onResume (), как и раньше):

 yourwebview.setWebViewClient(new WebViewClient() { @Override public void onPageFinished(WebView view, String url) { // your_callback == http://localhost/callback if(url == null || !url.startsWith(your_callback)) return; Uri uri = Uri.parse(url); String ov = uri.getQueryParameter("oauth_verifier"); AccessToken at = null; ... 
Intereting Posts
Клиентское приложение RTP на Android-устройстве Android DialogFragment приводит к сбою приложения при изменении ориентации Значок Android не меняется Ошибка: не удалось захватить моментальный снимок выходных файлов для задачи «transformClassesWithDexForDebug» во время обновления Android не может создать обработчик внутри потока, который не назвал looper.prepare () Ошибка выполнения PowerMock + Mockito: ProxyFrameworkImpl не может находиться в пути к классам Как установить отмену false для активности при ее открытии в качестве диалога? Использование DiskLruCache в android 4.0 не предусматривает метод openCache Приложение несовместимо со всеми вашими устройствами Не удалось разрешить Landroid / support / v7 / app / AppCompatDelegateImplV7 Хорошая разработка программного обеспечения и безопасность Консоль разработчика Google Play: бесплатное бета-тестирование платных приложений? Фон панели инструментов становится белым цветом при установке на прозрачный Как установить высоту относительной компоновки динамически в android Ошибка в магазине Google Play DF-BPA-10