2016-05-26 6 views
0

Я пытаюсь синхронизировать данные с firebase с помощью AbstractThreadedSyncAdapter. Для этого я написал несколько firebase onPerformSync метод.Как синхронизировать данные в AbstractThreadedSyncAdapter с Firebase?

Проблема в том, что как только этот метод называется сбоем приложения.

Ошибка на бревнах: FirebaseApp с именем [DEFAULT] не существует

Может кто-нибудь помочь?

+0

Почему вам необходимо синхронизировать данные вручную? firebase имеет синхронизацию базы данных в реальном времени, – MrDroid

+0

Привет, MrDroid, я пытаюсь синхронизировать все контакты телефона пользователя с firebase, чтобы узнать, какие из них зарегистрированы в приложении. Я подумал о написании адаптера синхронизации для этого. Есть ли лучший способ? –

+2

Ваши данные хранятся в реальной базе данных в firebase? так что вам не нужно синхронизировать свои данные, будет синхронизироваться автоматически, просто добавьте addValueEventListener в ваше приложение. – MrDroid

ответ

-1

Разработчикам нет необходимости синхронизировать данные с Firebase. Сама платформа имеет синхронизацию БД в реальном времени. Это было сказано на домашней странице Firebase, вам не нужно обрабатывать какие-либо файлы синхронизации.

0

Я закончил тем, что делал это в SyncAdapter конструкторами

if(FirebaseApp.getApps(context).isEmpty()){ 
     FirebaseApp.initializeApp(context, FirebaseOptions.fromResource(context)); 
    } 

Причина это происходит потому, что SyncAdapter сконфигурирован для работы в отдельном процессе (: синхронизация). FirebaseApp автоматически инициализируется только в основном процессе. Итак, мы должны вручную инициализировать его.

Примечание: не знаю, имеет ли это последствия.