当应用程序处于前台时,请查看MyFirebaseMessagingService中的活动信息



我正在开发一个聊天应用程序。我直接从服务器检索聊天记录。我正在侦听新节点。所以,如果,应用程序在前台,通知来自与我交谈的同一用户。我不想显示通知。如何在Service中检查哪个活动在前台运行以及该活动的内容。

您可以使用SharedPreferences在onResume、onPause中保存应用程序的当前运行活动。

如下所示:

@Override
public void onPause() {
super.onPause();
PreferenceManager.getDefaultSharedPreferences(this).edit().putBoolean("isCurrent", false).commit();
}
@Override
public void onDestroy() {
super.onDestroy();
PreferenceManager.getDefaultSharedPreferences(this).edit().putBoolean("isCurrent", false).commit();
}
@Override
public void onResume() {
super.onResume();
PreferenceManager.getDefaultSharedPreferences(this).edit().putBoolean("isCurrent", true).commit();
}

然后为您服务:

if (PreferenceManager.getDefaultSharedPreferences(this).getBoolean("isCurrent", false)) {
return;
}

相关内容

  • 没有找到相关文章

最新更新