Jak utworzyć Flashable Zip dla modów systemu Android

Jeśli jesteś programistą Androida, który chce tworzyć aplikacje przeznaczone na partycję / system (takie jak aplikacje root), istnieją pewne przypadki, w których będziesz chciał utworzyć flashowany plik .zip dla swojej aplikacji. Dzieje się tak, aby pliki aplikacji mogły zostać poprawnie zainstalowane na partycji / system.

Kilka innych zastosowań flashowanych plików ZIP:

  • Modyfikowanie DPI
  • Stosowanie niestandardowej czcionki
  • Stosowanie niestandardowej animacji rozruchowej
  • Usuwanie lub dodawanie aplikacji systemowych

Poinstruowanie użytkowników, aby bawili się w systemie plików i ręcznie przenosili pliki, jest stratą czasu dla wszystkich zaangażowanych - tworzenie flashowanego pliku .zip jest znacznie wygodniejszą trasą. Ten przewodnik Appuala pokaże Ci, jak utworzyć flashowalny zamek błyskawiczny dla Androida.

Pokażemy Ci również skrypt addon.d, aby niestandardowe zmiany systemowe przetrwały brudną pamięć ROM - dlatego użytkownicy nie będą musieli ponownie flashować zip dla każdej aktualizacji.

Wymagania:

  • Eksplorator plików root (MiXplorer, Solid Explorer)
  • ZipSigner (do podpisywania zamków) lub wtyczka MiX Signer, jeśli używasz MixPlorer
  • Zdecydowanie zaleca się tworzenie kopii zapasowej Nandroid

Powinieneś także przygotować wszystkie pliki, które znajdą się w zipie - pliki APK, konfiguracje, animacje rozruchu itp. Zorganizuj wszystko, zanim zaczniemy, ponieważ jest to delikatny proces.

Szablon niestandardowego zamka błyskawicznego

Jeśli chcesz pobrać szablon zip, który możesz dostosować do własnych potrzeb, lub użyć go jako podstawy do utworzenia flashowanego suwaka, możesz pobrać go tutaj:

  • SZABLON SZABLONU: POBIERZ LINK (podstawowe polecenia / musisz dodać własne wartości: aplikacje, ścieżki dzwonków, bootanimacja…)
  • SZABLON SZABLONU: POBIERZ LINK (przykłady są zawsze mile widziane, aby lepiej zrozumieć wyjaśnienie. Może pomóc zrozumieć, jak uporządkować pliki).

Szablon powinien wystarczyć do rozpoczęcia korzystania ze skryptu niestandardowego.

Musisz pamiętać o tych głównych ścieżkach, ponieważ są to elementy partycji / system, na które zazwyczaj celują twoje flashowalne zamki błyskawiczne:

 addon.d => skrypt kopii zapasowej, aby przetrwać brudną pamięć flash (używaną na przykład przez pakiet GApps) i aplikację priv-app => aplikacje systemowe, aby dodać lub usunąć etc => czcionki pliku hosta => twoja czcionka media => twój bootanimation.zip media> audio> alarmy => dźwięki alarmów media> audio> powiadomienia => dźwięki powiadomień media> audio> dzwonki => dźwięki dzwonków media> audio> ui => dźwięki różnych rzeczy, takich jak niski poziom naładowania baterii, odblokowanie, aparat, .. katalog główny / system dla pliku build.prop 

Zawsze pamiętaj, że pliki usunięte z tych ścieżek zostaną ponownie zainstalowane po brudnej pamięci flash, a pliki dodane ręcznie zostaną usunięte. Dlatego konieczne jest utworzenie skryptu, który tworzy kopię zapasową modów / systemu.

Przykład skryptu aktualizacji

 ui_print („+ ------------------------------------- +”); ui_print ("| CLEAN FLASH SCRIPT |"); ui_print ("| |"); ui_print ("| Primokorn |"); ui_print („+ ------------------------------------- +”); run_program („/ sbin / busybox”, „umount”, „/ system”); run_program („/ sbin / busybox”, „mount”, „/ system”); ui_print („”); ui_print („*** Usuwanie bloatwares ***”); delete_recursive („/system/app/adaway.apk”, „/ system / app / AdAway”, „/ system / app / BasicDreams”, „/ system / app / BookmarkProvider”, „/ system / app / Calendar”, „ / system / app / CalendarWidget ”, „ / system / app / CMFileManager ”, „ / system / app / CMWallpapers ”, „ / system / app / DeskClock ”, „ / system / app / Eleven ”, „ / system / app / E-mail ”, „ / system / app / ExactCalculator ”, „ / system / app / Exchange2 ”, „ / system / app / Gello ”, „ / system / app / HexoLibre ”, „ / system / app / Jelly ”, „ / system / app / LiveWallpapersPicker ”, „ / system / app / LockClock ”, „ / system / app / messaging ”, „ / system / app / MiXplorer ”, „ / system / app / NexusLauncher ”, „ / system / app / Phonograph „, ” / system / app / PhotoTable ”, „ / system / app / PicoTts ”, „ / system / app / PicoTTS ”, „ / system / app / ResurrectionStats ”, „ / system / app / SoundRecorder ”, „ / system / app / Terminal ”, „ / system / app / TugaBrowser ”, „ / system / app / Wallpaper ”, „ / system / app / WallpaperPickerGoogle ”, „ / system / priv-app / AudioFX ”, „ / system / priv- app / Chrome ”, „ / system / priv-app / Gallery2 ”, „ / system / priv-app / MusicFX ”, „ / system / priv-app / OnePlusCamera ”, „ / system / priv- app / OnePlusGallery ”, „ / system / priv-app / OnePlusMusic ”, „ / system / priv-app / Recorder ”, „ / system / priv-app / Screencast ”, „ / system / priv-app / Snap ”, „ / system / priv-app / SnapdragonCamera ”, „ / system / priv-app / SnapdragonGallery ”, „ / system / priv-app / WeatherManagerService ”, „ / system / priv-app / WeatherProvider ”, „ / system / priv-app / Tag ”); ui_print („Instalowanie aplikacji i modów itp.”); show_progress (8.800000, 5); pakiet_ekstrakt_katalog („system”, „/ system /”); ui_print („*** Uprawnienia do naprawy ***”); set_perm (0, 0, 0755, "/system/addon.d/99-dirty.sh"); set_perm (0, 0, 0644, "/system/etc/gps.conf"); set_perm (0, 0, 0644, "/system/fonts/Roboto-Regular.ttf"); set_perm (0, 0, 0644, "/system/media/audio/ringtones/PlasticRing.ogg"); set_perm (0, 0, 0644, "/system/priv-app/Phonesky.apk"); set_perm (0, 0, 0644, "/system/priv-app/microG.apk"); set_perm (0, 0, 0644, "/system/priv-app/Gsam.apk"); set_perm (0, 0, 0644, "/system/priv-app/BBS.apk"); set_perm (0, 0, 0644, "/system/priv-app/V4A-Magisk.apk"); run_program („/ sbin / busybox”, „mount”, „/ data”); pakiet_ekstrakt_katalog („dane”, „/ dane /”); set_perm (0, 0, 0755, "/data/local/afscript.sh"); show_progress (8.800000, 5); run_program („/ sbin / busybox”, „umount”, „/ data”); run_program („/ sbin / busybox”, „umount”, „/ system”); ui_print („”); ui_print („Gotowe.”); ui_print („Gotowy do ponownego uruchomienia.”); 

