Где хранятся сейвы игр на Android? (кроме Android/data/)
Решил сегодня сделать продвижение в игре легче, для этого надо чуть увеличить некоторую прокачку. Игра кидает данные на сервер когда есть интернет, когда его нету - берет сохранения с устройства.
Первым делом пошел искать в /data/user/0/имя пакета/shared_prefs, но там нет ничего нужного.
Дальше пошел проверил Android/obb/имя пакета - пустая папка, а от в Android/data/имя пакета/files/ нашел сохранения игры. Их там 4, видимо новые добавляются, старые удаляются.
Если пробую что-то менять в последнем сохранении, то игра подгружается с предыдущих сейвов. Если предыдущие сейвы удаляю - то вобще непонятно откуда но тоже подгружается (интернет все время выключен).
Для теста вообще удалил папку Android/data/имя пакета, и при заходе в игру начинается все сначала, но через секунды две пишет Loading и игра откуда-то загружается. Не могу понять откуда. Где хранится еще сохранение?
Ответы (1 шт):
Вероятно, сейвы могут храниться во внутренней памяти приложения. В Андроиде это /data/data/<package>, где <package> — имя пакета приложения.
Способы, как попасть в эту дриректорию (используя adb):
- Если телефон рутованный, то делаем
adb root, далееadb shell, далееcd /data/data/<package>. Если нет рутованного девайса, можно воспользоваться эмулятором, который входит в поставку Android Studio - Если телефон не рутованный, а приложение собрано в дебаг-режиме, то делаем
adb shell, далееrun-as <package>, после чего мы сразу оказываемся в/data/data/<package> - Если телефон не рутованный, и приложение не является debuggable, то можно попробовать сделать бэкап внутреннего хранилища с помощью команды
adb backup -noapk <package>(этот способ сработает только в случае, если при сборке приложения был включен флаг allowBackup)