Questions? Feedback? powered by Olark live chat software

特性

 

基于终端的工作流程

创建项目,在模拟器中调试项目,部署项目到真实机器,打包应用——所有的一切都只需要一条命令。

 

自由选择趁手的代码编辑器

通过 RubyMotion,你可以继续使用趁手的代码编辑器。RubyMotion 支持流行的编辑器,你无需再使用 XCode 和 Eclipse。

 

包容与扩展

RubyMotion 拥有众多专有的 gems 供开发者选用,对于 iOS 和 OS X,我们原生提供 CocoaPods 支持。

 

交互式开发

RubyMotion 提供的交互式终端(REPL)可以让你在熟悉的终端软件下自由地测试 iOS,OS X 以及 Android API。

 

内建测试

RubyMotion 内建了一套行为驱动测试框架(BDT),并为移动平台测试做了扩展。每一个 RubyMotion 项目都默认集成了该测试框架。

 

调试

RubyMotion 内建了一个全功能调试器,支持模拟器与真实机器调试,可以方便的帮助你找出问题的根源。

 

支持 iOS、Android 以及 OS X 平台

对于每一个支持的平台,你都可以调用所有原生的 API,包括来自最新版系统的 API。项目开发完成之后,应用可以提交到各自平台对应的应用商店。

 
 
  • iOS

  • 支持 iOS 系统 5.0, 5.1, 6.0, 6.1, 7.0, 7.1, 8.0, 8.1, 8.2 以及 8.3 (最新)。
  • 可以使用 iOS 提供的所有 API。
  • 支持 ARM 32 位和 64 位架构编译。
  • 支持 iOS 模拟器与实体机的交互式测试。
  • 使用第三方 C 以及 Objective-C 库。
  • 提交应用到 iOS App Store。
 
  • Android

  • 支持 Android 系统 3.2, 4.0, 4.1, 4.2, 4.3, 4.4, 5.0 以及 5.1 (最新)。
  • 可以使用 Android 提供的所有 API。
  • 支持 ARM 32 位和 64 位架构编译。
  • 支持 Android 模拟器与实体机的交互式测试。
  • 使用第三方 Java 包文件(JAR)。
  • 提交应用到 Google Play。
 
  • OS X

  • 支持 OS X 系统 10.7, 10.8, 10.9 以及 10.10 (最新).
  • 可以使用 OS X 提供的所有 API。
  • 支持 Intel 32 位和 64 位架构编译。
  • 支持 Mac 电脑上的交互式测试。
  • 使用第三方 C 以及 Objective-C 库。
  • 提交应用到 Mac App Store。
 

这幕后,一切都是原生的

 
 

统一的运行时环境

在 iOS 以及 OS X 系统之上,RubyMotion 基于 Objective-C 的运行时库和 Foundation 类实现了 Ruby 语言(参见原理)。 在 Android 系统之上,RubyMotion 基于 Android Java 运行时库、Dalvik 以及 ART 实现了 Ruby 语言。 (参见原理)。

由于这种异常紧密的集成,Ruby 可以自如的调用各平台的接口而不会产生任何性能损失。

你可以轻松自如的混编 Ruby 和 Objective-C 或者 Ruby 和 Java,自由的访问各平台提供的最新的 API,自由调用各种第三方库。

 

完全编译

RubyMotion 使用基于 LLVM 构建(参见原理)的革命性的、先进的预编译器(AOT Complier)将项目中的 Ruby 代码编译成经过优化的机器代码。

在 iOS 以及 Android 项目,编译器可以生成 32 位和 64 位的 ARM 目标代码,在 OS X 项目则可以生成 32 位和 64 位的 Intel 目标代码。

原始的 Ruby 代码不会出现在程序中,也不会在运行期间被解释执行。RubyMotion 的典型项目的程序包大小在 1MB 以下。

 

自动管理内存

在 Ruby 语言中,你无需考虑内存管理事宜。因为,RubyMotion 会自动释放内存中那些你创建的但是却不再会被使用的对象。

针对 iOS 和 OS X 平台,我们提供了一个自定义的内存模型,在设计上类似 Objective-C 的 ARC 机制。这个模型无需再使用额外内存或者代码来处理不再使用的对象的声明和回收。

针对 Android 平台,我们使用 Java 运行时环境的 GC 来管理内存。

 

支持并行

绝大多数 Android 设备以及最新的 iOS 和 OS X 硬件都支持多核处理器。所以在设计应用程序时,考虑到支持并发是非常重要的。

RubyMotion 被设计成没有全局锁且是可重入的(re-entrant),主要目的就是可以让代码并行的执行。

针对 iOS 和 OS X 平台,RubyMotion 为 Grand Central Dispatch 提供了方便的接口,你可以自如的使用 CPU 核心来平衡需要大量计算的任务。

 

我们为您做到了

 
 

久经实战的核心

RubyMotion 基于 MacRuby。MacRuby 是由 Apple 维护 4 年之久的广泛使用的一种 Ruby 实现。其主要目的是为 Ruby 创建一个强健的预编译器。

基于坚实、稳定的代码,MacRuby 的原作者正在维护 RubyMotion,因此你可以放心使用 RubyMotion。

 

App Store 兼容

RubyMotion 百分之百兼容苹果 App Store 和 Google Play 的政策。你的代码已经经过预先编译,而非运行时解释执行。你可以自如调用 iOS、OS X 以及 Android 的所有公开 API。

一旦编译完成,RubyMotion 开发的应用便与 Objective-C 和 Java 开发的应用别无二致。

看谁在用 RubyMotion?

阅读成功案例