【问题标题】:IBM Worklight: Push Notification and BadgeIBM Worklight:推送通知和徽章
【发布时间】:2013-04-05 10:44:27
【问题描述】:
  1. 在测试 Android 的 Worklight 推送通知时,如果警报(通知消息)为空,则通知栏中将显示带有应用名称的应用图标,而没有任何通知消息。

    请问如果 iOS 中的 alert 为空,Worklight 将如何处理这种情况?会提示通知提醒吗?这么问的原因是,即使应用程序关闭,如果服务器有更新,我只想更新徽章编号而不启动警报框。

  2. 我可以知道推送通知中的徽章是否仅适用于 iOS 而不适用于 Android?正如文件here 所说:
    “GCM 警报 可选的。要在警报中显示的字符串。 徽章 强制的。要在应用程序图标上的徽章中显示的整数值。" 但在我的测试中,Android 应用没有出现徽章。

  3. 请注意,有一个 API 可以设置徽章数量(WL.Badge.setNumber),或者我可以在推送通知 API 中设置它(WL.Server.Notifyxxx - notificationOptions)。
    我可以获取当前要增加的徽章数量,而不是仅仅为其设置一个数字吗?

环境:Worklight 5.0.6,三星 Galaxy S3 Android 4.1.1

谢谢!

【问题讨论】:

    标签: android ios push-notification ibm-mobilefirst badge


    【解决方案1】:
    1. 如果不随通知一起发送文本,iOS 将不会显示警报(横幅或模式对话框,具体取决于用户在 Settings.app 的 Notifications 部分中为应用程序选择的内容)。如果您选择,它只会发出声音。
    2. 徽章支持仅适用于 iOS。我将从该信息中心文章中删除“徽章”提及。谢谢。
    3. 目前没有获取当前徽章数量的 API。同时,或许您可以use a Cordova plug-in 获取应用图标徽章的当前值。

    【讨论】:

    • 谢谢伊丹。对于#1,如果Android中没有带有通知的文本,通知栏会不显示吗?或者它是 Worklight 的一项功能?
    • 这是 Android 功能,不是 Worklight。
    • 根据我的理解,如果收到来自 GCM 的通知,我们需要创建一个 GCMIntentService 类并重写 onMessage() 方法以确定如何处理收到的通知。 (Reference in Android GCM - Step 3) 通常,NotificationManager 用于在通知栏上显示消息。所以,我认为它是 Worklight 的一项功能,用于确定如何处理收到的通知......?
    • 你是对的。我已经进行了一些调查,确实这在 Android 中与 iOS 不同(您(或我们......)没有任何控制权。在 Android 中,我们已经包裹了 GCMIntentService,但是我们不提供你的东西'重新考虑。但是,您可以扩展 GCMIntentService 以添加您想要的内容,但请记住,您可能会破坏其中的其他 Worklight 内容,并且在这种情况下我们无法提供支持。
    • 感谢您的回复。对于#3,是的,有科尔多瓦插件来获取当前的徽章数量。但是,对于推送通知情况,当徽章编号(例如 1)与通知消息一起发送给客户端时,此时应用程序已关闭。在我看来,我无法更新徽章编号,而是直接从服务器使用徽章编号。对吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多