我需要显示类似的内容,以显示我的应用有新的通知。
但我不想跟踪新通知的数量。只是一个徽章,显示有新的,应该就够了。理想情况下,徽章是一个带有" ..."。
的红色圆圈我将如何实现这一目标?
答案 0 :(得分:2)
你应该提供一些"未读"徽章中的通知。 Apple人机界面指南不鼓励将徽章用于除通知之外的其他目的。
您可能无法在AppStore中批准销售该应用。
答案 1 :(得分:1)
由于我知道您在Bluemix上使用IBM推送通知服务,因此有一种简单的方法可以实现此目的。使用IBM推送通知服务发送推送通知时,您可以将徽章值指示为可选有效负载的一部分:
iOS徽章 - 对于iOS设备,要显示为应用图标徽章的数字。如果此属性不存在,则不会更改徽章。至 删除徽章,将此属性的值设置为0。
如果您通过Bluemix推送仪表板发送推送通知,您只需输入成功收到通知后要显示的徽章值:
如果您通过Node.js,REST等发送推送通知,则可以将徽章值添加为选项参数。请查看REST API文档中提供的模型以查看正确的结构:
https://mobile.ng.bluemix.net/imfpushrestapidocs/#!/messages/post_apps_applicationId_messages
apns {
badge (integer, optional): The number to display as the badge of the application icon,
.
.
.
}
答案 2 :(得分:0)
它应该只是数字。不能为你的要求提供像“......”这样的字符串。
答案 3 :(得分:-1)
据我所知,您必须首先注册本地或推送通知才能在应用图标上显示徽章编号。
万一你还没有完成,这里是注册本地通知的代码
if (UIApplication.instancesRespondToSelector(Selector("registerUserNotificationSettings:"))) {
UIApplication.sharedApplication().registerUserNotificationSettings(UIUserNotificationSettings(forTypes: [UIUserNotificationType.Alert, UIUserNotificationType.Badge], categories: nil))
}
didFinishLaunchingWithOptions
的AppDelegate
方法中的
然后在视图控制器的UIApplication.sharedApplication().applicationIconBadgeNumber = 34
方法中尝试viewDidLoad
进行测试
如果您使用推送通知
,徽章价值将由服务器维护