可以轻松扩展iphone应用程序以便在Mac App Store上发布吗?

时间:2011-01-28 12:30:10

标签: iphone macos app-store

纽比问题。我们有一个现有的iPhone / iPad应用程序。我们该怎么做才能将这个应用程序用于Mac App Store?我们是否分支项目并单独开发Mac代码,或者我们是否可以配置现有项目以便为所有设备构建(目前适用于iPhone和iPad)。

感谢您的帮助和意见。

5 个答案:

答案 0 :(得分:4)

嗯,你必须意识到的最重要的事情是iOS和Mac OS X的界面范例有很大的不同。如果你想移植你的应用程序,它将不仅仅是调整分支代码并为Mac编译基本相同的应用程序。

您的Mac和iOS应用可以共享相同的实施代码,因为它们是相同的应用程序!但是,向Mac用户和移动用户展示应用的方式将会有所不同。例如,Mac OS X在侧边栏,对话框,面板,窗口(没有双关语意图)和点击中进行思考,而iOS则考虑单张,视图和触摸。

我意识到这比其他答案更具理论性,但这只是一个让你思考的小提示:)

答案 1 :(得分:2)

准备将项目移植到Mac OS X:

  1. 您应该尽可能地将数据对象与GUI对象分开,以符合MVC设计模式,这也适用于Mac OS X.这样您就可以重用尽可能多的代码。< / LI>
  2. 每个项目都应该有一个Mac OS X目标以及iOS目标。
  3. GUI是不同的,因此您应该以GUI仅提供数据而不保留数据的方式规划应用程序。使用委托,协议,通知等在对象之间传递数据。
  4. 使您的项目尽可能模块化
  5. 希望有所帮助

答案 2 :(得分:1)

iOS和Mac OS不同,无法轻松混合。但是,您可以在一个针对Mac OS应用程序的新项目中共享支持iOS应用程序的代码。所以我认为你需要做的大部分工作是管理(不同的项目)和基于UI的。

请记住,在创建UI元素(XIB)时,您无法在项目中共享这些元素,它们必须位于本地项目的目录结构中。

祝你好运!

答案 3 :(得分:1)

iphone上的GUI使用UIKit,mac os X上的GUI使用AppKit。 虽然它们有一个共同点,那就是Foundation,它包含NSData,NSString等。

唯一可以在mac app store上重复使用的代码将是基础“低级”代码。 UIKit不能在Mac OS X上运行

答案 4 :(得分:1)

我的猜测是你需要一个单独的xCode项目。您可以在一个项目中完成所有操作,但是当您想要切换目标平台时,配置设置会很困难。

您可以为公共代码创建共享库。

我希望这些链接可能有用。

祝福, xj1200

http://t-machine.org/index.php/2009/02/26/using-shared-libraries-for-iphone-with-multiple-projects/

http://blog.stormyprods.com/2008/11/using-static-libraries-with-iphone-sdk.html

http://www.clintharris.net/2009/iphone-app-shared-libraries/