注意:这与大多数类似问题的方向相反!
我有一个iPhone应用程序,我想在Mac上提供一个演示.将iPhone应用程序重新编译(或重写)到Mac应用程序有多难,假设我打算保持相同的屏幕大小,而不用担心让我的应用程序看起来像"mac-like"?
是否可以在iPhone SDK中分发iPhone模拟器apple提供的应用程序副本?要求人们自己去安装它似乎是一个主要的要求.
总的来说,大多数"核心"框架也出现在Mac上.作为thimb的规则,任何启动NS的类都将出现在桌面上 - NSString,NSArray和NSObject等.这有望意味着您的所有引擎代码都将简单地重新编译和运行.
一些中间件也是如此 - 所有的iPhone Quartz都将出现 - 开始CG的类和类型......如果你使用3D,桌面上有OpenGL,但它是完整的OpenGL,而不是iPhone的OpenGL ES.有一些差异,但您的代码将很容易移植.
您肯定需要重新编码的是UI.不仅因为AppKit不存在,而且因为iPhone所需的UI设计通常无法在桌面上运行.iPhone支持多点触控,没有(有意义的)重叠窗口.同样,如果您使用iPhone的任何硬件,则必须重新实现 - 加速度计和GPS显然无法在桌面上使用.在这两种情况下,经验法则是启动UI的类...特定于iPhone.
如果您在编写应用程序时遵循Apple的MVC设计指南,那么将保持与UI相关的代码与引擎代码完全分离,并且移植应该更容易.