根据购物车的状态以设定的时间间隔推送通知? /离子
Posted
技术标签:
【中文标题】根据购物车的状态以设定的时间间隔推送通知? /离子【英文标题】:Pushing notifications at set interval based on the state of the shopping cart? /Ionic 【发布时间】:2015-08-23 11:09:24 【问题描述】:我们正在构建一个电子商务混合应用程序(Ionic + Phonegap + Cordova),用户可以在其中将商品放入购物车,然后再购买(类似于亚马逊和其他电子商务服务)。
为了鼓励用户完成购买,我们希望每天“扫描”一次购物车,并检查用户购物车中是否有一些商品已经存在超过 24 小时。
如果算法发现任何物品在购物车中的时间超过 24 小时,他们将在每天下午 3 点通过推送通知收到通知。如果没有此类项目,则不会发送通知。如果有多个商品,只会发送 1 条通知,提示“我发现您的购物车中有 2 件商品尚未购买。您还在等什么?”。
我是团队的非技术成员,工程师告诉我不可能创建此类通知。
我被告知的,逐字逐句:
很遗憾,由于 Apple 和 android 的设置,代码不能 显示通知后执行。这意味着我们 无法在后台检查过去的任何未完成项目 几天。我们能做的最好的事情就是为 第二天,如果用户打开了应用程序并且在 大车。但是,没有办法为接下来的 X 天做计划。
建议的解决方案是这样的:
当用户添加新项目时,所有预定通知 [as 上面提到的]将被删除,新的通知将被 计算(由于对项目进行分组,这部分变得很困难 因为我们不想通过通知向用户发送垃圾邮件)
所以我的问题很简单——这是一个明智的解决方案吗?真的没有什么比这更有效了吗?谢谢。
【问题讨论】:
购物车状态只保存在客户端? 无连接时,是的。一旦应用程序检测到网络连接,信息就会同步到服务器 -> 与使用任何流行的笔记应用程序记笔记的方式相同。但是,我们不确定用户是否会在 1 天内在线,尽管他们中的大多数会在线。 我可能遗漏了一些东西,但是如果大部分时间数据都同步到服务器,那么问题出在哪里?还要考虑到您所描述的应用不是假设在没有互联网连接的情况下工作的应用。 该应用程序将在没有连接的情况下仅与缓存数据一起工作。我对 Ionic 没有足够的经验,所以我无法回答您的问题,但我认为是这种情况:1)我将 2 件商品放入购物车,2)我关闭了应用程序并且没有连接到互联网> 1 天。这就是为什么我问工程师提出的解决方案是否有意义,或者是否有更好的解决方案,您的建议是什么? 也许我的假设是错误的,但是如果用户关闭了应用程序并且超过 1 天没有连接到互联网,你为什么要这样做呢?虽然他没有连接,但无论如何他都不会收到推送通知,如果他连接,那么您可以同步数据并决定做什么。 【参考方案1】:有两种类型的通知:
本地通知:
通知是在您的应用中创建的。一种策略可以是:
有一个用于暂停的事件处理程序和另一个用于恢复的事件处理程序 应用程序。 如果应用程序要暂停,您计算通知文本, 日期和时间,也许还有徽章。 ( "你在……中有两个项目", 以 24 小时显示。) 如果应用恢复,您会清除通知。您可以创建多个通知,但如果应用不在前台,则无法进行重新计算。短时间可以有后台进程,但不能长时间有这个。 (特殊情况是 GPS 跟踪和计时器应用。)
推送通知:
这种通知是从 Google、Apple 等通知提供商发送的。因此,您必须将购物数据保存在您的服务器上并向该提供商发送通知作业,然后再将其传递给客户端。
推送通知是一项比本地开发更大的工作。原因是,您必须管理购物数据、设备以及与通知服务器的通信。而且你会有很多垃圾和虚假数据。
我会从本地通知开始。,
【讨论】:
以上是关于根据购物车的状态以设定的时间间隔推送通知? /离子的主要内容,如果未能解决你的问题,请参考以下文章
离子推送通知自定义声音无法在 Android Oreo 及更高版本上播放