dfabulich
(Dan Fabulich)
1
“添加到主屏幕”(A2HS)自 iPhone 最初发布以来一直是 iOS 的一项功能。但用户从未清楚地知道如何操作(或为何要这样做)。
即将推出的 iOS 16.4 将支持推送通知,但并非适用于所有网站。它仅在您通过 A2HS 将网页应用“安装”为“应用”时才有效。
因此!我认为 Discourse 应该向用户解释如何 A2HS,然后注册推送通知。
在 iOS 16.4 中,要注册推送通知,您需要:
- 向下滚动以显示 URL 栏
- 点击(未标记的)共享按钮(带向上箭头的框)
- 向下滚动共享表单以显示 A2HS 按钮(并且完全不清楚该表单是可滚动的!)
- 点击“添加到主屏幕”
- 点击右上角的“添加”按钮(最好不要重命名应用)
- 返回主屏幕,找到您刚刚创建的新应用图标(它可能在第二个主屏幕上,因此您可能需要按名称搜索它,例如“Meta”)并点击它
- 再次登录。(A2HS PWA 不与 Safari 共享 cookie,因此如果您使用 Facebook 登录,您还必须从头开始使用 Facebook 登录,包括双因素身份验证和“信任此浏览器”。)
- 点击横幅以注册推送通知
这对用户来说将非常难以理解!
Discourse 应提供一个链接,解释如何 A2HS 并注册推送通知,最好包括一个分步视频教程。
更糟糕的是,我认为不能只有一个视频教程。很多因素取决于您是在 iPhone 还是 iPad 上操作,您的设备是否有主屏幕按钮等。
不过,我认为像这样的功能将极大地帮助用户开始使用推送通知。
5 个赞
Falco
(Falco)
2
自从 Apple 禁用了 beforeinstallprompt 事件后,在他们的平台上这确实相当复杂。
这对于每个 Web 应用来说都将是个问题,因此我们可以借鉴其他人的做法,并尝试使用用户熟悉的东西。
急于开始推广的用户可以尝试使用一个主题组件来帮助他们的用户找到该功能。
6 个赞
dfabulich
(Dan Fabulich)
3
iOS 16.4 现已发布,因此我认为此问题现在更加紧迫。
2 个赞
sam
(Sam Saffron)
4
也许一个临时的步骤来试探一下水温是一个主题组件?
让它弹出一个可关闭的对话框,引导你完成这个操作?我想未解决的问题是:
- iOS 能否检测到它处于 PWA 状态还是非 PWA 状态?
- “提醒人们 PWA” 的机制是什么?(等待多长时间?多久打扰一次?例如,你是否要求人们是 TL1?)
1 个赞
Falco
(Falco)
5
可以,并且我们已经在 sniff-caps 中有相应的方法了。
Android 上已经有一个触发 TL1+ 的横幅。
点击“否”会持久化到本地存储。
这里的主要问题是苹果是被迫参与的,所以点击安装不会触发安装,但我们所能做的就是显示一个带有教程的模态框,说明它是如何工作的。对于模态框的外观,社区还没有达成共识。
3 个赞
sam
(Sam Saffron)
6
我刚刚更新到 16.4,然后……
“推送 API”未在实验性功能中选中。我认为这基本上是“死路一条”,直到 Apple 默认启用它。
1 个赞
dfabulich
(Dan Fabulich)
7
这是一个常见的误解。“Push API”功能标志在 16.4 版本中没有任何作用。Push API 开箱即用,在 iOS 16.4 上默认启用(但仅在你 A2HS 之后)。
(我推测该功能标志将来或许能在 Safari 中直接启用 Web 推送,而无需 A2HS,但该功能目前不存在,因此启用/禁用该标志没有任何作用。)
请继续尝试!即使禁用该标志,你也会收到推送。
3 个赞
sam
(Sam Saffron)
8
我明白了……嗯,我刚刚把它添加到主屏幕……看看它有什么作用。
1 个赞
dfabulich
(Dan Fabulich)
9
请不要忘记遵循我上面记录的所有步骤。点击 A2HS PWA,登录,然后通过横幅启用通知。您应该会立即收到一个测试推送。
3 个赞
Stephen
(Stephen)
10
正如我们在另一个主题中已经确定的那样,该设置并不指 Web 推送,实际上自 iOS 15.4 以来,它一直存在于实验性设置中。
添加 PWA 后,用户只需重新登录,然后在 PWA 中的个人资料中启用通知即可。
2 个赞
sam
(Sam Saffron)
11
我在这里遇到一个阻力,那就是 Discourse Hub 应用仍然比 PWA 略胜一筹
- 一个应用支持多个站点
- 为我们所有托管的客户提供推送通知
- 由于身份验证切换协议,无需二次登录
- 在页脚分享链接,而不仅仅是前进/后退
- 更易于安装(有争议)
尽管如此……这无疑是巨大的进步!它非常实用 
这种方式巩固了这样一个想法:响亮的提醒和教学的实验应该在一个主题组件中进行(并提供一个可选模式,用于教授 Hub 或 PWA)。这也让我思考,我们是否可以教会 Hub 也依赖 Web 推送通知来支持自托管……
1 个赞
dfabulich
(Dan Fabulich)
12
IMO,Discourse Hub 目前唯一的优势在于它更容易(学习如何)安装。Discourse Hub 是一个应用程序,每个人都知道如何安装应用程序。在 Hub 中,您需要粘贴论坛 URL,但有用户界面指导您完成整个过程。而 iOS A2HS 的过程……是无法发现的。(因此才有了这个帖子!)
“一个应用支持多个站点”实际上对我来说是一个缺点。(但是,如果您对此感兴趣,现在可以将 Discourse Hub 重写为 PWA!
)
“为我们所有托管客户提供推送通知”同样适用于 Web 推送,对吧?即使是非托管客户,使用 iOS 16.4 Web 推送也能获得即时推送,而当我将非托管论坛添加到 iOS Discourse Hub 时,它必须定期轮询我的非托管论坛,这会引入延迟。
“无需二次登录”……我只是使用“使用 Apple 登录”,而且我认为 A2HS Web 推送的体验与 Discourse Hub 中的一样好。我点击登录,Apple 扫描我的脸,然后我就进去了。
“在页脚共享链接”我敢肯定我从没用过那个! 
2 个赞
sam
(Sam Saffron)
13
是的,差不多,我们会失去一些“chrome”,“折叠”到所有视图(向下三角形)的功能必须在其他地方实现。我不认为你可以控制页脚的按钮?
而且那会打开一个潘多拉的盒子,因为我们需要审查哪些网站允许出现在“Web Hub”上,哪些不允许,这将带来常规的工作,因为有超过 37,000 个网站。
是的……理想情况下,Apple 会提供仅用于支持应用程序中 Web 推送的 API,这样我们就不会依赖于通知的仲裁者。
实际上,在修改一些内部身份验证的东西之前,我们部分受阻。如果启用了 2FA,则不能使用第三方身份验证。我们不允许两者兼有,并且内部有一项政策,即所有员工的帐户在开发和元(meta)上都启用了 2FA。我们会改变这一点……但不是本周。
1 个赞
tomtjes
(Thomas Reintjes)
16
这应该可以实现,对吧?我使用另一个 iOS 上的 PWA,它有自己的自定义页脚。
1 个赞
这里有一个更新 
我们今天发布了一个官方主题组件,将向 iOS 用户在 iPhone 或 iPad 上展示,鼓励他们将论坛添加到主屏幕作为 PWA。
3 个赞
Stephen
(Stephen)
拆分了此话题
18
dfabulich
(Dan Fabulich)
22
我已在主题组件的帖子中继续了对话。我同意,默认文本提及需要 A2HS 才能接收推送通知似乎更明智。