2015-03-23 3 views
1

У меня встроенный вход в Facebook в моем приложении для Android. Сначала он попросил разрешения (приложение хотело бы получить доступ к вашему общедоступному профилю и адресу электронной почты ...) и зарегистрировало меня. Я хочу проверить это снова, но независимо от того, что я делаю, когда я нажимаю кнопку «Войти с Facebook» в своем приложение, оно меня вводит.Сделать приложение для Android забыть Вход в Facebook

Я попытался удалить мое приложение, очистить кэш и данные Facebook. Я знаю, что это стандартное поведение, но я хочу, чтобы Facebook снова попросил разрешения, когда я вхожу в Facebook с помощью Facebook, чтобы смогу имитировать и убедиться, что он будет работать, когда я опубликую приложение в Google Play. Есть идеи?

ответ

3

Эти настройки сохраняются для каждого пользователя. Вы не можете отменить разрешения от кого-либо, что означает, что пользователям необходимо самостоятельно отменить авторизацию вашего приложения.

На Facebook или в приложении Facebook войдите в Настройки -> Настройки учетной записи -> Приложения (значок красочной коробки) -> Записан в Facebook. Найдите свое приложение, нажмите на него и нажмите «Удалить приложение».

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

+0

Perfect !! Работает как шарм! –

0

Если вы используете Facebook SDK, вы можете просто выйти из системы, вызвав методы LoginManager.getInstance().logout(), в методе onStop() вашего приложения. Они закрывают текущий сеанс, поэтому пользователь должен снова войти в ваше приложение.

EDIT

Если вы хотите еще раз спросить разрешения, вы должны спросить снова для него =) После documentation: Просто получить текущие разрешения Session.getActiveSession().getPermissions(); И просить их снова, создавая Session.NewPermissionsRequest

Session.NewPermissionsRequest newPermissionsRequest = new Session.NewPermissionsRequest(this, CURRENT_PERMISSION_ARRAY); 
session.requestNewReadPermissions(newPermissionsRequest); 
+1

Это не заставит приложение запрашивать разрешения снова. –

+0

Я отредактировал ответ. – VadymVL

+0

Я попробую это немного позже, но выглядит интересным. Во всяком случае, моя цель - полностью заставить приложение забыть, что я когда-либо входил в систему с facebook. Я полагаю, что приложение facebook (которое я сделал на developer.facebook.com) не хранит все телефоны, которые использовали facebook хотя бы один раз, и он хранится где-то на телефоне, но через несколько часов после этого я смущаюсь. –

1

Вы можете отменить доступ к определенному приложению, перейдя на facebook.com -> Настройки -> Приложение, а затем отредактируйте whatev вы хотите.

Чтобы сделать это Программным вы можете проверить эту ссылку
Revoke FB Permission

+0

И yup для вышеуказанного метода вам нужно сначала войти в FB с тем же идентификатором FB, на котором были предоставлены разрешения .. !! –

+0

Я попробую его чуть позже. Единственное, что я нашел здесь, это «Client OAuth Login», в котором говорится: Включает входной поток клиента OAuth. Как вы думаете, это то, что я ищу? –