记录友盟推送不弹框的问题

官方文档:https://developer.umeng.com/docs/66632/detail/98581

首先通过官方文档集成,功能正常,弹框正常,满足基本需求。

但是推送的问题是,如果app正在运行,推送过来的消息是没有弹出来的提示的。所以产品需要新加一个在app内部弹框的功能。

问题:之前是点击才去拿推送的数据,现在需要推送过来,马上就要拿到数据处理

参考文档-》高级功能集成-》

方案一:消息到达时获取自定义参数。重写UmengMessageHandler类中的getNotification(Context context, UMessage msg)方法:

UmengMessageHandler messageHandler = new UmengMessageHandler() {

    @Override
    public Notification getNotification(Context context, UMessage msg) {

        for (Map.Entry entry : msg.extra.entrySet()) {

            Object key = entry.getKey();
            Object value = entry.getValue();

        }
        return super.getNotification(context, msg);
    }
};
mPushAgent.setMessageHandler(messageHandler);

大坑!!!!!

加上之后发现,推送过来的消息,没有系统弹框了!!!

解决:

去掉getNotification(Context context, UMessage msg)方法,实现dealWithNotificationMessage(p0: Context?, p1: UMessage?)
通过p1去拿推送过来的数据。

补充:getNotification是走的自定义弹框,如果你没有自定义弹框样式,就会出现这个问题。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容