尊敬的作者: 我按照推送插件使用指南,配置了个推账号,p12证书是开发环境证书,打包是云端ios越狱包。然后在个推平台发送透传消息,iphone手机没有任何反应。 我想基于此实现ios离线消息功能,还望作者指导~ 静候回复,不胜感激涕零。
APNS不能使用多半是配置的问题,请按下边步骤确认具体问题: 执行plus.push.getClientInfo().token看是否可以获取token 如果获取不到都先检查设置->通知看看是否应用被禁止接受通知,如果正常说明打包profile文件未启用apns功能 注意:首次启动无网状态即使配置正确也获取不到token 执行plus.push.getClientInfo().clientid看是否可以获取clinetid,如果不行说明个推appkey等配置错误 使用个推web端APNS测试功能功能看是否可以收到推送,如果不行请参考http://docs.getui.com/pages/viewpage.action?pageId=590044 关于个推Push使用的步骤 去个推网站申请帐号 这个主要是获取appid、appkey、appsecret 可以参考这个http://ask.dcloud.net.cn/article/34 2.在HB中配置个推相关参数 可以参考这个文档 http://ask.dcloud.net.cn/article/92 3.生成启动APNS功能的profile文件用这个profile进行打包,证书还使用原来打包的证书 这个我会在下边的评论中说明 4.APNS证书的生成和在个推中的配置,这个证书是用来和苹果APS服务器双向HTTPS 只要在苹果开发者网站生成提交给个推即可 参考个推的文档http://docs.getui.com/mobile/ios/apns/ 5.push API请参考http://html5plus.org/#specification#/specification/Push.html demo可参考HelloH5 iOS 5+runtime消息处理规则: 1.判断是否是可以JSON解析,如果是并且 title 、content、 payload、 三者则返回对应内容 2.如果不是1中的格式 title取应用名字 、content取推送消息的完整内容、payload 取推送消息的完整内容,如果可以JSON化返回对象否则和content内容一致 如果是APS通道推送的消息返回格式为 title节点为应用名字 content为推送的消息 aps节点为Apple APS消息格式中aps节点 payload节点为Apple APS消息格式中除aps节点外的所有节点如果没有为空 关于个推iOS服务器推送请参考iOS推送文档请勿参考安卓文档 APS知识请参考Apple 文档https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/ApplePushService.html
谢谢DCloud_IOS_XTY,另外ios发布appstore版本老是提示“打包失败,原因未知”,以下是文档里说的: AppID:iOS应用标识,推荐使用反向域名风格的字符串,如“com.domainname.appname”,必须与profile文件绑定的App ID匹配。 私钥证书:iOS Certificates文件(.p12); 私钥密码:导入私钥证书的密码; Profile文件:iOS Provisioning Profile文件(.mobileprovision),必须与苹果App ID和私钥证书区配; 这个我要注意些什么,或者说有没有详细的生成这些文件的说明。
如何启用APNS功能 登录到iOS Developer Program 1.找到对应的appid 点击Edit,注意该appid 不能为Wildcard类型 2.勾选 push 点击done 重新生成新的profile
@DCloud_IOS_XTY 根据以上方式,仍然打包错误。搞了很长时间了,是否能解答一下? 错误提示: /usr/bin/codesign --force --sign 68B127EC15801331ACDF06A25A0A52992E58E524 --entitlements 安装包制作目录build/Pandora.build/Release-iphoneos/Pandora.build/DCloud_Pandora.app.xcent --timestamp=none 安装包制作目录build/Release-iphoneos/DCloud_Pandora.app 68B127EC15801331ACDF06A25A0A52992E58E524: no identity found Command /usr/bin/codesign failed with exit code 1
在xcode中按照Capabilities -> Push Notification -> ON 打开了推送设置,然后进行推送测试, plus.push.addEventListener( "receive", function( msg ){}方法无法监听到推送过来的数据。在个推平台上使用了cid进行推送测试发现是可以接收到推送消息的,请问下这个是什么原因?该怎么解决。
7 个回复
DCloud_IOS_XTY
APNS不能使用多半是配置的问题,请按下边步骤确认具体问题:
如果获取不到都先检查设置->通知看看是否应用被禁止接受通知,如果正常说明打包profile文件未启用apns功能
注意:首次启动无网状态即使配置正确也获取不到token
关于个推Push使用的步骤
这个主要是获取appid、appkey、appsecret
可以参考这个http://ask.dcloud.net.cn/article/34
2.在HB中配置个推相关参数
可以参考这个文档 http://ask.dcloud.net.cn/article/92
3.生成启动APNS功能的profile文件用这个profile进行打包,证书还使用原来打包的证书
这个我会在下边的评论中说明
4.APNS证书的生成和在个推中的配置,这个证书是用来和苹果APS服务器双向HTTPS
只要在苹果开发者网站生成提交给个推即可
参考个推的文档http://docs.getui.com/mobile/ios/apns/
5.push API请参考http://html5plus.org/#specification#/specification/Push.html
demo可参考HelloH5
iOS 5+runtime消息处理规则:
1.判断是否是可以JSON解析,如果是并且 title 、content、 payload、 三者则返回对应内容
2.如果不是1中的格式 title取应用名字 、content取推送消息的完整内容、payload 取推送消息的完整内容,如果可以JSON化返回对象否则和content内容一致
如果是APS通道推送的消息返回格式为
title节点为应用名字
content为推送的消息
aps节点为Apple APS消息格式中aps节点
payload节点为Apple APS消息格式中除aps节点外的所有节点如果没有为空
关于个推iOS服务器推送请参考iOS推送文档请勿参考安卓文档
APS知识请参考Apple 文档https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/ApplePushService.html
李开源 (作者)
谢谢DCloud_IOS_XTY,另外ios发布appstore版本老是提示“打包失败,原因未知”,以下是文档里说的:
AppID:iOS应用标识,推荐使用反向域名风格的字符串,如“com.domainname.appname”,必须与profile文件绑定的App ID匹配。
私钥证书:iOS Certificates文件(.p12);
私钥密码:导入私钥证书的密码;
Profile文件:iOS Provisioning Profile文件(.mobileprovision),必须与苹果App ID和私钥证书区配;
这个我要注意些什么,或者说有没有详细的生成这些文件的说明。
DCloud_IOS_XTY
打包失败的问题你在群里找下@46 ,步骤我会抽空在上边的评论中写下
2015-01-20 12:58
李开源 (作者)
回复 DCloud_IOS_XTY:很感谢你,根据你的提示,问题已经解决~
2015-01-20 17:17
DCloud_IOS_XTY
如何启用APNS功能
登录到iOS Developer Program
1.找到对应的appid 点击Edit,注意该appid 不能为Wildcard类型
2.勾选 push 点击done
Pall_Li
@DCloud_IOS_XTY 根据以上方式,仍然打包错误。搞了很长时间了,是否能解答一下?
错误提示:
/usr/bin/codesign --force --sign 68B127EC15801331ACDF06A25A0A52992E58E524 --entitlements 安装包制作目录build/Pandora.build/Release-iphoneos/Pandora.build/DCloud_Pandora.app.xcent --timestamp=none 安装包制作目录build/Release-iphoneos/DCloud_Pandora.app
68B127EC15801331ACDF06A25A0A52992E58E524: no identity found
Command /usr/bin/codesign failed with exit code 1
DCloud_IOS_XTY
打包错误的具体原因你联系下QQ 578016430
2016-03-08 11:50
Pall_Li
谢谢
zapoi
在xcode中按照Capabilities -> Push Notification -> ON 打开了推送设置,然后进行推送测试, plus.push.addEventListener( "receive", function( msg ){}方法无法监听到推送过来的数据。在个推平台上使用了cid进行推送测试发现是可以接收到推送消息的,请问下这个是什么原因?该怎么解决。
zapoi
@697
2017-03-07 16:45
iwindy
@DCloud_IOS_XTY iOS 进入后台,都得用 APNS 才能接收到信息吗?用透传不行吗