Как передать DatabaseReference в класс в Android при использовании намерения? - PullRequest
0 голосов
/ 12 ноября 2018

Я использую намерение для вызова класса обслуживания, который расширяет некоторый другой класс (кроме намерения).

Я хочу передать DatabaseReference при вызове класса обслуживания.

Что может бытьвозможный способ сделать это?Я думал об использовании SharedPrefferences, но я не могу найти способ передачи контекста также.

Возможно создать ссылку на базу данных также в новом классе, но я использую аутентификацию вMainActivity, поэтому сделать это тоже немного сложно.

Мой класс обслуживания:

public class NLService extends NotificationListenerService {

     private DatabaseReference mDatabaseReference;

}

Ответы [ 2 ]

0 голосов
/ 12 ноября 2018

Предполагая, что DatabaseReference является частью Firebase SDK,

в вашем классе NLService

public class NLService extends NotificationListenerService {
    private DatabaseReference mDatabaseReference myRef1 = FirebaseDatabase.getInstance().getReference();     
}

У вас это работает?

0 голосов
/ 12 ноября 2018

Вам не нужно передавать DatabaseReference, вы также можете использовать экземпляр в своей MainActivity.

class MainActivity{
   DatabaseReference myDBRef = FirebaseDatabase.getInstance().getReference();

   if(FirebaseAuth.getInstance().getCurrentUser() != null) { 
      // do your task
   }
}
...