1#!/bin/bash 2if [ -z "$ANDROID_PRODUCT_OUT" ]; then 3 echo "ANDROID_PRODUCT_OUT not set" 4 exit 5fi 6DISP_ID=1 7if [[ $# -eq 1 ]]; then 8 echo "$1" 9 DISP_ID=$1 10fi 11echo "Use display:$DISP_ID" 12 13adb root 14# Check always crashing one 15echo "Start AlwaysCrashingActivity in fixed mode" 16adb shell dumpsys car_service start-fixed-activity-mode $DISP_ID com.google.android.car.kitchensink com.google.android.car.kitchensink.AlwaysCrashingActivity 17sleep 1 18read -p "AlwaysCrashingAvtivity should not be tried any more. Press Enter" 19# package update 20echo "Will try package update:" 21adb install -r -g $ANDROID_PRODUCT_OUT/system/priv-app/EmbeddedKitchenSinkApp/EmbeddedKitchenSinkApp.apk 22read -p "AlwaysCrashingAvtivity should have been retried. Press Enter" 23# suspend-resume 24echo "Check retry for suspend - resume" 25adb shell setprop android.car.garagemodeduration 1 26adb shell dumpsys car_service suspend 27adb shell dumpsys car_service resume 28read -p "AlwaysCrashingAvtivity should have been retried. Press Enter" 29# starting other Activity 30echo "Switch to no crash Activity" 31adb shell dumpsys car_service start-fixed-activity-mode $DISP_ID com.google.android.car.kitchensink com.google.android.car.kitchensink.NoCrashActivity 32read -p "NoCrashAvtivity should have been shown. Press Enter" 33# stating other non-fixed Activity 34adb shell am start-activity --display $DISP_ID -n com.google.android.car.kitchensink/.EmptyActivity 35read -p "NoCrashAvtivity should be shown after showing EmptyActivity. Press Enter" 36# package update 37echo "Will try package update:" 38adb install -r -g $ANDROID_PRODUCT_OUT/system/priv-app/EmbeddedKitchenSinkApp/EmbeddedKitchenSinkApp.apk 39read -p "NoCrashActivity should be shown. Press Enter" 40# stop the mode 41echo "Stop fixed activity mode" 42adb shell dumpsys car_service stop-fixed-activity-mode $DISP_ID 43adb shell am start-activity --display $DISP_ID -n com.google.android.car.kitchensink/.EmptyActivity 44read -p "EmptyActivity should be shown. Press Enter" 45