Мне нужно создать приложение для Android, которое дает уведомление при получении нового сообщения, даже если приложение не работает. Я использую базу данных firebase. Я написал код для firebase datasnapshot, но он работает только при работе приложения. Мне нужно запустить этот код, если приложение не работает.Создайте бесконечное фоновое обслуживание для уведомления
Mref=new Firebase("https://iyutue-30s49.firebaseio.com/");
Mref.addChildEventListener(new ChildEventListener() {
@Override
public void onChildAdded(DataSnapshot dataSnapshot, String s) {
String value=dataSnapshot.getValue(String.class);
myDb.GetAllData();
String idd= String.valueOf(myDb.id);
if (value.equals(idd)==true){
NotificationCompat.Builder builder=new NotificationCompat.Builder(getApplicationContext());
builder.setSmallIcon(R.drawable.ic_tab_profile);
builder.setContentTitle("plaese").setContentText("jijo");
Intent intent =new Intent(getApplicationContext(),MainActivity.class);
TaskStackBuilder stackBuilder=TaskStackBuilder.create(getApplicationContext());
stackBuilder.addParentStack(MainActivity.this);
stackBuilder.addNextIntent(intent);
PendingIntent pendingIntent=stackBuilder.getPendingIntent(0,PendingIntent.FLAG_UPDATE_CURRENT);
builder.setContentIntent(pendingIntent);
NotificationManager NM=(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);
NM.notify(0,builder.build());
}
}
@Override
public void onChildChanged(DataSnapshot dataSnapshot, String s) {
}
@Override
public void onChildRemoved(DataSnapshot dataSnapshot) {
}
@Override
public void onChildMoved(DataSnapshot dataSnapshot, String s) {
}
@Override
public void onCancelled(FirebaseError firebaseError) {
}
});
мне нужно выполнить этот код в фоновом режиме, когда приложение не работает также, пожалуйста, помогите мне спасибо advnace
Сохранение соединения в открытом состоянии, когда приложение неактивно, приведет к серьезному истощению батареи и повредит пользовательский интерфейс. Вместо этого рекомендуется использовать Firebase Cloud Messaging для уведомления о событиях пользователя, когда у них нет приложения. –
@FrankvanPuffelen, но здесь я использую firebase, но этот код не работает, если приложение неактивно, как писать этот тип сервиса заблаговременно –
, но другие основные приложения, такие как whatzaap, также запускают фоновый процесс и обслуживание всегда .. это не лучший способ? –