Adb shell命令偶尔会从命令行

时间:2017-04-12 09:40:02

标签: android shell xamarin android-emulator adb

我们有一个Xamarin测试应用程序,我们从macOS Sierra的命令行自动运行。在此之前,我们会从命令行自动启动Android模拟器。作为Android模拟器,我们使用x86模拟器,使用Intel HAXM加速。模拟器启动的脚本按以下方式查找:

function isEmulatorReady {
    pathToSDK=$1
    #Check that emulator is booted by checking that boot animation is stopped
    $pathToSDK/platform-tools/adb wait-for-device shell getprop init.svc.bootanim | grep -m 1 stopped
}

androidSDK=~/Library/Developer/Xamarin/android-sdk-macosx
$androidSDK/platform-tools/adb kill-server
$androidSDK/platform-tools/adb start-server
$androidSDK/tools/emulator -avd Android_Accelerated_x86 -wipe-data -partition-size 512 &
emulatorPID=$!
until isEmulatorReady $androidSDK; do
    sleep 1
done

#launch application and wait for end

kill $emulatorPID

偶尔adb wait-for-device shell getprop命令挂起,脚本无法检测到模拟器已启动,而Android模拟器已成功启动并正常工作。我不知道如何处理它。在开始时重新启动adb服务器实际上没有帮助。

0 个答案:

没有答案