Class: Thrust::Android::Tools
- Inherits:
-
Object
- Object
- Thrust::Android::Tools
- Defined in:
- lib/thrust/android/tools.rb
Instance Method Summary collapse
- #build_signed_release ⇒ Object
- #change_build_number(version_code, version_name) ⇒ Object
-
#initialize(out) ⇒ Tools
constructor
A new instance of Tools.
Constructor Details
#initialize(out) ⇒ Tools
Returns a new instance of Tools.
4 5 6 7 8 9 10 11 12 13 14 15 |
# File 'lib/thrust/android/tools.rb', line 4 def initialize(out) @out = out if ENV['ANDROID_HOME'].nil? if File.directory?('/usr/local/opt/android-sdk') @out.puts 'Setting /usr/local/opt/android-sdk as ANDROID_HOME...'.magenta ENV['ANDROID_HOME'] = '/usr/local/opt/android-sdk' else raise('**********Android is not installed. Run `brew install android`.**********') end end end |
Instance Method Details
#build_signed_release ⇒ Object
29 30 31 32 |
# File 'lib/thrust/android/tools.rb', line 29 def build_signed_release Thrust::Executor.system_or_exit('mvn clean package -Prelease') Dir.glob('target/*-signed-aligned.apk').first or raise 'Signed APK was not generated' end |
#change_build_number(version_code, version_name) ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/thrust/android/tools.rb', line 17 def change_build_number(version_code, version_name) Thrust::Executor.system_or_exit( "sed -i ''" + " -e 's/android:versionCode=\"[0-9]*\"/android:versionCode=\"#{version_code}\"/'" + " -e 's/android:versionName=\"\\([^ \"]*\\)[^\"]*\"/android:versionName=\"\\1 (#{version_name})\"/'" + " AndroidManifest.xml") Thrust::Executor.system_or_exit( "sed -i ''" + " '1,/<version>/s/<version>\\([^- <]*\\)[^<]*<\\/version>/<version>\\1 (#{version_name})<\\/version>/'" + " pom.xml") end |