[英]Do we use static notifications or dynamic notifications for getting usernames and avatars from the server?
我已经读了很多关于设计静态/动态通知的信息。 每个人都说动态使用更多个性化的数据,并尝试保持静态,因为WatchOS经常会在电量不足等情况下恢复为静态。
我尚不清楚的是,是否可以对同一类别“新消息”使用静态通知,但是每次更改正文中的发件人姓名以匹配服务器中的用户对象时。
也是他们的头像。 每个通知都可以使用服务器上的其他用户头像吗? 使用JSON有效负载,即使有静态通知,我们也可以获取任何数据并填充任何WatchKit ImageView / UILable?
万一需要使用动态通知,我已经使用此方法测试字典来为动态通知控制器创建WKUserNotificationInterfaceController
的子类。
如何用用户名/头像填充WK对象?
override func didReceiveRemoteNotification(remoteNotification: [NSObject : AnyObject], withCompletion completionHandler: ((WKUserNotificationInterfaceType) -> Void)) {
NSLog("remoteNotification Dictionary %@",remoteNotification);
completionHandler(.Custom) // same as completionHandler(WKUserNotificationInterfaceType.Custom)
}
从我的角度来看,没有必要动态变化,让我们说一下这样的有效负载数据:
{
"img_url" : "exmaple.com/ssd.jpg",
"sender" : "Kelvin",
"type" : "(your type name)"
}
您可以使用“新消息”,“视频通话”或“回复”控制类型。解析类型时,请检查它并在UI上向用户显示。
如果要从服务器解析有效负载数据,则每次到达通知时,将解析以下键“ imgu_url,sender,type”,对,您会从中获取数据,对吗?意思是静态的。因此,重要的是为您的需求设置公用密钥名称。不需要动态。
尝试阅读这篇文章: 静态通知和动态通知之间的区别是什么?
您应该做的就是获取数据并更新UI
APNS格式和后端指南:
在这里,您应该像这样向iOS设备发送的内容。如果未设置Apple设置的这种有效负载格式,则不会收到任何通知给iDevices。
并且无需创建多个apns文件,请尝试阅读其服务器端脚本上的文档。了解他们如何将通知发送到特定的iOS设备: 一个信号,或者您也可以从Parse中学习,后者现已开源。
我不是后端开发人员。因此,我无法为您提供帮助。就像我说的那样,您可以根据应用程序的需要发送有效负载数据库。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.