Что нужно сделать, это связать boot.img и создать новый zip-файл, подходящий для прошивки через ClockworkMod или TWRP.
Предварительные условия :
- среда Linux, в которой установлены обычные пакеты разработки, такие как Java. ( Это может также относиться к другим платформам, но будьте осторожны, чтобы в приведенных здесь инструкциях с указанием пути, использованного ниже, использовалась косая черта
/
, поэтому переверните ее, чтобы она стала обратной косой чертой, \
особенно для среды Windows! )
- Установлен инструмент командной строки adb.
- `testsign.jar» инструмент для подписи файла почтового индекса , так что восстановление может пройти проверку подлинности и убедитесь , что он является действительным архив в противном случае восстановление будет сообщать о коррумпированном архиве или аналогичном.
update-binary
приложение командной строки , которое является внутренним для использования с изменяемым сценарием. (Это может быть найдено с любым всплывающим zip-файлом, важно извлечь этот двоичный файл и поместить его в структуру каталога, как показано на рисунке)
- инструмент командной строки zip.
Предполагая, что ваш каталог называется workdir , для обсуждения давайте назовем его рабочим каталогом, скопируйте его boot.img
в этот каталог и создайте следующую структуру каталогов - META-INF/com/google/android
это важно! А внутри META-INF/com/google/android
скопируйте двоичное приложение, вызванное update-binary
в этот каталог. Таким образом, структура каталогов должна быть такой:
+ workdir/
+
|
+--+ boot.img
|
|
+--+ META-INF/
+
|
+--+ com/
+
|
+--+ google/
+
|
+--+ android/
+
|
+--> update-binary
|
+--> updater-script
Что касается updater-script
, скопируйте содержимое следующего ниже:
ui_print("Please wait, boot.img being flashed...");
show_progress(0.1, 0);
assert(package_extract_file("boot.img", "/tmp/boot.img"),
write_raw_image("/tmp/boot.img", "boot"),
delete("/tmp/boot.img"));
show_progress(0.1, 10);
ui_print("It is now safe to reboot! :)");
Помните: не смущайтесь здесь, скрипт обновления, как показано, должен быть оставлен в покое и как есть, поэтому не пытайтесь перевернуть прямой слеш на обратный слеш, если вы делаете это в среде Windows.
Вернитесь к родительскому элементу структуры каталогов, то есть вне workdir, и выполните следующее, мы собираемся создать файл zip из этого:
zip -r my_custom_flashable_boot_unsigned.zip workdir/
которая является рекурсивной функцией, она заархивирует все в файл my_custom_flashable_boot_unsigned.zip .
Наконец, чтобы подписать zip-файл, выполните следующее:
java -classpath testsign.jar testsign my_custom_flashable_boot_unsigned.zip my_custom_flashable_boot_signed.zip
Затем нужно протолкнуть его через SDCard adb push my_custom_flashable_boot_signed.zip /sdcard/
и вручную зайти в recovery и указать тот zip-архив (т.е. my_custom_flashable_boot_signed.zip ), в котором он выполнит для вас перепрошивку.