Depois de uma longa pesquisa sobre como acessar configurações personalizadas em Info.plist, encontrei ‘Variáveis de ambiente em seu projeto RubyMotion’ de Rod Wilhelmy com um bom exemplo, que copio aqui. Mas perdi algumas informações adicionais, então vamos lá:
Rakefile
app.info_plist['ComYourAppFoo'] = 'Bar'
Lembre-se, você deve repetir o escopo “ComYourApp” para cada configuração personalizada. E você também terá que repetir esse escopo para cada chamada.
your_class.rb
foo = NSBundle.mainBundle.objectForInfoDictionaryKey('ComYourAppFoo')
Puxa, isso parece feio.
Graças à convenção de nomenclatura
O motivo da feiura? As chaves não devem colidir com as chaves existentes da Apple, então é melhor prefixá-las com “o ID do pacote do seu aplicativo ou o nome de domínio da sua empresa” – consulte iOS Developer Library> Information Property List Key Reference> Custom Keys .
Limpar
Seria ótimo ter o setter Motion :: Project :: App.setup app.info_plist_scoped[:foo]
e um getter mainBundle como NSBundle.mainBundle.info_plist_scoped[:foo]
esse automaticamente faz o escopo. Mas no momento não encontrei uma maneira de ensinar isso ao RubyMotion.