【问题标题】:Universal App - Only Update iPhone Version通用应用程序 - 仅更新 iPhone 版本
【发布时间】:2012-05-18 07:54:19
【问题描述】:

我目前正在对一个通用应用程序进行彻底的重新设计,但经理们决定他们首先要推出 iPhone 版本。问题是因为是完全重新设计,所以旧代码不花很多功夫就不能兼容新框架。那么有没有办法让我提交更新,以便只更新 iPhone 版本,而 iPad 版本继续使用旧版本?

感谢任何帮助,谢谢。

【问题讨论】:

  • 我猜如果您这样做,iPad 用户会收到更新通知,因为它已经安装在他们的 iPad 上,并且可以将 iPhone 应用程序下载到您的 iPad 上。

标签: iphone ios ipad


【解决方案1】:

为此,您必须在一个项目中维护两个代码树,并确保 iPad 使用旧代码而 iPhone 使用新代码。这包括使用其现有库等的旧代码。这听起来有点像一场噩梦,但我相信这是可以实现的,可能值得在 xcode 中创建两个不同的树(读取文件夹)以使划分清晰......

只要您有更新,它将适用于所有设备,因此可能值得说明更新仅影响 iPhone 版本。

【讨论】:

  • 你的意思是 [if device = iPhone (use new code), else (use old code)] ?
  • 理论上可以,但您需要决定如何在每个点拆分代码。假设新版本是一个完整的重写,那么基本上你只需要在应用程序委托中添加一次这个比较,就可以让你走上当前设备的正确道路。
  • 这是我试图避免的选项,因为某些类具有相同的名称,并且重新设计的版本使用 ARC。所以如果我这样做,代码将不得不一起被破解。
  • 你可以为类名使用不同的前缀,它可能看起来有点难看,但在你过渡时应该可以工作
【解决方案2】:

不,没有办法做到这一点。由于它是一个通用应用程序,当您将其发布到商店时,更新将同时推送到 iPad 和 iPhone。没有任何解决方法会阻止该版本也出现在 iPad 上。

【讨论】:

    【解决方案3】:

    如果@Paul.s 的回答不可行,请将通用目标转换为仅适用于 iPhone 的目标并在 AppStore 中更新它,并放置一个全大写的应用商店描述,要求 iPad 用户不要更新。

    【讨论】:

    • 没有第二个想法。这比最差的选择稍微好一点(即,等到手机和 ipad 都可以更新)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多