Skip to content

Commit b5e4ff1

Browse files
committed
Android: Install emulator in CI and switch to x86_64 platform
1 parent 2e09b7d commit b5e4ff1

File tree

2 files changed

+12
-10
lines changed

2 files changed

+12
-10
lines changed

pwnlib/adb/adb.py

+9-7
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@
6666
from pwnlib.context import LocalContext
6767
from pwnlib.context import context
6868
from pwnlib.device import Device
69+
from pwnlib.exception import PwnlibException
6970
from pwnlib.log import getLogger
7071
from pwnlib.protocols.adb import AdbClient
7172
from pwnlib.util.packing import _decode
@@ -122,7 +123,7 @@ def current_device(any=False):
122123
123124
>>> device = adb.current_device(any=True)
124125
>>> device # doctest: +ELLIPSIS
125-
AdbDevice(serial='emulator-5554', type='device', port='emulator', product='sdk_...phone_armv7', model='sdk ...phone armv7', device='generic')
126+
AdbDevice(serial='emulator-5554', type='device', port='emulator', product='sdk_...phone_...', model='...', device='generic...')
126127
>>> device.port
127128
'emulator'
128129
"""
@@ -252,13 +253,13 @@ class AdbDevice(Device):
252253
253254
>>> device = adb.wait_for_device()
254255
>>> device.arch
255-
'arm'
256+
'amd64'
256257
>>> device.bits
257-
32
258+
64
258259
>>> device.os
259260
'android'
260261
>>> device.product # doctest: +ELLIPSIS
261-
'sdk_...phone_armv7'
262+
'sdk_...phone_...'
262263
>>> device.serial
263264
'emulator-5554'
264265
"""
@@ -1364,7 +1365,7 @@ def compile(source):
13641365
>>> filename = adb.compile(temp)
13651366
>>> sent = adb.push(filename, "/data/local/tmp")
13661367
>>> adb.process(sent).recvall() # doctest: +ELLIPSIS
1367-
b'... /system/bin/linker\n...'
1368+
b'... /system/lib64/libc.so\n...'
13681369
"""
13691370

13701371
ndk_build = misc.which('ndk-build')
@@ -1490,8 +1491,9 @@ class Partitions(object):
14901491
@context.quietfunc
14911492
def by_name_dir(self):
14921493
try:
1493-
return next(find('/dev/block/platform','by-name'))
1494-
except StopIteration:
1494+
with context.local(log_level=logging.FATAL):
1495+
return next(find('/dev/block/platform','by-name'))
1496+
except (StopIteration, PwnlibException):
14951497
return '/dev/block'
14961498

14971499
@context.quietfunc

travis/setup_avd_fast.sh

+3-3
Original file line numberDiff line numberDiff line change
@@ -8,17 +8,17 @@ set -ex
88
# - arm64-v8a
99
# - x86
1010
# - x86_64
11-
ANDROID_ABI='armeabi-v7a'
11+
ANDROID_ABI='x86_64'
1212
ANDROIDV=android-24
1313

1414
# Create our emulator Android Virtual Device (AVD)
1515
# --snapshot flag is deprecated, see bitrise-steplib/steps-create-android-emulator#18
1616
export PATH=$PATH:"$ANDROID_HOME"/cmdline-tools/latest/bin:"$ANDROID_HOME"/platform-tools
17-
yes | sdkmanager --sdk_root="$ANDROID_HOME" --install "system-images;$ANDROIDV;default;$ANDROID_ABI"
17+
yes | sdkmanager --sdk_root="$ANDROID_HOME" --install "system-images;$ANDROIDV;default;$ANDROID_ABI" "emulator" "platform-tools" "platforms;$ANDROIDV"
1818
yes | sdkmanager --sdk_root="$ANDROID_HOME" --licenses
1919
echo no | avdmanager --silent create avd --name android-$ANDROID_ABI --force --package "system-images;$ANDROIDV;default;$ANDROID_ABI"
2020

21-
"$ANDROID_HOME"/emulator/emulator -avd android-$ANDROID_ABI -no-window -no-boot-anim -read-only -no-audio -no-window -no-snapshot &
21+
"$ANDROID_HOME"/emulator/emulator -avd android-$ANDROID_ABI -no-window -no-boot-anim -read-only -no-audio -no-window -no-snapshot -gpu off -accel off &
2222
adb wait-for-device
2323
adb shell id
2424
adb shell getprop

0 commit comments

Comments
 (0)