代码之家  ›  专栏  ›  技术社区  ›  hotpaw2

对于iOS和Mac OS X,什么是合适的跨平台方法?

  •  3
  • hotpaw2  · 技术社区  · 14 年前

    对于设备的跨平台框架(iPhone+Android)和台式机的跨平台框架(Mac+Win+Linux),似乎有很多答案。对于开发设备操作系统和桌面操作系统之间跨平台可移植的本机应用程序(不仅仅是web应用程序)的合适框架、方法、模板应用程序、教程或只是有用的提示,这是一个不同的问题。

    我想写一个既能在iPhone(或iPad)上运行,又能在macosx上本机运行(而不仅仅是在模拟器中运行)的应用程序。我愿意只使用两个平台通用的基本UI元素(只有一个窗口、通用按钮、文本字段等)

    构建一对应用程序的最佳方法是什么?ifdef和其他特定于平台的代码重写次数最少,可以在我的iPhone和MacBook上运行?

    2 回复  |  直到 14 年前
        1
  •  3
  •   Brad Larson    14 年前

    Core Plot 框架,它使用几乎相同的代码基在Mac和iOS上显示图形。有一些特定于平台的东西需要调整(比如UIView应用于其底层的反转坐标系),但是大部分代码都将转换到这两个平台。

    到目前为止,我提到的项目都在Model-View-Controller设计模式的视图部分。您的控制器代码将是特定于应用程序的,但您可能能够使大多数平台独立。如果您使用一个简单的模型,或者甚至是一个依赖SQLite或核心数据进行持久化的模型,那么使用相同的代码在Mac和iOS上工作应该是微不足道的。

        2
  •  1
  •   P i    11 年前

    我也在努力解决这个问题;我使用的是Unity3D,而且免费许可证不允许使用本机osx插件。

    我刚刚花了一个小时通读了一遍 http://rayvinly.com/how-to-build-a-truly-universal-framework-for-ios-and-mac-with-just-a-single-codebase/

    雷做了一个超级演示,你可以下载他30页的电子书文档!他还提供了一个模板项目。

    我想我可以使用这个设置来创建一个绘图面(所以,两个平台上都有一个窗口),我可以使用SpriteKit来绘制它。

    然后包装鼠标/触摸输入以创建统一的输入。

    至于现成的框架, http://chameleonproject.org/

    http://kivy.org/#home

    阿尔索 http://polycode.org/ http://qt-project.org/

    你最后选择了什么?