ライブラリのコードは予め書いておき、またrubygemsに公開するなら、
そのアカウントを取得しておく。
適当なフォルダで
# bundle gem motion-hogehoge
で、gemの雛形を作成
.gemspecに必要な項目を入力。
依存ライブラリがある場合は、ここに
gem.add_dependency "bubble-wrap", "~>1.1.4"
などと追記しておく。
次に、lib/motion-hogehoge.rbというファイルができているので、ここを修正。
rubymotionではrequireが対応していないので、rubymotion用に書き直す必要がある。
以下がサンプル
unless defined?(Motion::Project::Config) raise "This file must be required within a RubyMotion project Rakefile." end Motion::Project::App.setup do |app| Dir.glob(File.join(File.dirname(__FILE__), 'motion-hogehoge/*rb')).each do |file| app.files.unshift(file) end end
ライブラリのコードは、lib/motion-hogehoge/以下に入れておく。
rubygemsに登録する場合は、テストが通ってる必要がある。
とりあえず通すだけなら、以下でOK。
class AppDelegate def application(application, didFinishLaunchingWithOptions:launchOptions) @window = UIWindow.alloc.initWithFrame(UIScreen.mainScreen.bounds) @window.rootViewController = UIViewController.alloc.init @window.makeKeyAndVisible true end endspec/main_spec.rbに
describe "Application 'modeltest'" do before do @app = UIApplication.sharedApplication end it "has one window" do @app.windows.size.should == 1 end end
で、
#bundle install
#rake spec
でテストが通ることを確認する。
問題がなければ、
gem build motion-hogehoge.gemspec
で、gemファイルを作成し、
gem push motion-hogehoge-0.0.1.gem
で、rubygemsにアップする。
アップするときに取得したアカウント情報が聞かれるので入力すればOK。