xingePush / xinge-api-java

信鸽ServerSDK-Java版本
53 stars 29 forks source link

你好,请教一个问题,关于安卓附加参数的 #37

Open ChangJianLiu-Key opened 5 years ago

ChangJianLiu-Key commented 5 years ago

客户端死活收不到自带参数,我用官网的页面发送请求是可以的。 我在单设备的推送代码里加入了 JSONObject json = new JSONObject(); json.put("111","222"); messageAndroid.setCustom_content(json.toString()); 自己打印看了下发送参数的json里 带转义字符 "action":{"action_type":1,"activity":""},"custom_content":"{\"111\":\"222\"}" 会不会跟这个有关?

ChangJianLiu-Key commented 5 years ago

上一楼倒数第二行里面自动把转义字符格式化掉了 我的问题已经自己解决了,我不再使用String类型了,而是自己写了一个对象。。这个对象里只有一个参数叫key 然后去给他设置value。。再把对象放进去就好了 但是这样解决肯定不是最好的,这个问题根本问题是 数据被2次转json了 转了2次json的字符串会戴上这个转义字符 \ 我的办法不一定是最好的,如果有更好的办法可以写下来,谢谢!

fanlushuai commented 5 years ago

官方文档的定义: "custom_content": { "key1": "value1", "key2": "value2" } custom_content是一个对象。显然本sdk里面的定义是string是错误的。

自己加对象,或者修改成Map<String,String>就好

fanlushuai commented 5 years ago

https://github.com/fanlushuai/xinge-api-java

ChangJianLiu-Key commented 5 years ago

https://github.com/fanlushuai/xinge-api-java

哈哈 本来我想自己改了提交一下试试的 以前没提过 不知道怎么操作

fanlushuai commented 5 years ago

https://github.com/fanlushuai/xinge-api-java

哈哈 本来我想自己改了提交一下试试的 以前没提过 不知道怎么操作

1、你要是给这个仓库提交。就fork到你的账户。然后修改。之后发起pull request。等待review合并。 2、你要是自己改。还是fork下来。本地build一下。传到自己的maven仓库。

因为这个xinge sdk的1.2版本没有传到中央仓库。而且以github仓库的形式存在。所以我建议的是,fork源码到自己的本地仓库,然后deploy到自己的github。万一哪天作者不高兴。github的maven 仓库删掉怎么办。啊哈哈。 其实我的fork的maven github deploy已经配置好了。可以参考一下。

JasonChoi-ss commented 4 years ago

哈哈 我刚刚merge了这个bug,看了下记录发现原来你们也发现了这个问题啊?那你的请求是被驳回了吗?这个bug怎么一直有啊!郁闷

qbmiller commented 4 years ago

信鸽官方回复的我(vip微信群) ,我把custom string改成了Object

@JsonProperty(value = "custom") @ApiModelProperty(notes = "自定义下发的参数") private Object custom;

调用时候     messageIOS.setCustom(map);
qbmiller commented 4 years ago

再次对接腾讯移动推送, 跟信鸽 完全独立; 这个custom不能改, 还得是string ; 兼容吧

JasonChoi-ss commented 4 years ago

官网好像没及时更新,java后台的api最新版本应该是1.2.2,1.2.2已经修复了这个问题,望广大同僚注意更新maven