EMAS推送高级接口,ios通知推送,设置了这个iOSExtParameters自定义扩展属性,app接受到了通知,但是没接收到这个自定义属性,可以帮忙看看吗? 是的,这个复制出来是旁边的json串 7353251964474112 这个是我发送的消息id,你看看能不能协助看看
好的,根据您提供的信息,我可以参考以下步骤:
确认EMAS的高级接口是否正确设置了iOSExtParameters自定义扩展属性,并且在推送消息时该属性是否被包含在消息体中。 确认您的app是否正确注册了通知,并且在接收到通知的回调方法中正确解析了附加的自定义属性。 通过查看app端日志或者debug调试方式,确认是否有接收到通知及自定义属性的数据。 您可以先尝试检查以上三个方面是否存在问题,如果还是无法解决,可以提供更加详细的信息以便更准确地定位问题所在。
参数是以 json map 的格式传入的吗 appkey Deviceid 发下,是查推送的消息体吗?消息是推送成功了,点击了,服务端对应的设置 iOSExtParameters 的代码发下, private PushRequest createRequest(String msgBody, String msgTitle, String deviceType, List deviceIds, Long messageId) { PushRequest request = new PushRequest(); // 推送消息文本 request.setBody(msgBody); // 推送消息标题 request.setTitle(msgTitle); // 设置appKey if (IOS.equals(deviceType)) { request.setAppKey(iosAppKey); request.setIOSApnsEnv(apnsEnv); request.setIOSExtParameters(JSON.toJSONString(Collections.singletonMap("Extras", messageId))); } else if (ANDROID.equals(deviceType)) { request.setAppKey(androidAppKey); request.setAndroidExtParameters(JSON.toJSONString(Collections.singletonMap("Extras", messageId))); } else { return null; } // MESSAGE: 消息(默认); NOTICE: 通知 request.setPushType("NOTICE"); // IOS:苹果; ANDROID:安卓; ALL:默认值 request.setDeviceType("ALL"); // DEVICE:推送给设备;ACCOUNT:推送给指定账号;TAG:推送给自定义标签;ALIAS:按别名推送; ALL:全推 request.setTarget("DEVICE"); if (CollectionUtils.isEmpty(deviceIds)) { return null; } // DEVICE: diviceId1,diviceId2..; ACCOUNT: account1, account2...; ALIAS: alias1,alias2...; ALL: ALL request.setTargetValue(StringUtils.join(deviceIds, ",")); // 设置过期时间 //request.setExpireTime(); // 设置发布时间 //request.setPushTime(); // 设置推送任务自定义标识,回执日志中带有该字段 //request.setJobKey(); return request; }key设置成Extras,否则ios收不到 比如说设置成extras,ios就收不到了,此回答整理自钉群“应用研发平台EMAS开发者交流群”
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。