在本地网络中推送通知

2024-03-28

我需要在无法访问 Internet 的本地网络中使用我自己的服务器来实现 Android 和 iOS 的推送通知。 更准确地说,我的用户将拥有一个移动应用程序(Android 和 iOS),它将通过无线网络连接到本地服务器。该网络不会有任何 Internet 连接。 当某些具体事件发生时,服务器需要向连接的设备发送推送通知。

我在服务器端使用 Django。

我做了一些研究,看起来使用 XMPP 将是一个很好的解决方案。因此我想我需要一个 XMPP 服务器来与移动设备通信。我已经看到了服务器端的几种替代方案,尽管我不完全理解我到底需要什么。有一些 XMPP 服务器,例如Openfire http://www.igniterealtime.org/projects/openfire/index.jsp and 时尚XMPP https://github.com/fritzy/SleekXMPP。我不太确定它们的用途。我应该选择其中之一还是两者都使用?

另一方面,应用程序端有哪些替代方案?

我基本上需要的是一些关于选择哪些技术的指导和一些参考资料。


首先,如果您决定使用 XMPP 协议..您可以使用您提到的任何服务器并使用移动 Smack 的任何库,例如 Android,移动库将使用侦听器自动为您更新事件..它是一个软件层,处理通知。

其次,如果您想手动实现它..您将在移动设备上运行一项服务,该服务通过向服务器请求更新来定期检查更新。

第三,实际的推送通知需要通过互联网注册,例如android需要与Google Cloud Messaging进行通信。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在本地网络中推送通知 的相关文章

随机推荐

  • 在 macOS 上打印可执行文件的 rpath

    我想改变rpath一个可执行文件使用install name tool 但我不明白是什么rpath就是现在 install name tool既需要新的又需要旧的rpath是在命令行上给出的 我可以使用什么命令来打印rpathmacOS 下
  • 使用 ExclusiveStartKey 选项进行 AWS Dynamodb 扫描

    对于我最近的项目 我试图从 dynamodb 获取数据 除了我在参数中添加 exclusiveStartKey 选项之外 似乎一切正常 下面是我的代码 function scanDataFromDB datetime let params
  • PHP:标题后代码的效果(“位置:abc.html”)

    可以说 代码看起来像这样 if test header Location somefile html some PHP code header Location anotherfile html Is 一些 PHP 代码 上面执行了吗 如果
  • 如何从 PrimeFaces p:dataExporter 自定义 PDF,例如页面大小

    我想将 PDF 页面尺寸更改为 A4景观导出表时 但无论我做什么都无法完成它 这是我的代码
  • IE/Edge 不应用转换:转换为表格行

    当添加 CSS 转换时 例如transform translate 0px 45px 对于表行 Internet Explorer 已测试 10 和 11 和 Microsoft Edge 无法正确显示转换 使用一些简单的代码作为示例 ta
  • 使用 Python/Django 上传大文件

    我想知道通过使用 Django Python 的 Web 应用程序上传大约 4GB 大小的文件是否有任何影响 我记得过去使用 Java 进行流式上传是首选方法 但现在仍然如此吗 或者使用 Django Python 这样做是否完全安全 如果
  • SwiftUI 拖动手势坐标

    我正在尝试向我正在编写的应用程序添加评级系统 我的方法不太优雅 使用Stepper 如果可能的话 我想要一种交互式拖动方式来填充星级 我不确定是否DragGesture是我正在寻找的 这足够吗 另外 我不确定如何将坐标转换为正确的宽度以填充
  • 在活动之间传递媒体播放器对象

    我想知道如何在活动之间传递 MediaPlayer 对象 以便我可以在整个应用程序中保持恒定的声音播放 你不 通过MediaPlayer活动之间的对象 您需要访问MediaPlayer从一个习惯Service http developer
  • 如何将 data.table 融入人年中,并将年份后缀作为变量列?

    我有一个 data table 看起来像 PID vara90 vara91 vara92 vara93 varb90 varb91 varb92 varb93 1 1 2 1 45 77 Str1 Str3 Str3 Str1 2 2 6
  • JQuery-Mobile 可折叠展开/折叠事件

    有谁知道任何其他方法来捕获展开或折叠标记为的组件的事件data role collapsible 除了onclick其标头的事件 编辑 我想要某种事件 该事件还将提供有关组件的展开 折叠状态的信息 有自定义事件collapsible块 您可
  • React Native - launchPackager.command 无法打开

    我在构建 React Native ios 项目时遇到问题 错误信息 launchPackage command can t be opened because it is from an unidentified developer 知道
  • 如何充分替换 Sensor.TYPE_ORIENTATION (现已弃用)?

    我尝试了在互联网上找到的几个代码片段SensorManager getOrientation 相关讨论 没有一个能可靠地给出磁方位角 因为Sensor TYPE ORIENTATION做过 谁能分享一个工作代码Sensor TYPE ORI
  • 如何从Windows内核驱动程序获取设备实例路径?

    看一下这个示例 Windows 7 中的 USB 设备据报告具有设备实例路径 DevinstPath USB VID 1EAB PID 0501 7 25C389C1 0 1我确切地知道它对应于注册表中所谓的硬件密钥 hwkey 现在我的问
  • 为什么C中的结构体名称不是指针?

    数组名称是指针 函数名称也是指针 但结构名称不是指针 我想了解这种差异背后是否存在某种逻辑推理 或者它只是 C 语言的随机语法 数组很奇怪 他们的行为与其他类型不同 C was derived from an earlier languag
  • “AdjustJavacVersionArguments”任务意外失败

    我已经开始开发了Xamarin Forms应用在Visual Studio Enterprise 2015作为初学者 当我构建解决方案时 我收到如下错误 AdjustJavacVersionArguments 任务意外失败 严重性代码 说明
  • 验证英语文本中“a”和“an”的正确使用 - Python [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我想创建一个程序 从文件中读取文本并指出 a 和 an 何时使用不正确 据我所知 一般规则是当下一个单词以元音开头时使用 an 但还应
  • Objective-C ARC 和传递 C 对象数组

    如果这是一个有点菜鸟的问题 我很抱歉 我知道我需要根据我的指示进行操作 不幸的是 我的截止日期已经到了 所以没有时间完成整本书的章节 所以我希望得到更有针对性的建议 我想在 C 数组中存储一些 Objective C 对象 我正在使用ARC
  • C# 上的 DrawString 文本太粗体

    我已经使用GDIDrawString绘制文本的方法 当程序运行时 屏幕上的文字看起来很好 但是一旦我将文件保存到图像中 字体就会比以前更粗 正常的会加粗 加粗的会更加粗 这该如何处理呢 public override void DrawTo
  • 如何在 Pug 文件中插入原始 HTML(不包括外部 HTML 文件)

    所以我想要的是将一些多行 HTML 放入 Pug 文件中 但在任何地方都找不到如何执行此操作 Example html head body div a href lala blabla a div p hihuhohoo Pug text可
  • 在本地网络中推送通知

    我需要在无法访问 Internet 的本地网络中使用我自己的服务器来实现 Android 和 iOS 的推送通知 更准确地说 我的用户将拥有一个移动应用程序 Android 和 iOS 它将通过无线网络连接到本地服务器 该网络不会有任何 I