Lal*_*ani 8 android firebase firebase-realtime-database
我正在使用Firebase创建一个小型聊天应用程序.ChildEventListener虽然我的应用程序处于后台或已退出,但我想继续监听firebase数据库位置.目前我正在注册它,当我的应用程序退出或关闭时finish(),之后我的所有ChildEventListener方法都没有调用,onChildAdded或者onChildChanged虽然我没有调用removeEventListener.我希望ChildEventListener始终在后台运行.无论如何这样做?
小智 9
使用服务来监听您的ChildEventListener
public class ChildEventListener extends Service {
@Override
public IBinder onBind(Intent intent) {
return null;
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
//Adding a childevent listener to firebase
Firebase myFirebaseRef = new Firebase("FirebaseURL");
myFirebaseRef.child("FIREBASE_LOCATION").addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot snapshot) {
//Do something using DataSnapshot say call Notification
}
@Override
public void onCancelled(FirebaseError error) {
Log.e("The read failed: ", error.getMessage());
}
});
}
@Override
public void onCancelled(FirebaseError firebaseError) {
Log.e("The read failed: ", firebaseError.getMessage());
}
});
return START_STICKY;
}
}
Run Code Online (Sandbox Code Playgroud)
在Manifest中注册您的服务
<service android:name=".ChildEventListener "/>
Run Code Online (Sandbox Code Playgroud)
启动您的服务并收听childEvents,在何处/何时启动您的服务取决于您的聊天应用程序设计
| 归档时间: |
|
| 查看次数: |
3552 次 |
| 最近记录: |