将 iPad 支持添加到 iPhone 项目:通用与两个独立的应用程序? [关闭]

Posted

技术标签:

【中文标题】将 iPad 支持添加到 iPhone 项目:通用与两个独立的应用程序? [关闭]【英文标题】:Adding iPad support to an iPhone project: universal vs two separate apps? [closed] 【发布时间】:2012-02-09 06:26:12 【问题描述】:

我有一个现有的 iPhone 应用程序,现在我的大部分用户似乎都在 iPad 上运行它(我可以判断,因为我从用户那里收到的很多电子邮件都有“从我的 iPad 发送”的签名) .

我现在正在实现 iPad 版本,并且使用相同的代码库来实现,这样做很方便。但是当我完成后,我想知道我是否应该将它作为一个通用应用程序发布。我可以将其作为单独的全新 iPad 专用应用上传。

如果我让它通用:

✓ 我现有的 iPad 用户在更新并突然看到 iPad 支持时会很高兴。 ✓ 我从现有的应用排名/流量中受益,不必从头开始构建它。 ✗ 我的 iPhone 用户将免费看到更新。 ✗ 用户评分可能会令人困惑,因为这两个版本完全不同

如果我让它们成为两个独立的应用程序:

✓ 我可以为 iPhone 和 iPad 设置不同的定价 ✗ 在 iPad 上使用我的 iPhone 应用程序的现有用户不会知道他们有新版本。如果他们发现了,必须迁移他们的数据会惹恼他们。就像再次为此付出代价一样。

我是否遗漏了任何其他可能有助于决定采取哪条路线的权衡?有没有人可以分享走这两种路线的经验?

【问题讨论】:

措辞得当 - 对开发人员来说非常重要的问题。对版主关闭它感到羞耻。我知道这不是纯粹与代码相关的——但很多关于 SO 的开发人员问题不仅仅是代码——而且这个问题也是我正在寻找答案的确切问题——措辞比我做的要好得多。跨度> 感谢您的精神支持!我得到了有用的答案(包括事实、参考资料和具体的专业知识,引用下面的方框),这对我很有帮助。但我能理解适度的必要性。 【参考方案1】:

没有其他办法。你应该通用。

反对拥有通用应用程序的唯一原因是定价不同(我认为这可能会激怒客户。尤其是在 iPad 上使用该应用程序的现有客户)。

我可以想出很多理由:

客户会看到通用支持的应用更新警报。制作单独的 iPad 应用意味着您必须手动联系 iPad 客户以通知他们

代码更易于管理。如果您正在创建一个为表/视图提供信息的数据处理类怎么办?为什么要在两个不同的项目中拥有相同代码的两个副本?如果您将来修复了一个错误并且必须在不同的项目中进行两次相同的修复怎么办?

拥有一个通用的应用程序会让你看起来更专业的开发人员

随着您的项目不断发展,拥有两个不同的应用程序在进行更改、运行更新等方面将是一场开发噩梦。

一些第三方库需要某种形式的应用程序 ID 才能运行。存在其他要求您为每个应用程序实施付费的情况。当您可以在一个通用应用中完成不同的应用时,为什么要为不同的应用支付两次费用?

客户体验 - 拥有 iPhone 和 iPad 的用户会期望使用 iCloud 等在他们的 iPhone 和 iPad 之间同步一定数量的应用程序。我认为用户不会很高兴知道他们的数据没有在他们的设备之间同步。

必须为另一台设备再次购买一台设备的应用内购买(这对客户不利)。

...我可以继续一整天。总而言之,除非你有很好的理由拥有单独的应用程序(老实说我想不出任何),否则通用。通用应用程序给人以干净、精心构建和专业制作的印象。它们给客户留下了良好的印象,并且对开发人员来说管理起来轻而易举。

为 iPhone 和 iPad 制作两个独立的应用程序就像将一个网站拆分为不同的独立版本,并为不同的浏览器使用各自的域名......这没有任何意义 :)

【讨论】:

回答得很好 - 但我不会打折“单独价格”优势论点。似乎用户准备为 iPad 体验支付额外费用。我没有经验,但我注意到像 InstaPaper 这样的流行应用程序成功地做到了这一点。如果单独的价格策略有效,并显着提高了底线,那么这会超过所有其他缺点,不是吗? 确实如此,但随着新的 ios5 变化(尤其是 iCloud 同步),用户会期望应用程序实现之间存在某种协同作用。此外,在设备同步期间备份应用程序时,我有点认为对同一应用程序(针对 iPhone 和 iPad 版本)进行两个单独的备份可能最终会变得笨拙。无论如何,我并不是说单独定价应该被诅咒:),但是由此产生的缺点列表也会很多(我现在可以想到一个 - 在应用程序购买中。iPhone 的应用程序购买需要是为 iPad 实施再次购买) 不管怎样,你确实提出了一个观点;但我要说的是,尽管它确实发生了,但大多数应用程序正在普及。 作为一个相当成功的应用拆分实例的开发者,拆分定价是可行的,甚至不得不重新购买应用内的功能会惹恼人们,但他们仍然需要付费。我们重复使用了很多 iPhone 屏幕,但最终 iPad 上的屏幕空间更大,我们投入更多精力来增加这些空间的价值。他们支付额外的开发成本。代码库是共享的,因此所有核心部分都得到更新,然后 iPhone 和 iPad 有适当的子类,所有细节都得到调整。那就是说我在这篇文章中是因为我们正在考虑一个通用模型。 :) 您无需使用单独的代码来管理两个单独的应用程序。你只需要另一个目标..【参考方案2】:

我看到了一篇有趣的博文(如下),其中显示如果你有单独的应用程序,你会降低你在 iTunes 上的下载排名。

http://www.cocoanetics.com/2011/05/to-universal-or-not/

【讨论】:

非常有说服力的见解!谢谢!

以上是关于将 iPad 支持添加到 iPhone 项目:通用与两个独立的应用程序? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

Xcode 8.1 无法将 iPad 故事板添加到具有现有 iPhone 故事板的通用应用程序

iPad\iPhone应用结构

将 iPad 应用程序转换为通用应用程序的 iOS 不显示 iPhone 的 appIcon

如何将 iPhone 版本添加到已经在 App Store 上的 iPad 应用程序

Xcode 6 - 通用图像支持的 xcassets

Cordova 3.6.0:只添加 iphone 支持,根本没有 ipad