RubyMotion 3.0, Android, WatchKit, a 30 day trial, a new website, and a new pricing model
This is exciting news for the RubyMotion community, Android is huge. The 30 day trial is big too and will help RM grow. The new website is great.
Happy coding, Todd Werth (@twerth)
RubyMotion News
Announcements from HipByte:
Announcing RubyMotion 3.0: Android Platform, WatchKit Apps, and More
RubyMotion 3.30 released
- [Android] RubyMotion for Android support has been merged. Please refer to the pre-release NEWS file for past changes, and check out our developer guides for more information about this new platform support.
- [iOS] Added support for WatchKit applications.
- Add a target to your iOS application by creating a WatchKit project with the command:
$ motion create MyWatchApp --template=ios-watch-extension
and then configure your iOS application by adding:
app.target 'path/to/MyWatchApp', :extension
- Then from the root of your iOS application, not the WatchKit application, invoke
$ rake watch
to build your iOS and WatchKit applications and launch the WatchKit application on the simulator. - Additional launch options are
type=glance
for Glance applications,type=notification payload=path/to/payload.json
for Notification applications, anddisplay=regular
ordisplay=compact
to launch the 42mm or 38mm Watch displays respectively.
- Add a target to your iOS application by creating a WatchKit project with the command:
- [iOS] Added support for specifying launch images from asset catalogs.
- Added support for iOS 8.2 (beta). You will need to install an Xcode 6.2 beta to support it.
- [iOS] Fix `rake crashlog:device’ crash report symbolication.
- [iOS] Fixed a bug where Bundler wouldn’t be used when it will build Extensions and Frameworks.
- [iOS] Create a
UIViewController
,UINavigationController
, andUIWindow
in the default new application template. - [OSX] Only build for 64-bit (
x86_64
) by default. - [iOS] Enabled arm64 support by default for iOS projects.
- [iOS] Honour explicit
device_name
ortarget
specified by user. Specifying both is disallowed, because a device is configured for a specific SDK. - [iOS] Fixed a regression where Extension and Frameworks could not build for the iOS device platform.
- [iOS] Fixed a bug where `rake spec’ would return 0 as exit code even if it failed due to a crash.
- [iOS] Fixed a bug in `rake spec’ where #tap and #rotate_device were causing a crash when ran in 64-bit mode (simulator).
- [iOS] Fixed a bug where all rake task could not be run under the root directory of Extension or Framework, preventing CocoaPods libraries to be installed properly.
- [iOS] Fixed a bug where shared frameworks would not be built for 64-bit.
- [iOS] Fixed a bug where it was not possible to customize the Action and Share extension’s icon. The `app.icons’ property can now be set in the extension’s Rakefile.
- [iOS] Fixed a bug where extensions could not be built if Bundler was not installed due to a Pathname dependency.
- [iOS] Added launch images for iPhone 6 and iPhone 6 Plus. Thanks to Hwee-Boon Yar for the patch (pull request #170).
- [iOS] Fixed the “ERROR ITMS-9000” error when trying to submit an app that contained extensions. Thanks to Hwee-Boon Yar for patch.
- [iOS] Fixed a bug where the relative path cannot be used in `app.provisioning_profile’.
- [iOS] Fixed a bug where iPad simulator would not launch app as 64-bit even if app contains 64-bit binary. Changed default simulator to `iPad Air’.
- Fixed a regression where a link error would be caused in Xcode when trying to use a static library which was generated by `rake static’.
- Fixed a bug where the wrong Boxed object would be returned from an Objective-C method.
- Fixed the `motion support’ command invocation to print both the stable and pre-release versions of RubyMotion.
- Fixed a bug where a “Symbol not found” exception would be triggered when trying to use a constant which was not defined in an older SDK version.
- Fixed a bug which it would not solve framework dependencies in embedded frameworks.
- Fixed a memory leak when invoking blocks passed to Dispatch::Queue.
- Fixed a bug where `rake profile’ could not launch Instruments.app when being given the Instruments template with Xcode 6.2 Beta.
sudo motion update
64 bit
Will Raxworthy, here at InfiniteRed, noted that in version 3.0 of RM iOS, 64bit is turned on by default. Some gems and such aren’t working yet with 64bit. To turn it back to 32bit do this in your Rakefile:
app.archs["iPhoneOS"] = ["armv7"]`
Sponsor
My company InfiniteRed sponsors this newsletter by allowing me the time to work on it every week and hosting everything.
Contact us if you ever need help working on a project, mentoring, or other development services . We specialize in RubyMotion and have an awesome team.
If you have any tips, blog posts, or comments, please send emails to todd@infinitered.com