Могу ли я использовать адаптер синхронизации в Android с учетной записью Facebook?

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

Поскольку я аутентифицирую пользователя с помощью SDK, а не использую менеджер учетных записей, могу ли я по-прежнему использовать адаптер синхронизации с учетной записью, используемой пользователем для входа?


person Nicola Blaine    schedule 30.06.2013    source источник


Ответы (1)


Да, но для адаптера синхронизации требуется учетная запись, поэтому вам придется следовать инструкциям в документации по адаптеру синхронизации, чтобы создать фиктивную учетную запись в диспетчере учетных записей только для вашего адаптера синхронизации. http://developer.android.com/training/sync-adapters/creating-sync-adapter.html#CreateAccountTypeAccount

Ваш адаптер синхронизации будет игнорировать этот фиктивный аргумент учетной записи для выполнения синхронизации. Учетная запись, используемая пользователем для входа в систему, на самом деле не имеет отношения к вашему адаптеру синхронизации. Что вас интересует, так это учетная запись пользователя на Facebook. Вам нужно хранить некоторую информацию где-то, например, в SharedPreferences, которую ваш адаптер синхронизации может использовать, чтобы узнать, какой пользователь и любые другие данные ему нужны, когда он авторизуется с помощью facebook sdk.

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

person Eric Woodruff    schedule 11.02.2014
comment
Я думал о том, чтобы проверить, вошел ли пользователь уже в Facebook, а не могу ли я просто получить сохраненные учетные данные из других приложений с помощью syncadapter? - person CQM; 11.02.2014
comment
Если facebook sdk предлагает такой единый вход, вы можете это сделать. Лично я бы отключил пользователю возможность изменить учетную запись facebook, используемую приложением, в настройках. - person Eric Woodruff; 11.02.2014
comment
это больше касается проверки доступных учетных данных, чтобы определить что-то уникальное в текущем пользователе и предложить их использовать, вместо того, чтобы сталкивать пользователя с трудностями при входе/выходе, которые они могут сделать в настройках, если захотят. Таким образом, приложение будет проверять, есть ли у пользователя учетная запись facebook в его системе Android, которая генерируется при наличии установленного приложения facebook. Знаете ли вы, помогает ли SyncAdapter с тем, что я себе представляю? - person CQM; 11.02.2014
comment
Все советы, которые я могу найти, предполагают, что учетная запись facebook в диспетчере учетных записей не поможет. stackoverflow.com/questions/12972760/ - person Eric Woodruff; 11.02.2014