2

Я развиваю интеграцию Facebook в Android-приложении с помощью Android Facebook SDK.Постоянный Facebook SDK http.protocol.ApiException при входе в систему после поворота «Платформа выключена» в браузере

Я пользуюсь телефоном Session.openActiveSession(this, true, facebookSessionChangeCb);, как описано в документации для Android от Facebook.

Большинство работ блестяще. Но есть одна проблема, которая повторяется следующим образом:

1) Я устанавливаю собственное приложение Facebook на свое Android-устройство и регистрируюсь в приложении Native.

2) Я также перехожу в интернет-браузере к настройкам и выключая платформу, как показано на скриншоте ниже.

3) Затем я попытаюсь войти в мое приложение для Android с интеграцией Facebook с помощью Android Facebook SDK.

я затем получить трассировку стека

02-13 15:27:54.687: W/fb4a(:<default>):BlueServiceQueue(16890): Exception during service 
02-13 15:27:54.687: W/fb4a(:<default>):BlueServiceQueue(16890):   com.facebook.http.protocol.ApiException: Service temporarily unavailable 
02-13 15:27:54.687: W/fb4a(:<default>):BlueServiceQueue(16890): at  com.facebook.http.protocol.ApiResponseChecker.b(ApiResponseChecker.java:83) 
02-13 15:27:54.687: W/fb4a(:<default>):BlueServiceQueue(16890): at com.facebook.http.protocol.ApiResponseChecker.a(ApiResponseChecker.java:162) 
02-13 15:27:54.687: W/fb4a(:<default>):BlueServiceQueue(16890): at com.facebook.http.protocol.ApiResponse.g(ApiResponse.java:158) 
02-13 15:27:54.687: W/fb4a(:<default>):BlueServiceQueue(16890): at com.facebook.platform.auth.server.AuthorizeAppMethod.a(AuthorizeAppMethod.java:274) 
... 
02-12 18:36:42.928: W/fb4a(:<default>):GDPDialog(5750): Failed to send 
02-12 18:36:42.928: W/fb4a(:<default>):GDPDialog(5750): com.facebook.fbservice.service.ServiceException: API_ERROR: API_ERROR 
02-12 18:36:42.928: W/fb4a(:<default>):GDPDialog(5750): at com.facebook.fbservice.ops.BlueServiceOperation.c(BlueServiceOperation.java:640) 

Это исключение претендует быть временно недоступен исключение типа, но это явно не так он остается таким образом на неопределенный срок.

Это проблема: я не хочу относиться к ней так, как если бы она была 503, потому что она всегда терпит неудачу, и я в конечном итоге передам сообщение пользователю с ужасным сообщением об ошибке, или хуже a «повторите попытку позже», как предполагает исключение, которое просто вводит пользователя в заблуждение.

вопрос есть: я сделал что-то не так? Я как-то тускнею? Если нет, есть ли обходной путь? У кого-нибудь была эта проблема раньше? Я не мог найти этот стек на SO. Если это нормально, как люди сообщают пользователей здесь? И что важно, можем ли мы отличить этот случай от реальных временных сбоев в обслуживании, поэтому я могу сказать своим пользователям, что не так?

Большое спасибо!


(Это скриншоте ниже, так что вы знаете, что я имею в виду)

That screenshot

ответ

2

Один месяц сейчас, кажется, что это действительно неизбежна!

Возможность превратить «платформу» в браузере является частью конфиденциальности Facebook. Это часто цитируется как способ укрыться от приглашений на приложения и т. Д.

Мое лучшее предположение состоит в том, что имеет смысл привести код состояния, который не указывает на то, что пользователь сделал в качестве меры безопасности скрыть пользователя от приложений.

Хорошее решение - добавить раздел о настройках платформы Facebook в свою документацию, если он у вас есть.