calabash-android 0.4.16 → 0.4.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/bin/calabash-android-build.rb +5 -0
- data/lib/calabash-android/env.rb +4 -0
- data/lib/calabash-android/helpers.rb +16 -3
- data/lib/calabash-android/lib/TestServer.apk +0 -0
- data/lib/calabash-android/version.rb +1 -1
- data/test-server/build.xml +8 -0
- metadata +2 -3
- data/lib/calabash-android/lib/unsign.jar +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2c44c0e993a7a43772eeba1e688c898e44bf09c6
|
4
|
+
data.tar.gz: 3dfac41109392ced77865e6b0e8853c7fa90252d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fc19afcc81335aa79fd2eb45cc34c58fd0a21bc298f059ce7061a453d4ddf564c3347b0321ac7573828f6977dd9a39769d2f1463e498e484f5ef60061775c69b
|
7
|
+
data.tar.gz: 3879719b56b1aa587f552ff601db1f36e7576d2b7105496d08b5fbf48206f739186c53037acc28c226edd928bb9dcdef402e23f9e1aa982e6126ef0d38e1b064
|
@@ -3,6 +3,11 @@ def calabash_build(app)
|
|
3
3
|
log "#{app} was signed with a certificate with fingerprint #{apk_fingerprint}"
|
4
4
|
|
5
5
|
keystores = JavaKeystore.get_keystores
|
6
|
+
if keystores.empty?
|
7
|
+
puts "No keystores found."
|
8
|
+
puts "Please create one or run calabash-android setup to configure calabash-android to use an existing keystore."
|
9
|
+
exit 1
|
10
|
+
end
|
6
11
|
keystore = keystores.find { |k| k.fingerprint == apk_fingerprint}
|
7
12
|
|
8
13
|
unless keystore
|
data/lib/calabash-android/env.rb
CHANGED
@@ -78,6 +78,10 @@ class Env
|
|
78
78
|
path if path && File.exists?(File.join(path, 'bin', jarsigner_executable))
|
79
79
|
end
|
80
80
|
|
81
|
+
def self.zipalign_path
|
82
|
+
%Q("#{android_home_path}/tools/zipalign")
|
83
|
+
end
|
84
|
+
|
81
85
|
def self.jarsigner_executable
|
82
86
|
is_windows? ? 'jarsigner.exe' : 'jarsigner'
|
83
87
|
end
|
@@ -76,14 +76,27 @@ def resign_apk(app_path)
|
|
76
76
|
Dir.mktmpdir do |tmp_dir|
|
77
77
|
log "Resign apk"
|
78
78
|
unsigned_path = File.join(tmp_dir, 'unsigned.apk')
|
79
|
+
unaligned_path = File.join(tmp_dir, 'unaligned.apk')
|
79
80
|
FileUtils.cp(app_path, unsigned_path)
|
81
|
+
unsign_apk(unsigned_path)
|
82
|
+
sign_apk(unsigned_path, unaligned_path)
|
83
|
+
zipalign_apk(unaligned_path, app_path)
|
84
|
+
end
|
85
|
+
end
|
80
86
|
|
81
|
-
|
82
|
-
|
83
|
-
|
87
|
+
def unsign_apk(path)
|
88
|
+
files_to_remove = `#{Env.tools_dir}/aapt list "#{path}"`.lines.collect(&:strip).grep(/^META-INF\//)
|
89
|
+
if files_to_remove.empty?
|
90
|
+
log "App wasn't signed. Will not try to unsign it."
|
91
|
+
else
|
92
|
+
system("#{Env.tools_dir}/aapt remove \"#{path}\" #{files_to_remove.join(" ")}")
|
84
93
|
end
|
85
94
|
end
|
86
95
|
|
96
|
+
def zipalign_apk(inpath, outpath)
|
97
|
+
system(%Q(#{Env.zipalign_path} -f 4 "#{inpath}" "#{outpath}"))
|
98
|
+
end
|
99
|
+
|
87
100
|
def sign_apk(app_path, dest_path)
|
88
101
|
java_keystore = JavaKeystore.get_keystores.first
|
89
102
|
java_keystore.sign_apk(app_path, dest_path)
|
Binary file
|
data/test-server/build.xml
CHANGED
@@ -44,6 +44,14 @@
|
|
44
44
|
<fail unless="doesCalabashJsExist">
|
45
45
|
${calabashjs.dir} does not exist.
|
46
46
|
</fail>
|
47
|
+
<antversion property="version.running" />
|
48
|
+
<fail message="FATAL ERROR: The running Ant version, ${version.running}, is too old.">
|
49
|
+
<condition>
|
50
|
+
<not>
|
51
|
+
<antversion atleast="1.8" />
|
52
|
+
</not>
|
53
|
+
</condition>
|
54
|
+
</fail>
|
47
55
|
</target>
|
48
56
|
|
49
57
|
<target name="-stage">
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: calabash-android
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.18
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jonas Maturana Larsen
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-
|
11
|
+
date: 2013-12-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: cucumber
|
@@ -180,7 +180,6 @@ files:
|
|
180
180
|
- lib/calabash-android/lib/apktool-cli-1.5.3-SNAPSHOT.jar
|
181
181
|
- lib/calabash-android/lib/manifest_extractor.jar
|
182
182
|
- lib/calabash-android/lib/screenshotTaker.jar
|
183
|
-
- lib/calabash-android/lib/unsign.jar
|
184
183
|
- lib/calabash-android/management/adb.rb
|
185
184
|
- lib/calabash-android/management/app_installation.rb
|
186
185
|
- lib/calabash-android/operations.rb
|
Binary file
|