如何将命令行参数传输到RubyMotion应用程序?

时间:2014-11-08 12:54:13

标签: rubymotion

我希望我的RubyMotion应用程序能够在调用iOS模拟器时访问命令行参数。

rake foo=bar

我该怎么做?

2 个答案:

答案 0 :(得分:3)

最简单的方法是使用motion-env gem(https://github.com/clayallsopp/motion-env

#gemfile
gem "motion-env"

现在致电bundler install

然后更改您的rake文件以读取参数并在app对象上设置它们

#rakefile
Motion::Project::App.setup do |app|
    app.name = 'my cool app'
    app.env['foo'] = ENV['foo']
end

最后访问应用程序中的变量

class AppDelegate
    def application(application, didFinishLaunchingWithOptions: options)
        puts "ENVIRONMENT=#{ENV['foo']}"
    end
end

答案 1 :(得分:0)

请注意,这个答案是为了帮助那些根据标题中的问题来到这里的人。您实际上无法将命令行参数传递给iOS应用程序,因为没有命令行。

用于处理RubyMotion应用程序的命令行参数的gem。它被称为motion-osx-cli

文档实际上很清楚如何使用它来制作处理cli输入的命令行应用程序或GUI应用程序。

该宝石基于this post on how to make command line apps with RubyMotion中的说明。