【问题标题】:Titanium local notification钛本地通知
【发布时间】:2016-04-20 17:44:14
【问题描述】:

我有一个从远程(自定义 REST API)检索数据的应用。为此,我想实现本地通知而不是推送通知。目的是在远程发生某些事情时显示通知(iOS 和 Android)(假设有新优惠可用)。

所以在编码之前我有一些问题:

  • 我可以将远程数据显示为本地通知吗?
  • Android 和 iOS 都支持吗?
  • 本地通知和推送通知之间到底有什么区别

【问题讨论】:

    标签: appcelerator appcelerator-titanium


    【解决方案1】:

    您可以在两个平台上使用本地通知:

    要显示远程数据,您需要先拥有它。这意味着您必须对服务器进行 API 调用并接收数据。所以你的应用需要有后台服务:

    同样,两个平台都支持这一点。

    如果您想将其实现为本地通知,您应该已经知道它的作用:) 但是由于您想获取远程数据,我会使用推送通知,因为使用后台服务,您需要一直询问服务器是否有新内容,然后显示您的通知。使用推送通知,您可以将推送发送到手机,然后显示通知。

    有一个很棒的 CommonJS 模块可以帮助你在两个平台上实现推送:https://github.com/HazemKhaled/TiPushNotification

    【讨论】:

    • 您好,感谢您的回复,清晰而完整,但让我再问一个问题:- 设备 ID 附加了推送通知,这意味着当用户在我的应用程序、设备上创建帐户时id 被发送到数据库以接收通知。问题是,当同一个人使用其他设备而不创建帐户而只是查看新闻时......他无法推送,还是我错了?
    • 正确。您必须重新注册此设备。但是你可以检查用户名是否想要接收推送通知,如果用户令牌不同,只需添加它。但这取决于您如何处理使用不同手机的相同用户
    • 你好,再次感谢,我不明白你的意思:“但你可以检查用户名是否想要接收推送通知,如果用户令牌不同,只需添加它”。你的意思是“令牌”?而“只是添加它”的真正含义是什么?再次感谢。
    • 当您注册一个设备以进行推送时,您将收到来自您放入数据库中的设备的令牌。当您发送推送消息时,您使用此令牌将推送消息发送到。因此,现在您在数据库中的用户旁边存储了一个令牌。当现有用户使用不同的电话登录时,他有不同的令牌。但是您从用户名知道您有一个现有用户但使用不同的令牌。您现在可以覆盖旧令牌或同时存储两者。
    猜你喜欢
    • 2015-07-12
    • 2016-11-06
    • 1970-01-01
    • 2021-05-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多