- {registration_date}
- сообщений: {posts}
- {tel_link}
Делаем свои патчи к программам для применения через Лаки Патчер:
1. Текстовый файл надо называть также как и пакейдж программы... К примеру для Titanium Backup нужно создать такое имя файла: com.keramidas.TitaniumBackup.txt (обязательно соблюдать заглавные и строчные буквы из названия пакейджа, иначе не найдет (linux - мать его)).
2. В теле файла пишем примерно в такой форме (разделитель только одинарный пробел-иначе ошибку будет выдавать):
[BEGIN]
Этот пользовательский патч добавляет розочку в зубы Keramidas. ver.4.4.4
[PACKAGE]
[CLASSES]
{"search":"15 01 00 30 ** 20 ** ** 31 ** 20 ** ** ** ** R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 12 ** R11 R12 R13 0E 00"}
{"search":"10 ** ** ** ** 0C 01 1A 04 R14 R15 1A 05 00 00 72 30 ** ** ** ** 0C 04"}
{"search":"0C 01 1A 03 ** ** 72 30 R16 ** ** ** 72 10"}
{"original":"12 01 22 00 ** 04 ** W0 ** W2 ** W3 22 02 ** 04"}
{"replaced":"** 11 ** ** ** ** W16 ** W16 ** W16 ** ** ** ** **"}
{"original":"0c 07 ** ** ** ** ** ** 38 ** ** ** 70"}
{"replaced":"** ** ** ** ** ** ** ** W11 W11 W11 W11 **"}
{"original":"12 ** 12 ** 6a ** ** ** 38 ** ** **"}
{"replaced":"** ** ** ** ** ** ** ** 00 00 00 00"}
[LIB]
{"name":"libtitanium.so"}
{"original":"00 ** 50 e2"}
{"replaced":"00 00 50 e1"}
{"original":"01 0c 80 e2"}
{"replaced":"00 00 a0 e1"}
[END]
Congratulations! Program cracked!
Run Titanium Backup and check License State!
Good Luck!
Chelpus.
Поясню теперь что там где... Я правда думаю те кому надо уже поняли....:
Итак:
[BEGIN] - метка начала, весь текст после нее и до первого поля [CLASSES] [LIB] или [END] будет выведен в начале лога патча для пользователя.
[PACKAGE] - эта метка говорит о том, что патчить мы будем не dalvik-cache напрямую, а вытащим classes.dex из apk программы, пропатчим (патчами, которые идут следом после идентификаторов [CLASSES] или [ODEX]), создадим образ odex с изменениями и подсунем его приложению. Именно такой образ, к примеру, нужен TitaniumBuckup, т.к. он проверяет его и все чек-суммы внутри и они должны быть правильные). Надо заметить, что если при таком методе нажать потом в Luckypatcher на фиксацию изменений и зафиксировать, то они все пропадут, т.к. изначальный dalvik-cache приложения не менялся, а зафиксируется именно он и запишеться новым файлом odex рядом с приложением.
[CLASSES] - тут идут строки для патча classes.dex. Они могу быть поиск(search) и оригинал-замена(original-replaced).
поле search - ищет байты в позициях помеченных R[0, 1, 2, 3, ...], где номер это номер ячейки куда сохраниться байт (номера ячеек должны идти по порядку от 0 и далее и не должны повторяться).
К примеру: означает что байты на тех позициях будут сохранены в R0, R1, R2. Теперь когда они найдены и сохранены, можно их использовать в шаблонах поиска замены, только заменяя R на W:
тут ** - означает любой байт, W0, W1, W2 - это сохраненные байты в search, всё остальное просто HEX байты. Количество байт origanal и replaced обязательно должны совпадать. И обязательно помните, что байты далвик-кэша и classes.dex не все одинаковые, в этом Вы можете убедиться скопировав файл dalvik-cache-а к себе на компьютер и открыв в IDA Pro.
[ODEX] - вместо идентификатора [CLASSES], можно использовать этот. Тогда изменения classes.dex будут сохранены не в dalvik-cache, где они периодически исчезают при обновлении кэша системой, а в отдельном файле с раширение odex рядом с apk приложения, что зафиксирует все изменения и оставит оригинальный dalvik-cache нетронутым - это на случай, если приложение его проверяет. Надо заметить, что если при таком методе нажать потом в Luckypatcher на фиксацию изменений и зафиксировать, то они все пропадут, т.к. изначальный dalvik-cache приложения не менялся, а зафиксируется именно он и запишеться новым файлом odex рядом с приложением. Можно использовать [ODEX] после [CLASSES], тогда изменения внесуться в далвик-кэш и автоматически зафиксируются в odex.
[LIB] - это означает , что дальше пойдут строки для патча библиотеки это программы, name - это имя библиотеки.
[END] - идентификатор конца паттернов от патчей, весь текст со следующей строки будет выведен при удачном патче программы.
В общем всё отредактировали, сохраняете и кидаете файл com.keramidas.TitaniumBackup.txt в директорию /sdcard/LuckyPatcher/ ...
Всё, теперь программа подсвечивается желтым и можно применить к ней этот патч.
Если Вы хотите написать патч сразу на целую серию программ одной фирмы, то в конце названия файла пользовательского патча, можно использовать идентификатор _%ALL% , к примеру название патча для всех голосов SVOX будет выглядеть так: com.svox.classic.langpack_%ALL%.txt
Если что, задавайте вопросы Удачи
Готовые патчи:, не забываем, что путь установки патчей - в распакованном виде разумеется - /sdcard/LuckyPatcher/
ответ опубликован:
Рейтинг: 5
голосов: 2
- 5
- 1
- 2
- 3
- 4
- 5