我可以使用 RubyMotion 为哪些平台编写应用?
RubyMotion 让你可以为 iOS(iPhone, iPad)、watchOS(Apple Watch)、Android(手机、平板、智能电视、可穿戴设备等)以及 OS X(笔记本电脑和桌面电脑)编写原生应用。
使用 RubyMotion 需要哪些准备?
你需要一台运行 OS X 10.9 或者更新版本的 Mac 电脑。
对于 iOS 开发,为了获取应用签名证书,你需要安装 iOS SDK 并加入到苹果公司的 iOS 开发者计划。如果你需要对你的程序进行真机测试,你还需要一台 iOS 设备(iPhone 或者 iPad)。
对于 OS X 开发,如果你计划在 Mac App Store 发布你的程序,你需要加入苹果公司的 Mac 开发者计划。
对于 Android 开发,你需要加入 Google Play 计划,还需要一台已经开启开发模式的 Android 设备。
请访问我们的开发者指南页面,获取针对各自平台的入门教程。
RubyMotion 是否可以运行在 Windows 或 Linux 平台之上?
RubyMotion 仅可以工作在 Mac 平台之上。
RubyMotion 如何授权?
RubyMotion 是 DragonRuby 公司发布的商业产品,并根据最终用户许可协议,使用每年订阅模式针对每个开发者授权。
授权有个人或者按座席两种模式,根据你在购买时使用的是你的个人姓名或者公司名而决定。
RubyMotion 的使用费用都有哪些?
RubyMotion 提供按年付费的订阅计划。请访问下载页面获取更多信息。没有其他专利权、隐藏以及其他名目的费用。一旦您购买 RubyMotion,赎概不提供退款服务。但是我们提供一个免费版本,可供您在决定购买之前对 RubyMotion 进行评估。
每一个订阅含一年软件更新。请求技术支持可以以一次 $99 美元的价格独立购买,专业版订阅每年提供四次免费的请求技术支持。一年期订阅结束之后,如果您想继续获取 RubyMotion 的更新,并使用技术支持频道,您需要付费续订您的订阅。即使您没有续订,您手上的 RubyMotion 拷贝仍然可以继续使用。
为什么不提供免费版本?
我们提供免费版的 RubyMotion Starter 可供您评估我们的产品。访问下载页面获取更多信息。请注意,一旦您选择购买 RubyMotion,赎概不提供退款服务。
我如何编辑或者取消软件订阅?
当您完成订阅付费之后,您会收到一封含有账单链接的电子邮件,您可以打开该链接编辑您的订阅。 一旦您选择购买 RubyMotion,赎概不提供退款服务。如果您有任何疑问,请联系我们。
我是一家大型公司,你们提供公司授权吗?
当然,请联系我们获取进一步信息。
我是一名在校学生,你们是否提供教育折扣?
我们提供教育折扣,请联系我们,并附上您的学生身份证明(例如学生证)。
我是一名独立开发者,我能在属于我的多于一台的计算机上面使用 RubyMotion 吗?
当然,你可以在属于您的所有电脑上进行 RubyMotion 开发。
如何进行软件更新?
RubyMotion 每天都会自动检测是否有新版本释出,并通知你。当然,只有当你使用 RubyMotion 的时候,才会去进行检测。
苹果应用商店允许上线用 Ruby 开发的应用吗?
提交到 App Store 的应用必须遵从苹果公司发布的《Review Guidelines》。RubyMotion 所实现的 Ruby 方言满足了苹果公司的要求。使用 RubyMotion 开发的应用都经过了编译,不会在运行期间下载和解释执行任何代码;并且可以同 Objective-C 开发的程序一样,使用 iOS 以及 OS X 提供的全部公开 API。
App Store 中已经有众多使用 RubyMotion 开发的程序。请访问我们的应用目录页面看看都有哪些线上应用使用了 RubyMotion。
是否提供 Xcode 或 Eclipse 支持?
尽管你可以通过配置 Xcode 和 Eclipse 来使得其提供 RubyMotion 支持,我们不对这些 IDE 提供开箱即用的支持。我们不认为这些 IDE 可以给 Ruby 开发提供良好的环境。Ruby 开发者倾向于使用他们所喜爱的文本编辑器。
Ruby 可以非常方便的创建领域专用语言(DSL),可以优雅地替代用户界面或者数据模型构建工具。请访问 Gems 页面,查看如何使用 Ruby DSL 来封装 UI 构建和数据库访问。
我可以在我的项目中使用 iOS、Android 以及 OS X 系统提供的哪些特性?
你可以使用全部特性。RubyMotion 对 iOS、Android 以及 OS X 系统提供的每一个公开 API 都予以支持。你可以在 Ruby 代码中自由调用 Objective-C、 Java 乃至纯 C API。我们提供最新版本的 iOS、Android 以及 OS X SDK 支持。请访问我们的运行库(Runtime)手册获取更多信息。
如何对比 RubyMotion 和 Objective-C / Swift / Java?
Objective-C 和 Swift 语言是苹果公司为 iOS 以及 OS X 开发提供的编程语言。它们同 Xcode IDE 捆绑在一起。Java 语言是 Google 公司为 Android 开发选定的编程语言,同 Eclipse 或 Android Studio IDE 捆绑在一起。
RubyMotion 可以让你用 Ruby 语言编写跟 Objective-C、 Swift 和 Java 实现相同的应用。它可以跨平台开发(同时支持 iOS、OS X 以及 Android),因此你可以在多个平台中共享代码。RubyMotion 不与任何 IDE 进行捆绑,你可以自由选择你所喜爱的代码编辑器。
Ruby 语言提供一个简洁的但是极具生产力和让开发者感到幸福的强大的语法。相比于 Objective-C、 Swift 和 Java 语言,Ruby 语言更易学习,并使得开发迭代更快速。
如何对比 RubyMotion 和 Web 开发技术?
市面上已经有产品让你可以使用 Web 技术(HTML、CSS 和 Javascript)来进行移动应用开发。这些技术都使用了 Web View 技术来运行代码,并为调用设备所提供的功能进行了桥接。
使用 Web 技术开发的应用可以跨平台,但是有一些负面因素。相对于原生应用,由于解释运行的特性,速度较慢,且一般不能调用平台提供的全部 API。同时,它们也不能提供经过优化的用户体验,从而使得用户难以一眼认出应用。类似 Facebook 以及 LinkedIn 这样的公司也已经开始放弃使用 Web 技术来实现他们的应用。
RubyMotion 提供了同使用 Web 技术相同的优势,但是避开了那些缺点:你可以使用极具生产力的语言——Ruby,你可以调用每个平台提供的全部原生公开 API。RubyMotion 开发的应用都经过了静态编译,因此运行速度非常快。
使用 RubyMotion 之前,我需要 Objective-C 或 Java 基础吗?
你只需要学习如何实现 Apple 以及 Google 的用户界面以及如何从 Ruby 中调用 API。这些都是非常直观的,我们在指南中提供了文档可以帮助你进行学习。除此之外,你无需学习 Objective-C 或者 Java 语言的其他部分。学习 Objective-C 或者 Java 语言对于不熟悉 C 语言的人来说,容易产生畏惧。
RubyMotion 社区已经提供了一些 Ruby Gems 可以让这些开发过程更简单。
我可以使用第三方提供的 Objective-C 或 Java 库吗?
当然。第三方 Objective-C 库可以被集成在 RubyMotion iOS 以及 OS X 想目中,Java 库(JAR)则可以被集成在 RubyMotion Android 项目中。iOS 以及 OS X 还提供 CocoaPods 集成,从而使得库依赖管理更简单。
我可以使用普通的 Ruby Gem 吗?
由于 RubyMotion 是 Ruby 一种静态编译的 Ruby 方言,普通的 Ruby Gem 不能在 RubyMotion 上工作。Gem 需要经过特殊的定制才能在 RubyMotion 项目中进行使用。请访问 Gems 查看可以在 RubyMotion 上使用的 Gem。
RubyMotion 是开源的吗?
RubyMotion 是部分开源,并使用了来自 MacRuby 的大量代码。MacRuby 是一个广受欢迎的开源项目,您可以访问关于我们页面获取更多有关 MacRuby 和 RubyMotion 项目的信息。
我如何才能获取 RubyMotion 的最新消息?
您可以在 Twitter 上面关注我们.