Странный вопрос, но, надеюсь, у кого-то есть ответ.
Я занимаюсь разработкой мобильного приложения, которое будет подключаться к Facebook. Все работало нормально и было около недели. Я мог бы авторизовать и удалить авторизацию и публиковать в фиде пользователя.
В субботу или воскресенье я изменил свой запрос на добавление offline_access. Примерно в это же время (к сожалению, я не могу быть точно уверен, когда именно) я начал получать сообщения об ошибках, сообщающие, что токен доступа недействителен («Ошибка проверки токена доступа: сеанс был недействителен, поскольку пользователь изменил пароль».).
Я знаю, что это неверно, потому что я не изменил свой пароль, и я только что получил токен доступа, и все ответы были в порядке. Фактически, я публикую в фиде сразу же после авторизации («Привет, я использую TheApp»), и эта публикация завершается с ошибкой, указанной выше.
Вот где это усиливается: я зашел в мобильное приложение Facebook, чтобы проверить доступ и подключение. Внезапно официальное приложение FB начинает вызывать у меня те же проблемы. Это начинает выскакивать диалоги входа в систему. Я ввожу свой пароль, на нем отображается всплывающая подсказка о том, что вход выполнен успешно, а затем через несколько секунд снова запрашивается вход. После одной или двух попыток он отображает другой тост с сообщением о недействительном токене сверху.
Я очищаю свое приложение, удаляю его, выхожу из системы и очищаю все данные FB (используя «Управление приложениями» в настройках устройства) и принудительно останавливаю приложение. Я не могу удалить FB, так что это все, что я могу сделать. Я также захожу на сайт FB и меняю свой пароль FB. Я возвращаюсь к приложению FB, снова авторизируюсь, и до того, как загрузка фида даже заканчивает загрузку, он снова запрашивает мой пароль, и мы возвращаемся в тот старый цикл. Я пробую свое приложение, и оно в том же ведре (нет ничего удивительного).
Еще две точки данных:
- Иногда такое поведение может происходить с помощью веб-приложения Graph API Exlorer. Я могу сделать это последовательно с токеном для самого Graph API Explorer, и я могу получить его непоследовательно с токеном доступа из моего приложения.
- Я запустил эмулятор (один без приложения FB) и запустил там свое приложение. Входя в систему как я, я могу получить токен доступа, и все работает. Мое приложение отправляет на свой канал без жалоб.
На данный момент FB (и, очевидно, любое приложение, связывающее FB) подключено к моему реальному устройству. Это либо устройство, либо комбинация устройства плюс моя учетная запись (у меня нет другой учетной записи FB).
Может ли кто-нибудь пролить свет на то, что мне нужно сделать, чтобы отладить это дальше или прояснить это?