我们正处于规划移动应用程序的早期阶段。我们有一些特定于 GEO 功能和能力的需求。
我们的愿望是创建一个混合体,但是,我知道这可能无法满足以下所有要求。
假设用户已将正确的通知权限授予应用程序:
客户在前台运行应用程序:
设备在某些客户端操作时通知服务器 GEO 位置 (客户执行一些将数据发送到服务器的操作,我们可以包括当前 GEO 位置吗?)
设备每n分钟发送一次当前 GEO 位置的 ping。
发生业务事件,服务器因其 GEO 位置而向设备发送消息(服务器向 GEO 附近的一个或多个应用程序发送消息
客户未在前台运行应用程序
设备每n分钟通知服务器一次 GEO 位置。(服务器想知道设备的大致位置,以确定是否向其发送了服务器附近事件的通知)
服务器在设备未运行时由于其 GEO 位置而向设备发送消息。(由于其 GEO 位置,服务器向设备发送通知消息。我知道如果应用程序未运行,这将作为应用程序警报发送到操作系统,然后用户将单击以在前台运行应用程序)
目前我的主要关注点是 iOS,但我对上述方面的 Android 功能感兴趣。
我没有移动开发经验。我们正在整理功能规范并尝试确定功能集的可行性。
我们绝大多数的应用都是简单的客户端设备和服务器之间的数据交互,混合就可以了。但是,让我担心的是我们的客户没有运行 GEO 要求。是否有可能创建一个小型 iOS 应用程序来处理混合动力无法处理的事情?如果是这样,这些应用程序可以打包在一起还是单独安装?
编辑: 假设用户已正确配置设备,即设备 GPS 已打开并能够接收通知等。核心问题是设备是否可以在应用程序运行时每n分钟通知服务器其 GEO 位置,然后与相同的问题应用程序关闭?这在原生/混合之间是否有显着差异。
对于 iOS,当应用程序位于“应用程序托盘”中时,该应用程序是否仍被视为正在运行?或者,一旦应用程序不在前台,它就会被有效地关闭?
谢谢