Тема в стиле Material 3 для Android-приложения Steam.
Неофициальный проект, не связан с Valve. Скрипт меняет только вашу собственную копию приложения. В репозитории нет файлов Steam. Не распространяйте пропатченные APK.
theme/m3.css, и его можно обновлять без пересборки приложения.Скрипт меняет только цвета и шрифты. Расположение элементов на экранах остаётся прежним.
Проверено на Steam 3.10.11. На других версиях скрипт сообщит, если не найдёт нужные данные.
Чтобы поставить пропатченное приложение, официальное нужно удалить, а вместе с ним удаляются данные Steam Guard. Сначала запишите код восстановления (Steam → Steam Guard → «Код восстановления»).
pip install hermes-dec fonttoolsstatic/ из архива). Variable-шрифты не подойдут.# 1. Скачать все APK приложения: base и split
adb shell pm path com.valvesoftware.android.steam.community
adb pull <каждый путь из вывода> apk/
# 2. Пропатчить base.apk
python patch/patch_steam.py apk/base.apk out/base.apk --fonts fonts/
# 3. Подписать все APK одним ключом
cp apk/split_*.apk out/
java -jar uber-apk-signer.jar --apks out --allowResign -o signed
# 4. Заменить официальное приложение (после того как записали код восстановления!)
adb uninstall com.valvesoftware.android.steam.community
adb install-multiple signed/*.apk
После установки войдите в аккаунт и заново привяжите Steam Guard.
Цвета задаются в словаре PALETTE в начале patch/patch_steam.py, формат #RRGGBB.
Проверить бандл без сборки APK:
python patch/patch_steam.py --check index.android.bundle
adb logcat -d > log.txt) и откройте issue.adb uninstall com.valvesoftware.android.steam.community, затем установите Steam из Google Play.Интерфейс приложения написан на React Native (Hermes). Встроенная тема хранится в строковой таблице байткода. Скрипт перенаправляет ссылки на цвета на новые значения и пересчитывает контрольную сумму. Байткод при этом не меняется. Шрифты Motiva Sans заменяются файлами того же начертания.
MIT