【问题标题】:Store temporary data outside of iOS app在 iOS 应用程序之外存储临时数据
【发布时间】:2013-08-01 15:44:57
【问题描述】:

我有一个应用程序,它为每个客户(想想餐馆等)提供了唯一的品牌。我需要让用户能够点击一个链接到我的服务器,其中包含一个唯一的代码,临时存储在 iOS 设备上(cookie 等),然后将它们定向到应用商店以下载应用。然后,当它被下载时,应用程序会抓取该 cookie 或临时文件。该客户的应用程序发布和品牌数据。我知道这在 Android 上是可能的,但在 iOS 上可以吗?

在这种情况下,先下载应用程序然后选择品牌(或餐厅)是不可行的,因为该网址将与同一业务的其他客户共享,我们希望创造一种流畅的体验,而他们不会能够“看到幕后”并选择不同的品牌。

谢谢

编辑 谢谢大家的回复。我们已经重新评估并考虑在设备上打开 url 并获取 IP 地址或另一个唯一 ID,并将其与正确的品牌一起保存到数据库中。然后,该应用程序将在启动时连接到数据库,如果 IP 匹配,则会相应地进行品牌宣传。但是,我们正在寻找比 IP 更可靠的标识符。现在 UDID 已被弃用,还有其他我们可以使用的标识符吗?

【问题讨论】:

  • 很遗憾,App Store 指南明确禁止从 Internet 下载其他代码以在您的应用中运行。
  • 除非应用程序在安装后动态标记,否则您必须向应用程序商店提交大量版本,这可能导致您出现审批问题。如果您可以预先为您的用户提供用户名和密码,那么您可以在首次登录时为应用添加品牌。
  • @harrym17:它不一定是额外的代码。而是用于公司徽标的图像和用于标签等的文本字符串。
  • 那么,如果您在市场上有多个客户(比如两家餐厅),并且客户尝试为他们两个都下载您的应用程序,这将如何工作?即使您可以识别用户,我也不知道如何将其转化为良好的用户体验。
  • @RobNapier 我们对此并不担心。不到 1% 的用户会需要多个品牌。如果需要不同的品牌,它将覆盖以前的品牌。

标签: ios caching app-store


【解决方案1】:

我认为您提出的网络服务器链接设计是问题所在。您应该有一个完全基于应用程序的解决方案。也许您可以将网站上的相同服务作为一个应用程序提供,然后在粘贴板中设置代码。然后用户启动实际应用程序,该应用程序会查看粘贴板并相应地自行设置皮肤。

话虽如此,除其他几种方式外,还可以使用 UIPasteboard 在来自同一应用种子 ID 的应用之间共享数据。

我使用粘贴板在应用程序之间快速轻松地共享信息。

【讨论】:

    【解决方案2】:

    您可以使用 identifierForVendor(UDID 替换)来识别单个设备。您是否计划在最终用户在最终位置“注册”设备之前收集这些标识符?否则,您将永远无法确定哪个设备属于哪里。

    让最终用户以该餐厅的身份登录您的服务器怎么样?它可以是每个餐厅的通用登录名,例如“Wendys/Wendys5?”和“麦当劳/麦当劳7!”来确定他们的 App Store URL。只要密码很容易猜出且非程序化,他们就不太可能知道如何注册为不同的餐厅。你也可以做一个简单的餐厅选择屏幕,加上每个连锁店的密码,但这会暴露给用户哪些其他餐厅正在使用该应用程序。这样一来,您就不必在扩展位置时不断添加 IP,并且在登录被盗时可以撤销凭据。

    不过,有一个问题:您的所有客户是否都明白他们必须将 AppleID 绑定到每台设备?您只能在 20 台设备上共享一个 AppleID。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-07-28
      • 1970-01-01
      • 1970-01-01
      • 2015-05-11
      • 1970-01-01
      • 2015-10-29
      • 1970-01-01
      • 2014-01-16
      相关资源
      最近更新 更多