blob: 9009086ab0666a371996a26b072875458ad1850f [file] [log] [blame]
#!/bin/bash
#
# Copyright 2021 The ANGLE Project Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
#
declare -a Packages=("com.android.chrome" "com.android.phone" "com.google.android.apps.gcs" "com.google.android.apps.internal.betterbug" "com.google.android.apps.nbu.files" "com.google.android.apps.scone" "com.google.android.apps.work.clouddpc" "com.google.android.as" "com.google.android.contacts" "com.google.android.dialer" "com.google.android.googlequicksearchbox" "com.google.android.ims" "com.google.android.tts" "com.google.android.videos" "com.google.android.GoogleCamera" "com.google.android.apps.maps" "com.google.android.apps.photos" "com.google.android.apps.youtube.music" "com.google.android.youtube" "com.google.android.apps.docs" "com.google.android.apps.gcs" "com.google.android.apps.messaging" "com.google.android.apps.turbo" "com.google.android.apps.tycho" "com.google.android.calculator" "com.google.android.calendar" "com.google.android.configupdater" "com.google.android.contacts" "com.google.android.deskclock" "com.google.android.gm" "com.google.android.inputmethod.latin" "com.google.android.marvin.talkback" "com.google.android.videos" "com.android.ramdump" "com.google.android.volta" "com.google.android.settings.intelligence" "com.google.android.partnersetup" "com.google.android.apps.tips" "com.android.vending")
SetGservicesFlag() (
echo "Setting $1 to $2 -START"
adb shell am broadcast -a com.google.gservices.intent.action.GSERVICES_OVERRIDE \
-e "${1}" "${2}"
wanted="${1}=${2}"
i=1
while [[ $i -le 20 ]]
do
echo "Try #$i:"
if adb shell dumpsys activity provider GservicesProvider | grep "$wanted" &>/dev/null;
then
echo "Succeeded"
break
else
echo "Failed"
sleep 0.05
fi
(( i++ ))
done
echo "Setting $1 to $2 -Done"
)
adb root
# Disable unnecessary packages
for val in ${StringArray[@]}; do
adb shell pm disable $val
done
# Disable modem logging, ambient EQ, and adaptive brightness.
adb shell setprop vendor.sys.modem.diag.mdlog false
adb shell settings put secure display_white_balance_enabled 0
adb shell settings put system screen_brightness_mode 0
# Disable bg dex2oat
adb shell setprop pm.dexopt.disable_bg_dexopt true
# Disable moisture detection
contaminant_detection_node=$(adb shell find /sys -name contaminant_detection)
adb shell "echo 0 > ${contaminant_detection_node}"
adb shell setprop vendor.usb.contaminantdisable true
# Direct Phenotype to a local Heterodyne server.
SetGservicesFlag gms:phenotype:debug_allow_http "true"
SetGservicesFlag gms:phenotype:configurator:service_url "http://localhost:9879"
# Remove any production configurations already downloaded.
# Restarts GMS Core.
adb shell pm clear com.google.android.gms
adb shell stop
adb shell start
sleep 40s
adb shell input keyevent 82