motion-testflight allows RubyMotion projects to easily embed the TestFlight SDK and be submitted to the TestFlight platform.
-
RubyMotion 1.0 or greater (see www.rubymotion.com).
-
A TestFlight account, can be obtained for free at testflightapp.com.
$ sudo gem install motion-testflight
-
Download the TestFlight SDK package from testflightapp.com/sdk/download/ and unpack it into the
vendor/TestFlightSDKdirectory of your RubyMotion project. Create thevendordirectory if it does not exist. You should have something like this.$ ls vendor/TestFlightSDK README.txt libTestFlight.a TestFlight.h release_notes.txt
-
Edit the
Rakefileof your RubyMotion project and add the following require lines.require 'rubygems' require 'motion-testflight'
-
Still in the
Rakefile, set up thesdk,api_tokenandteam_tokenvariables in your application configuration block.Motion::Project::App.setup do |app| # ... app.development do # ... app.testflight do app.testflight.sdk = 'vendor/TestFlightSDK' app.testflight.api_token = '<insert your API token here>' app.testflight.team_token = '<insert your team token here>' app.testflight.notify = true # default is false app.testflight.identify_testers = true # default is false end end end
You can retrieve the values for
api_tokenandteam_tokenin your TestFlight account page.If you’re using Testflight 1.2 or above, you should also add the app_token.
# ... app.testflight do # ... app.testflight.app_token = '<insert your APP token here>' end
-
(Optional) You can also set up distribution lists, if needed.
Motion::Project::App.setup do |app| # ... app.testflight.distribution_lists = ['CoolKids'] end
motion-testflight introduces a testflight Rake task to your project, which can be used to submit a development build. The notes parameter must be provided, and its content will be used as the submission release notes.
$ rake testflight notes="zomg!"
Copyright (c) 2012, Laurent Sansonetti <[email protected]> All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.