知识库 从这里开始
应用程序和平台
Nymchat 作为网络应用程序以及本机 Android 和 iOS 应用程序提供。他们是 不同的代码库使用相同的协议,因此网络是一个网络——但是一个 少数功能取决于平台允许应用程序执行的操作。
为了方便起见,此页面是机器翻译的。英文原件为适用版本。
三构建,一个网络
| 建造 | 写于 | 它来自哪里 |
|---|---|---|
| 网络应用程序 (PWA) | 纯 HTML、CSS 和 JavaScript 模块 — 无需构建步骤即可运行 | 服务自 web.nymchat.app,或运行存储库的 index.html 你自己 |
| 安卓 | Flutter、原生 UI | 谷歌播放和 Zapstore |
| iOS系统 | 相同的 Flutter 应用程序 | TestFlight |
移动应用程序不是盒子里的浏览器。它们是相同的完整本机实现 客户端——他们自己的 Nostr 堆栈、他们自己的中继池、他们自己的存储——铺设 以匹配网络应用程序的屏幕,直至设置组位于同一屏幕中 订单。
所有这三个都是在 AGPL-3.0 下开源的,
一个存储库:
Web 应用程序位于根目录下,移动应用程序位于根目录下 android-ios-app/.
安装网络应用程序
打开 web.nymchat.app。那 已经是整个应用程序 - 安装只给它一个主屏幕图标,它自己的窗口 以及通过 Service Worker 进行离线缓存。
- Chrome、Edge、Brave、Opera(桌面) — 安装图标出现在 地址栏。
- 安卓 — 浏览器提供“添加到主屏幕”;菜单上有它 也是。
- iOS 浏览器 — 分享,然后“添加到主屏幕”。 Safari 不会 从 iOS 上的任何其他浏览器提供此功能。
在安卓上安装
两条路线,同一个应用程序:
- Google Play — 搜索 Nymchat,或安装
com.nym.bar直接地。 - Zapstore — 分发签名 APK 的 Nostr 原生应用程序商店 没有谷歌帐户。
Android 会根据应用程序的需要为其提供所需的内容。需要蓝牙权限 第一次启动网格时,第一次需要通知权限 仅当您打开 geohash 通道的邻近排序时才会通知您和位置。
在 iOS 上安装
iOS 构建通过以下方式分发 TestFlight。安装苹果的 TestFlight 应用程序,然后打开 尼姆聊天 邀请链接.
iOS 给后台应用程序带来的束缚远比 Android 少。 Nymchat 没有推送提供商 — 没有服务器保存您要推送的消息 - 所以在 iOS 上它会赶上 使用系统的后台刷新窗口,iOS 在需要时会安排该窗口。 因此,当应用程序暂停时,通知可能会延迟到达。安卓上也一样 设置运行前台服务并且中继连接保持打开状态。
什么在哪里运行
此处未列出的所有内容在任何地方都一样:频道、消息、私人消息、 群聊、通话、Zap、商店、Nymbot、主题和每个设置。
| 特征 | 网络应用程序 | 安卓 | iOS系统 |
|---|---|---|---|
| 蓝牙网状网络 | 仅限 Chromium 浏览器,并且作为叶子 - 浏览器无法为自己做广告 | 完整对等:同时进行广告和扫描 | 完整对等:同时进行广告和扫描 |
| 在后台保持联系 | 仅当选项卡打开时 | 可选的前台服务保持中继套接字打开 | 在系统的后台刷新窗口中尽力追赶 |
| 解锁加密身份 | 密码、PIN、密钥或生物识别 (WebAuthn PRF) | 密码、PIN 码或设备生物识别 | 密码、PIN 码或面容 ID/触摸 ID |
| 从其他应用程序共享到 Nymchat | — | 系统共享表 | 分享扩展 |
| 移动设备在消息上滑动手势 | 在狭窄的窗户上 | 是的 | 是的 |
| Geohash 通道的邻近排序 | 浏览器位置权限 | 系统位置权限 | 系统位置权限 |
设置遵循设备之间的 Nostr 登录,因此在使用网络后安装应用程序 版本并不意味着重新设置所有内容 - 请参阅 在设备之间同步设置。身份加密 是故意的例外:它是针对每个设备的,因为解锁因素是。