openmax-server/faq/patch_apk.md

2.4 KiB
Raw Blame History

Изменение сервера в мобильном приложении Max на android прямо в apk

[!Caution]

Инструкция может быть не полной так же иногда клиенту нужно будет сделать ssl unpining что можно сделать через frida или apk-mitm

Прямо на телефоне

MT Manager

  1. Открываем apk файл
  2. Нажимаем на любой .dex
  3. Нажимаем открыть в Редактор dex+
  4. Выбираем все .dex при появлении MultiDex окна выбора
  5. В поиске выбираем Тип Smali а в найти пишем "api.oneme.ru" это основной сервер Max
  6. Нажимаем заменить в текущих результатах и в Заменить на пишем ip или домен

apktool m

  1. Декомпилируем приложение обязательно поставив Декомпилировать classes*.dex остальные параметры не важны но для скорости модете выключить декомпиляцию ресурсов
  2. В папке проекта нажимаем на "лупу"
  3. Ставим поиск по содержимому и замена
  4. В поиск пишем "api.oneme.ru" а в замене ваш новый домен/ip
  5. После замены нажимаем на "собрать проект" и ждём

ПК

apktool

Убедитесь что у вас стоит apktool и java!

  1. Помещаем apk в удобное место
  2. открываем косноль в этой папке и декомпилиреум пример команды: apktool d <имя апк> -o max_project (может чуть отличаться на windows)
  3. Заходим в папке проекта и через удобную вам утилиту ищем и заменяем сервер или используем консоль
    Linux:
    find max_project -type f -name "*.smali" -exec sed -i 's/api.oneme.ru/ваш_новый_домен/g' {} +
    Powershell:
    Get-ChildItem -Path "max_project" -Recurse -Filter "*.smali" | ForEach-Object { (Get-Content $_.FullName) -replace 'api.oneme.ru', 'ваш_новый_домен' | Set-Content $_.FullName }
  4. компилируем пример коиманды: apktool b max_project -o max_modified.apk