Ответ 1
Управление учетными записями в формате SDK для входа в систему Facebook осуществляется с серверной стороны facebook. И поскольку у нас нет контроля над нашей стороной для проверки правильности входа в систему.
В SDK для Facebook предусмотрен вид входа LoginButton, который представляет собой реализацию пользовательского представления кнопки. Вы можете использовать эту кнопку в своем приложении для внедрения Facebook Login. Класс LoginButton поддерживает состояние сеанса, которое позволяет отображать правильный текст в кнопке на основе аутентифицированного пользователя. Добавление LoginButton в макет вашей активности - это быстрый способ реализации Facebook Login.
Наряду с кнопкой входа вы можете управлять другими компонентами пользовательского интерфейса (UI) на основе того, аутентифицирован ли пользователь или нет. SDK для Facebook включает в себя два класса: UiLifecycleHelper
и Session.StatusCallback
, для обработки большей части сложности при управлении изменениями состояния сеанса. Активность или фрагмент, где вы показываете аутентифицированную функциональность, может создать экземпляр класса UiLifecycleHelper
и передать в прослушиватель Session.StatusCallback
, который уведомляется о любых изменениях состояния сеанса. Ваша активность или фрагмент должны вызывать общедоступные методы UiLifecycleHelper
, которые отражают методы жизненного цикла активности или фрагмента. Эти методы используются при создании, открытии, сохранении и восстановлении активной сессии Facebook. Реализация слушателя Session.StatusCallback
может переопределить метод call()
для ответа на изменения состояния сеанса и соответственно обновить интерфейс.
Итак, LoginButton
управляет функцией входа в систему, и вы можете добавить собственный код, инициированный с помощью метода call()
для управления другими компонентами пользовательского интерфейса.