Co trzeba zrobić, to spakować boot.img i zbudować nowy plik zip odpowiedni do flashowania za pomocą ClockworkMod lub TWRP.
Warunki wstępne :
- środowisko Linux z zainstalowanymi zwykłymi pakietami programistycznymi, takimi jak Java. ( Może to również dotyczyć innych platform, po prostu uważaj, aby w instrukcjach wskazujących ścieżkę użytą poniżej użyto ukośnika do przodu
/
, więc odwróć go, aby był ukośnikiem \
dla środowiska Windows, szczególnie! )
- zainstalowane narzędzie wiersza polecenia adb.
- `testsign.jar” narzędzie do podpisywania pliku zip tak, że ożywienie może uwierzytelnić i zweryfikować to ważne archiwum inaczej odzyskiwanie zgłosi uszkodzone archiwum lub podobny.
update-binary
aplikacja wiersza poleceń , która jest wewnętrzna do użytku ze skryptem flashowalnym. (Można to znaleźć przy każdym flashowanym zipie, ważne jest, aby wyodrębnić ten plik binarny i zdeponować w strukturze katalogu, jak pokazano)
- narzędzie wiersza polecenia zip.
Zakładając, że twój katalog nazywa się katalogiem roboczym , w celu omówienia nazwijmy go katalogiem roboczym, skopiuj go boot.img
do tego katalogu i utwórz następującą strukturę katalogów - META-INF/com/google/android
to ważne! I wewnątrz META-INF/com/google/android
, skopiuj wywołaną aplikację binarną update-binary
do tego katalogu. Struktura katalogu powinna wyglądać następująco:
+ workdir/
+
|
+--+ boot.img
|
|
+--+ META-INF/
+
|
+--+ com/
+
|
+--+ google/
+
|
+--+ android/
+
|
+--> update-binary
|
+--> updater-script
Jeśli chodzi o updater-script
, skopiuj zawartość następujących elementów:
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! :)");
Pamiętaj: nie daj się pomylić, skrypt aktualizujący, tak jak pokazano, powinien zostać pozostawiony w spokoju, więc nie próbuj odwracać ukośnika do ukośnika, jeśli robisz to w środowisku Windows.
Wróć do elementu nadrzędnego struktury katalogów, tj. Poza katalogiem roboczym i wykonaj następujące czynności, z tego utworzymy plik zip:
zip -r my_custom_flashable_boot_unsigned.zip workdir/
która jest funkcją rekurencyjną, spakuje wszystko do pliku o nazwie my_custom_flashable_boot_unsigned.zip .
Na koniec, aby podpisać plik zip, wydaj to:
java -classpath testsign.jar testsign my_custom_flashable_boot_unsigned.zip my_custom_flashable_boot_signed.zip
Następnie należy popchnąć to na kartę SD adb push my_custom_flashable_boot_signed.zip /sdcard/
i ręcznie przejść do odzyskiwania i określić archiwum zip (tj. My_custom_flashable_boot_signed.zip ), w którym wykona flashowanie.
Jeśli masz
flash_image
plik binarny, możesz to zrobić na urządzeniu za pomocą emulatora terminala (boot flash, a następnie resztę za pomocą odzyskiwania).Składnia:
flash_image boot /sdcard/boot.img
Czas autopromocji
Mam aplikację, która zapewnia GUI dla pliku binarnego. Znajdź je tutaj .
Jeśli nie masz tego pliku binarnego, możesz go zainstalować (Google go - musisz go pobrać, a następnie skopiować do
/system/bin
folderu.To nie działa na wszystkich urządzeniach, ale to jedyny sposób, który przychodzi mi na myśl.
źródło
flash_image
wymaga skopiowania i wywołania ze słuchawki przy użyciuadb shell
, dokumentacja ( mogę dodać, że nie podałeś linky!) Prosi o ponowne zamontowanie karty SD z zestawem bitów wykonania (* zły pomysł ) i wymaga rootowaniasu
, a ponadto „autopromocja” w stosunku do twojej aplikacji, w euro, skąd pochodzę, wynosi 6,09 euro, co jest drogie ... fastboot to norma, CM ma swoje dziwaczne sposoby - co różni sięfastboot
aflash_image
?zmień nazwę pliku boot.emmc.win i umieść go w
TWRP/BACKUPS/
(utwórz nowy folder). przywróć kopię zapasową ze zwykłego menu TWRPźródło