diff --git a/Dockerfile b/Dockerfile index 9d29284..b7153bf 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM openjdk:18-jdk-slim +FROM openjdk:21-jdk-slim ENV DEBIAN_FRONTEND noninteractive diff --git a/docker-compose.yml b/docker-compose.yml index 826cf31..2c82520 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -9,7 +9,7 @@ services: - IMG_TYPE=google_apis ports: - 5554:5554 - - 5555:5555 + - 127.0.0.1:5555:5555 environment: - DISABLE_ANIMATION=false - DISABLE_HIDDEN_POLICY=true @@ -37,7 +37,7 @@ services: - IMG_TYPE=google_apis ports: - 5554:5554 - - 5555:5555 + - 127.0.0.1:5555:5555 environment: - DISABLE_ANIMATION=false - DISABLE_HIDDEN_POLICY=true @@ -71,7 +71,7 @@ services: - IMG_TYPE=google_apis_playstore ports: - 5554:5554 - - 5555:5555 + - 127.0.0.1:5555:5555 environment: - DISABLE_ANIMATION=false - DISABLE_HIDDEN_POLICY=true diff --git a/scripts/emulator-monitoring.sh b/scripts/emulator-monitoring.sh index 827a230..670b437 100644 --- a/scripts/emulator-monitoring.sh +++ b/scripts/emulator-monitoring.sh @@ -32,16 +32,20 @@ function wait_for_boot() { update_state "ANDROID_BOOTING" # Waiting for the ADB server to start. - while [ -n "$(adb wait-for-device > /dev/null)" ]; do - adb wait-for-device - sleep 1 - done - + adb wait-for-device + # Waiting for the boot sequence to be completed. + TIMEOUT=300 + COUNTER=0 COMPLETED=$(adb shell getprop sys.boot_completed | tr -d '\r') while [ "$COMPLETED" != "1" ]; do + if [ $COUNTER -ge $TIMEOUT ]; then + echo "Error: Emulator failed to boot within $TIMEOUT seconds." + exit 1 + fi COMPLETED=$(adb shell getprop sys.boot_completed | tr -d '\r') sleep 5 + COUNTER=$((COUNTER + 5)) done sleep 1 if [ "$DISABLE_ANIMATION" = "true" ]; then