【问题标题】:Firebase Storage - How to install iOS over-the-airFirebase 存储 - 如何通过无线方式安装 iOS
【发布时间】:2018-07-24 17:49:42
【问题描述】:

iOS OTA 安装不适用于 Firebase 存储,我猜这是因为存储 URL 附加了查询字符串,如下所示:

https://firebasestorage.googleapis.com/v0/b/some_project%2Fmanifest.plist?alt=media&token=some_token

当我使用以 .plist 结尾的 Amazon S3 URL 时,它工作正常,当我删除查询部分时,以下代码至少会响应——尽管它说它无法连接:

let url = URL(string: "itms-services://?action=download-manifest&url=\(str)")! UIApplication.shared.openURL(url)

查询字符串到位后,它甚至没有响应。

我进行了一些搜索,这并不是因为 URL 没有进行百分比转义。 S3 URL 也没有百分比转义,但运行良好。

简而言之,我的问题是

  1. 是否可以使用 Firebase Storage 安装?
  2. 如果没有,是否可以安装预先下载plist文件的应用程序?

谢谢。

【问题讨论】:

    标签: ios firebase firebase-storage ota


    【解决方案1】:
    1. 可以使用 Firebase 存储安装应用程序 OTA。

    问题是使用itms-services 方案时,无法解析查询字符串。此外,转义 URL 的百分比也不起作用,因为 Firebase 无法识别 URL 并返回 404。

    但是,这可以使用Google URL shortener 来规避。 缩短的 URL 被解析而没有错误。

    还值得一提的是,manifest.plist 文件中的 URL 不必缩短 - 尽管您可以。但是,如果您决定按原样使用 URL,请确保 URL 中的 & 在 XML 中使用 & 进行转义。

    我提到这一点是因为虽然 Xcode 为您转义了 &s,但 .ipa 文件的 URL 只有在上传到 Firebase 存储后才能知道,并且在您修改 plist 时很容易忘记转义 &手动更新安装文件 URL。

    1. 预下载 plist 文件不起作用。

    【讨论】:

      猜你喜欢
      • 2017-05-25
      • 1970-01-01
      • 2020-03-25
      • 2018-12-28
      • 1970-01-01
      • 1970-01-01
      • 2022-08-04
      • 2015-12-23
      • 1970-01-01
      相关资源
      最近更新 更多