无需APNS的推送通知

4

我使用苹果推送通知服务(APNS)可以完美地发送iOS推送通知。因此,对于一些客户,我需要一个本地解决方案,可以在不使用APNS并且不依赖互联网的情况下向设备发送通知。有人知道这样做的方法吗?能帮助我吗?

4个回答

2

不可能。没有互联网,您无法从APNS获得通知。

要实现这一点,您可以在应用程序处于后台模式时从服务器向应用程序发送消息,并相应地生成本地通知。


2
截至iOS 14,可以通过本地推送连接实现此功能,但您需要申请应用程序推送提供者资格,并说明为什么无法使用APNS。

苹果公司的示例代码可在此处获取。


1
让我澄清一下你的问题。 “本地”意味着:您要么没有互联网连接,要么有一个没有连接到APNS的本地网络,或者用户简单地没有注册推送通知。 1.具有本地推送通知的iBeacon 因此,这里有一个替代方案,基本上并不是用于这个目的,但您可能知道。 iBeacon可用于传输非常小的数据块,非常非常小的数据块。如果用户启用了位置服务,则可以将这些包含在您的应用程序中,以触发某些事件(在这种情况下,是一个非常小的通知,用户进入感兴趣点的范围)。 缺点:应用程序包要求静态的“通知文本”到信标映射,或者您必须从Web源动态下载映射,以便更新通知的文本。 2.带有本地推送通知的蓝牙
另一种选择是使用蓝牙。 设备可以自动连接到您的蓝牙站“Peripheral”-这些设备现在(借助您的应用程序)将注册到您的Peripheral的广播特征中。 外围设备可以向已注册的设备发送消息。 如果现在设备确实收到了这样的广播消息,则可以执行本地推送。-没有任何网络连接,仅借助蓝牙,当然也需要用户权限。
3.互联网连接/本地推送通知的静默推送 如果您的应用程序当然具有工作的互联网连接,则可以避免来自Apple的APNS并将自己的通知作为静默推送通知发送到设备。

但是是否可以连接到本地服务器进行数据更新呢? - Lepidopteron
我需要向我开发的应用程序的用户发送通知,而不需要互联网连接,只能在本地网络上进行。我可以通过VPP和MDM来实现吗? - Lucas Schmidt
企业分发(如VPP)应该适用于这种情况。如果您想将应用程序部署到设备上,请确保设备已在您的MDM注册。作为替代方案,您还可以进行“Appstore”式的部署,让用户可以下载并安装应用程序到他们的设备上。 - Lepidopteron

0

APNS 只能在互联网范围内使用。如果您需要向用户推送消息,但没有互联网连接,一个解决方案(可能是目前唯一的解决方案)是使用短信 API。但这需要用户的手机号码。通过使用 URL 模式,用户可以从短信消息中打开您的应用程序。


如何在iOS中使用Swift语言使用URL Schema,您能否分享参考链接。 - arun

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接