Jpush推送给ios自定义消息,IOS收不到,求助..


(super苏苏) #1

java代码用Jpush推送自定义消息,消息发出去,但是ios那边收不到,两边的masterSecret和appKey是一样的,版本也都是最新的,
代码如下:

public static PushPayload buildPushObject_android_and_ios_msg(String msg_title, String msg_content,
			Map<String, String> extrasparam) throws Exception {
		return PushPayload.newBuilder().setPlatform(Platform.android_ios()).setAudience(Audience.all())
				
				.setMessage(Message.newBuilder().setTitle(msg_title).setMsgContent(msg_content).addExtras(extrasparam)
						.build())
				.setOptions(Options.newBuilder()
						/** 此字段的值是用来指定本推送要推送的apns环境,false表示开发,true表示生产;对android和自定义消息无意义*/
						.setApnsProduction(true)
						/** 此字段是给开发者自己给推送编号,方便推送者分辨推送记录*/
						.setSendno(1)
						/** 此字段的值是用来指定本推送的离线保存时长,如果不传此字段则默认保存一天,最多指定保留十天,单位为秒*/
						.setTimeToLive(86400).build())
				.build();
	}
	
		public boolean jPushMessageToAll(String msg_title, String msg_content, Map<String, String> extrasparam) {
		MyLog4j.textInfo("[极光推送]对所有用户推送自定义信息");
		ClientConfig clientConfig = ClientConfig.getInstance();
		PushResult result = null;
		try {
			JPushClient jpushClient = new JPushClient(masterSecret, appKey, null, clientConfig);
			PushPayload payload = JpushClientUtil.buildPushObject_android_and_ios_msg(msg_title, msg_content,
					extrasparam);
			MyLog4j.textInfo("[极光推送]对所有用户推送自定义信息 PushPayload=" + payload);
			result = jpushClient.sendPush(payload);
			MyLog4j.textInfo("[极光推送]对所有用户推送自定义信息 PushResult= " + result);
		} catch (APIConnectionException e) {
			MyLog4j.textError("[极光推送]Connection error. Should retry later.", e);
			return false;
		} catch (APIRequestException e) {
			MyLog4j.textError("[极光推送]Error response from JPush server. Should review and fix it. ", e);
			MyLog4j.textInfo("[极光推送]HTTP Status:" + e.getStatus());
			MyLog4j.textInfo("[极光推送]Error Code: " + e.getErrorCode());
			MyLog4j.textInfo("[极光推送]Error Message: " + e.getErrorMessage());
			MyLog4j.textInfo("[极光推送]Msg ID: " + e.getMsgId());
			return false;
		} catch (Exception e) {
			MyLog4j.textError("[极光推送]对所有用户的自定义信息推送失败 " + e);
			return false;
		}
		if (result != null && result.isResultOK()) {
			MyLog4j.textInfo("[极光推送]对所有用户的自定义信息推送成功!");
			return true;
		} else {
			MyLog4j.textInfo("[极光推送]对所有用户的自定义信息推送失败!");
			return false;
		}
	}

#2

自定义消息是不展示的

收不到消息的问题:请提供推送的消息的msgid(MessageID)和收不到这条消息的设备的registrationID(在客户端获取,无论以何种方式做推送,该信息必须提供)
信息如何获取: 极光产品相关提问简要说明