我创建了Firebase服务,当我收到通知时,我希望将数据保存到房间。我使用MVP,我不明白如何在android.app.Service
public class MyFirebaseMessagingService extends FirebaseMessagingService {
@Inject
EventPresenter presenter;
public NfpFirebaseMessagingService() {
presenter = UserApplication.me().getAppComponent().getEventPresenter();
}
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
Map<String, String> data = remoteMessage.getData();
presenter.saveEvent(data);
sendNotification(remoteMessage.getData());
}
但我的演示者有视图,FirebaseMessagingService
- 不是视图。在这种情况下如何实现MVP?
答案 0 :(得分:0)
您可以Service
作为View
。它可以实现一个不需要调用View的接口,但您可以将其重命名为Service。
您只需准备界面:
interface ServiceI {
void emitEvent();
}
比您的服务需要实现此接口
public class MyFirebaseMessagingService extends FirebaseMessagingService implements ServiceI {
...
}
您可以将此对象传递给演示者。