Uwaga: ui_print (”„); jest do wiadomości tekstowej. Te linie nic nie robią.

Zawsze powinieneś odmontować i ponownie zamontować partycję przed przystąpieniem do pracy.

 run_program („/ sbin / busybox”, „umount”, „/ system”); run_program („/ sbin / busybox”, „mount”, „/ system”); 

Aby usunąć komponenty / aplikacje systemowe, umieść przecinek na końcu każdej linii, z wyjątkiem ostatniej.

 delete_recursive („/system/app/adaway.apk”, „/ system / app / AdAway”, ........................ ”/ system / priv-app / WeatherProvider ”, „ / system / priv-app / Tag ”); 

Wyodrębnij pliki systemowe, które chcesz zainstalować.

 pakiet_ekstrakt_katalog („system”, „/ system /”); Ustaw uprawnienia do plików. set_perm (0, 0, 0755, "/system/addon.d/99-dirty.sh"); .............. set_perm (0, 0, 0644, "/system/priv-app/V4A-Magisk.apk"); 

Zrób to samo, ale dla folderu / data. Zamontujesz partycję, wyodrębnisz dane, które chcesz dodać, i ustawisz uprawnienia.

 run_program („/ sbin / busybox”, „mount”, „/ data”); pakiet_ekstrakt_katalog („dane”, „/ dane /”); set_perm (0, 0, 0755, "/data/local/afscript.sh"); 

Następnie odmontujesz zmodyfikowane partycje.

 run_program („/ sbin / busybox”, „umount”, „/ data”); run_program („/ sbin / busybox”, „umount”, „/ system”); 

Przykład skryptu Addon.D

 #! / sbin / sh # # /system/addon.d/99-dirty.sh # / system jest sformatowany i ponownie zainstalowany, a następnie pliki są przywracane. #. /tmp/backuptool.functions list_files () {cat < 

Utwórz listę plików, które chcesz zachować po brudnej pamięci flash.

 list_files () {cat < 

RM - RF plików, których nie chcesz instalować po brudnej pamięci flash (pliki systemowe usunięte w modyfikacji, które zostaną ponownie zainstalowane z brudnej pamięci flash)

 rm -rf /system/app/adaway.apk rm -rf / system / app / AdAway rm -rf / system / app / BasicDreams rm -rf / system / app / BookmarkProvider ............ .................................... rm -rf / system / priv-app / WeatherProvider rm -rf / system / priv-app / Tag ;; 

Jak utworzyć Flashable Android Zip

Będziemy używać do tego MiXplorer, ponieważ jest to najlepszy przeglądarka root i menedżer plików dla systemu Android, bez dwóch zdań.

  1. Najpierw wybierz wszystkie foldery, które będą zawarte w zipie, i wybierz Archiwum.

  2. Potwierdź utworzenie pliku archiwum, nadaj mu nazwę i wybierz Sklep.

  3. Twój flashowany zip zostanie utworzony, więc wybierz plik zip, a następnie podpisz go (za pomocą wtyczki podpisującej MiX)
  4. Teraz wybierz TestKey, aby sprawdzić, czy nie ma błędów podpisu.
  5. Możesz teraz flashować zip - zalecamy przeniesienie go do / SDcard, aby łatwo znaleźć go z niestandardowego odzyskiwania.

Uwagi końcowe

Flashable zip musi zostać zainstalowany po czystym flashowaniu lub po wyczyszczeniu partycji / system i wykonaniu brudnego flashowania ROM. Skrypt aktualizujący usunie i doda pliki systemowe określone w skrypcie - ale zostaw skrypt addon.d w spokoju, ponieważ wykona swoją pracę bez ingerencji z twojej strony.

Po pierwszej instalacji dokładnie sprawdź partycję / system, aby upewnić się, że wszystko jest w porządku - pliki zostały usunięte itp. Być może literówka w nazwie pliku nie została usunięta, to się zdarza.

Ciekawe Artykuły