AccountManager без SyncAdapter?

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

С уважением

Phil

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)
8
задан Phil 21 June 2010 в 13:56
поделиться

2 ответа

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

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

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

0
ответ дан 5 December 2019 в 17:34
поделиться

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

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

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

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

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

7
ответ дан 5 December 2019 в 17:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: