我正在处理推送通知。当我收到多个通知时,它们都显示在状态栏中。我需要一个解决方案,只有一个图标显示在状态栏中,并且通知堆叠在一起。如何在Android中堆叠推送通知?
3
A
回答
2
谷歌是您的朋友:https://developer.android.com/guide/topics/ui/notifiers/notifications.html#bundle
中的Android 7.0(API级别24)开始,Android提供开发 与代表通知的队列中的新方法:捆绑 通知。这与Android Wear的 中的通知堆栈功能类似。例如,如果您的应用程序为收到的消息创建了通知,则当收到多条消息时,将 通知作为一个群组捆绑在一起。您可以使用 Build.setGroup()方法捆绑相似的通知。
0
public class FirebaseInstanceIDService extends FirebaseInstanceIdService {
private String TAG="FirebaseInstanceIDService";
private Context context;
@Override
public void onTokenRefresh(){
context=getApplicationContext();
String Token= FirebaseInstanceId.getInstance().getToken();
saveToken(Token);
}
private void saveToken(String token) {
Log.i(TAG,token);
SharedPref.setToken("Token",token,context);
}
}
清单文件创建服务
public class FirebaseMessaginService extends FirebaseMessagingService {
int i=0;
private int temp=0;
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
showNotification(remoteMessage.getData().get("message"));
}
private void showNotification(String message) {
PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
builder.setAutoCancel(true)
.setContentTitle("Track Mee")
.setContentText(message)
.setSmallIcon(R.drawable.ic_marker)
.setContentIntent(pendingIntent);
NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
notificationManager.notify(0, builder.build());
}
}
写
<service android:name=".Service.FirebaseInstanceIDService">
<intent-filter>
<action android:name="com.google.firebase.INSTANCE_ID_EVENT" />
</intent-filter>
</service>
<service
android:name=".Service.FirebaseMessaginService"
android:enabled="true"
android:exported="true">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT" />
</intent-filter>
</service>
相关问题
- 1. Ionic 3 phonegap推送插件如何堆叠firebase通知
- 2. Android推送通知
- 3. 推送通知 - Android
- 4. 如何在Jelly Bean上堆叠通知?
- 5. 如何在Android中获取堆叠通知的文本
- 6. Android如何禁用推送通知?
- 7. 如何在C#.Net上通过GCM发送Android推送通知
- 8. 堆叠通知栏
- 9. 推送通知在Android 1.6中
- 10. SignalR在Android手机中推送通知
- 11. Android - 如何在Android中进行推送通知
- 12. Android锁屏推送通知
- 13. Android推送通知组件
- 14. Android的checkSelfPermission推送通知
- 15. Android C2DM推送通知
- 16. android推送通知c2dm
- 17. 更新推送通知Android
- 18. Android推送通知网址
- 19. Android推送通知图标
- 20. Android推送通知示例
- 21. Android推送通知GCM
- 22. Android的推送通知
- 23. Android推送通知 - Google Play
- 24. Android静默推送通知
- 25. Android - 推送通知 - 回答
- 26. Android的Phonegap推送通知
- 27. Android推送Google Play通知
- 28. Android推送通知参数
- 29. 在解析统一堆栈android推送通知
- 30. 如何拦截Android中的堆叠通知
我通过个setgroup()方法中去。但是对于每个新通知,状态栏中都会显示一个图标。我的要求是我应该得到堆叠在一个之上的通知,但只能显示一个通知图标。我使用“收件箱样式”,但添加的线条是静态的。如何以不同的通知ID显示多个通知,但是来自同一个应用程序,堆叠在另一个之上。非常像watsapp。以前的通知不应该被传入的新通知所取代,而是我希望它被堆叠。 –
@freddy pradeep你的问题类似于http://stackoverflow.com/questions/17521908/android-gcm-multiple-push-notifications-with-one-icon-in-status-bar – Androbin