M3 上的 Chrome 显示为 Intel Mac,因此我们的下载页面设有三个按钮,无需猜测。
notifio.app/download 页面提供了三个明确的下载按钮,而非尝试自动检测用户平台。这一设计选择解决了常见的问题:浏览器(尤其是在 Apple Silicon Mac 上)常错误报告其架构为 Intel,导致用户下载不兼容的文件。使用用户代理字符串或 WebGL 渲染等方法进行自动检测并不可靠,可能导致糟糕的用户体验且无清晰的恢复路径。该页面为 Apple Silicon 和 Intel Mac 提供独立的下载选项,并将 Apple Silicon 作为首选。这些按钮不直接链接到可下载文件,而是指向内部路由。该路由作为一种安全措施,利用白名单和有效期为六十秒的预签名 URL 访问私有存储。这种间接方式提供了灵活性,例如在更改发布文件名或存储提供商时,无需修改下载页面本身。此外,若因配置缺失导致下载暂时不可用,该机制还能提供更 informative 的错误信息。下载页面还包含以 SoftwareApplication 节点形式的结构化数据。该节点使用稳定的"@id"以确保其在多个页面中始终指向同一应用程序,并刻意省略聚合评分信息,因为该应用程序不收集用户评分。该节点中的操作系统信息准确反映了页面上向用户展示的内容。最终,避免自动平台检测并提供清晰的手动选择,是将用户体验置于可能存在缺陷的自动化之上的决策。