AccountManager без адаптера синхронизации?

Я пытаюсь использовать AccountManager для хранения информации об учетной записи и внедрения аутентификатора, но я продолжаю получать исключения, такие как ниже, которые вызывают сбой телефона. Сравнивая с примером кода, похоже, это потому, что у меня нет (или особенно хочу) SyncAdapter и связанной службы. Есть ли уловка для использования AccountManager без добавления SyncAdapter?

С уважением

Фил

I/AuthenticatorActivity( 8526): onAuthenticationResult(true) I/AuthenticatorActivity( 8526): finishLogin() W/dalvikvm( 8108): threadid=13: thread exiting with uncaught exception (group=0x 4001b170) E/AndroidRuntime( 8108): Uncaught handler: thread android.server.ServerThread ex iting due to uncaught exception E/AndroidRuntime( 8108): *** EXCEPTION IN SYSTEM PROCESS. System will crash. E/AndroidRuntime( 8108): java.lang.NullPointerException E/AndroidRuntime( 8108): at com.android.settings.ManageAccountsSettings.o nSyncStateUpdated(ManageAccountsSettings.java:187) E/AndroidRuntime( 8108): at com.android.settings.ManageAccountsSettings.o nAccountsUpdated(ManageAccountsSettings.java:244) E/AndroidRuntime( 8108): at android.accounts.AccountManager$10.run(Accoun tManager.java:826) E/AndroidRuntime( 8108): at android.os.Handler.handleCallback(Handler.jav a:587) E/AndroidRuntime( 8108): at android.os.Handler.dispatchMessage(Handler.ja va:92) E/AndroidRuntime( 8108): at android.os.Looper.loop(Looper.java:123) E/AndroidRuntime( 8108): at com.android.server.ServerThread.run(SystemSer ver.java:435) 

Solutions Collecting From Web of "AccountManager без адаптера синхронизации?"

У меня такая же проблема. Я внедрил AccountAuthenticator, который добавляет учетную запись непосредственно в метод addAccount, потому что мне не нужен пользовательский ввод в моем случае.

Я получаю Exception после создания учетной записи и хочу просмотреть экран настроек «Учетные записи и синхронизация». Это не причина создания, потому что он работает с «Dev Tools> AccountsTester».

Edit: Я думаю, что это объяснение, я попробую.

«[…] Авария вызвана недокументированным допущением в коде Android, который обрабатывает учетные записи и синхронизацию. Они очень тесно связаны. Оказывается, плагин настроек« Учетные записи и синхронизация »после получения учетных записей в системе, Использует службу контента для сканирования служб в системе, которые реализуют намерение «android.content.SyncAdapter».

Поскольку наш код не реализует этого, поиск пришел с пустыми руками, и поскольку код предполагал, что этого никогда не будет, BAM, исключение нулевого указателя и авария. […] "от: http://osdir.com/ml/Android-Developers/2009-11/msg05288.html

В итоге мне нужно было добавить SyncAdapter и ContentProvider. Просто самые строгие реализации заглушек, но, похоже, он справился с этой задачей. Я также думаю, что обнаружил, что проблема не возникает в 2.2

Это известная проблема: http://code.google.com/p/android/issues/detail?id=5009

NPE возникает, потому что не найдено соответствующего адаптера синхронизации.

http://www.c99.org/2010/01/23/writing-an-android-sync-provider-part-1/

Несмотря на название, я не вижу SyncAdapter в коде здесь (автономный проект), в отличие от справочной реализации Google.

Я думаю, что ваше исключение вызвано чем-то другим …