iPhone&;相同应用的iPad版本?

iPhone&;相同应用的iPad版本?,iphone,cocoa-touch,ipad,Iphone,Cocoa Touch,Ipad,我有一个iPhone应用程序,我想创建它的iPad版本。当您想要iPhone和iPad版本的应用程序时,设置项目的最佳方式是什么 我看不出我能够使用相同的代码库,因为iPad版本将具有iPhone版本所没有的功能。似乎同一个应用程序的维护将增加两个相似的代码库。因为功能应该相似,但布局是分开的,代码库s/b可以,但ib应该改变-使事情变得更简单;现在,v4.0是一个不同的答案:)维护将增加一点。但如果你的应用程序编写得足够抽象,那么将其移植到其他设备应该相当容易。(例如,如果您从未假设您总是知道

我有一个iPhone应用程序,我想创建它的iPad版本。当您想要iPhone和iPad版本的应用程序时,设置项目的最佳方式是什么


我看不出我能够使用相同的代码库,因为iPad版本将具有iPhone版本所没有的功能。似乎同一个应用程序的维护将增加两个相似的代码库。

因为功能应该相似,但布局是分开的,代码库s/b可以,但ib应该改变-使事情变得更简单;现在,v4.0是一个不同的答案:)

维护将增加一点。但如果你的应用程序编写得足够抽象,那么将其移植到其他设备应该相当容易。(例如,如果您从未假设您总是知道屏幕大小,那么您应该能够相当容易地更改它)


对于其他事情,这可能有点困难。然而,如果你使用思维范式,你应该能够同时开发这两个应用程序,而只需要大约1/3的额外工作。(保持相同的模型和控制器,只交换视图,或者,您可以在其中包含控制器,但我不会)。

重构公共部分并创建新目标。你是唯一一个真正知道最好的方法是什么的人

本周我自己也经历了这个思考过程,发布了一个iPad应用程序,我想创建一个iPhone版本,我决定使用通用应用程序方法。我发现它非常适合我的需要。一旦你解决了项目设置问题,以及在何处以及如何拆分iPad/iPhone特定代码的设计决策策略,通用应用程序框架就相当棒了

在此过程中,我创建了一个可重用的通用应用程序项目模板,然后将其用作我的通用应用程序的起点。代码是开源的,托管在github上,我鼓励您将其作为解决问题的一种方法,因为我知道这是一个经过测试的解决方案,对我来说很有效。(此外,我欢迎任何希望帮助使其成为更有用项目的人的任何贡献)

github链接是:

在维护方面,我对支持这两种设备所需的最小附加工作非常满意。当然,这比只支持一个或另一个代码要复杂得多,但它的维护要比两个独立的代码库少得多,因为在这两个代码库中,业务和应用程序逻辑几乎是相同的


总而言之:我坚信,使用通用应用程序是创建在iPad和iPhone上运行的应用程序的最佳方法。

这是在您希望使用两种不同应用程序的情况下最好的方法。我还没能开发出一款我满意的“通用”应用程序。我更喜欢2个不同的应用程序的2个不同的目标。我知道纯粹主义者会不喜欢这个…我并不是很容易选择这个方法,但它适用于我的应用程序。可能是重复的