Hoe maak je een Flashable Zip voor Android-systeemmods

Als u een Android-ontwikkelaar bent en apps wilt maken die bedoeld zijn voor / systeempartitie (zoals root-apps), zijn er bepaalde gevallen waarin u een flashable .zip voor uw app wilt maken. Dit is zodat de app-bestanden correct kunnen worden geïnstalleerd op de / systeempartitie.

Een paar andere toepassingen van flashbare .zips zijn:

  • De DPI wijzigen
  • Een aangepast lettertype toepassen
  • Een aangepaste opstartanimatie toepassen
  • Systeem-apps verwijderen of toevoegen

Uw gebruikers instrueren om te rotzooien in het bestandssysteem en bestanden handmatig te verplaatsen is een tijdverspilling voor alle betrokkenen - het maken van een flashbare .zip is een veel handiger route. Deze gids van Appual laat je zien hoe je een flashable zip voor Android kunt maken.

We zullen u ook een addon.d-script laten zien, zodat aangepaste systeemwijzigingen een vuile ROM-flash overleven - gebruikers hoeven uw zip dus niet voor elke update opnieuw te flashen.

Vereisten:

  • Een root-bestandsverkenner (MiXplorer, Solid Explorer)
  • ZipSigner (voor het ondertekenen van ritsen) of de MiX Signer-plug-in als u MixPlorer gebruikt
  • Een back-up van Nandroid wordt sterk aanbevolen

Je moet ook alle bestanden voorbereiden die de zip binnengaan - APK's, configs, bootanimaties, enz. Zorg dat alles is georganiseerd voordat we beginnen, want dit is een delicaat proces.

Sjabloon van een aangepaste zip

Als u een sjabloon-zip wilt downloaden die u aan uw eigen behoeften kunt aanpassen, of deze als basis wilt gebruiken voor het maken van een flashbare zip, kunt u deze hier downloaden:

  • TEMPLATE SCRIPT: LINK DOWNLOADEN (basisopdrachten / u moet uw aangepaste waarden toevoegen: apps, paden van beltonen, bootanimatie ...)
  • TEMPLATE ZIP: DOWNLOAD LINK (voorbeelden zijn altijd welkom om een ​​uitleg beter te begrijpen. Het kan helpen om te begrijpen hoe uw bestanden moeten worden gestructureerd).

De sjabloon moet voldoende zijn om een ​​aangepast script te kunnen gebruiken.

U moet deze hoofdpaden onthouden, want dit zijn de dingen in de / systeempartitie waarop uw flashbare ritsen zich meestal richten:

 addon.d => back-upscript om een ​​vuile flash te overleven (bijvoorbeeld gebruikt door GApps-pakket) app en priv-app => systeemapps om toe te voegen of te verwijderen etc => hostbestandslettertypen => uw lettertypemedia => uw bootanimation.zip media> audio> alarmen => geluiden voor alarmen media> audio> meldingen => geluiden voor meldingen media> audio> beltonen => geluiden voor beltonen media> audio> ui => geluiden voor verschillende dingen zoals batterij bijna leeg, ontgrendelen, camera, .. root van / systeem voor build.prop-bestand 

Onthoud altijd dat bestanden die van deze paden zijn verwijderd, opnieuw worden geïnstalleerd na een vuile flits en dat bestanden die handmatig zijn toegevoegd, worden verwijderd. Daarom is het noodzakelijk om een ​​script te maken dat een back-up maakt van uw / systeemmods.

Voorbeeld van een update-script

 ui_print ( "+ ------------------------------------- +"); ui_print ("| CLEAN FLASH SCRIPT |"); ui_print ("| |"); ui_print ("| by Primokorn |"); ui_print ( "+ ------------------------------------- +"); run_program ("/ sbin / busybox", "umount", "/ system"); run_program ("/ sbin / busybox", "mount", "/ system"); ui_print (""); ui_print ("*** Bloatwares *** verwijderen"); delete_recursive ("/system/app/adaway.apk", "/ system / app / AdAway", "/ system / app / BasicDreams", "/ system / app / BookmarkProvider", "/ system / app / Calendar", " / systeem / app / CalendarWidget ", " / systeem / app / CMFileManager ", " / systeem / app / CMWallpapers ", " / systeem / app / DeskClock ", " / systeem / app / Eleven ", " / systeem / app / E-mail ", " / systeem / app / ExactCalculator ", " / systeem / app / Exchange2 ", " / systeem / app / Gello ", " / systeem / app / HexoLibre ", " / systeem / app / Jelly ", " / systeem / app / LiveWallpapersPicker ", " / systeem / app / LockClock ", " / systeem / app / berichten ", " / systeem / app / MiXplorer ", " / systeem / app / NexusLauncher ", " / systeem / app / Phonograph ", " / systeem / app / PhotoTable ", " / systeem / app / PicoTts ", " / systeem / app / PicoTTS ", " / systeem / app / ResurrectionStats ", " / systeem / app / SoundRecorder ", " / systeem / app / Terminal ", " / systeem / app / TugaBrowser ", " / system / app / Wallpaper ", " / system / app / WallpaperPickerGoogle ", " / system / priv-app / AudioFX ", " / system / priv- app / Chrome ", " / "systeem / priv-app / Gallery2", "/ systeem / priv-app / MusicFX", "/ systeem / priv-app / OnePlusCamera", "/ systeem / priv- app / OnePlusGallery ", " / system / priv-app / OnePlusMusic ", " / system / priv-app / Recorder ", " / system / priv-app / Screencast ", " / system / priv-app / Snap ", " / systeem / priv-app / SnapdragonCamera ", " / systeem / priv-app / SnapdragonGallery ", " / systeem / priv-app / WeatherManagerService ", " / systeem / priv-app / WeatherProvider ", " / systeem / priv-app /Label" ); ui_print ("Apps en mods installeren, enz."); show_progress (8.800000, 5); package_extract_dir ("system", "/ system /"); ui_print ("*** Fixing permissions ***"); 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"); package_extract_dir ("data", "/ data /"); 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 ( "Done."); ui_print ("Klaar om opnieuw op te starten."); 

Opmerking: ui_print (""); is voor sms. Deze lijnen doen niets.

U moet de partitie altijd ontkoppelen en opnieuw monteren voordat u eraan werkt.

 run_program ("/ sbin / busybox", "umount", "/ system"); run_program ("/ sbin / busybox", "mount", "/ system"); 

Om systeemcomponenten / apps te verwijderen, plaatst u een komma aan het einde van elke regel, behalve de laatste.

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

Pak de systeembestanden uit die u wilt installeren.

 package_extract_dir ("system", "/ system /"); Stel de bestandsrechten in. set_perm (0, 0, 0755, "/system/addon.d/99-dirty.sh"); .............. set_perm (0, 0, 0644, "/system/priv-app/V4A-Magisk.apk"); 

Doe hetzelfde, maar dan voor de map / data. U gaat dus de partitie mounten, de gegevens extraheren die u wilt toevoegen en de machtigingen instellen.

 run_program ("/ sbin / busybox", "mount", "/ data"); package_extract_dir ("data", "/ data /"); set_perm (0, 0, 0755, "/data/local/afscript.sh"); 

Vervolgens ontkoppelt u de gewijzigde partities.

 run_program ("/ sbin / busybox", "umount", "/ data"); run_program ("/ sbin / busybox", "umount", "/ system"); 

Voorbeeld van Addon.D-script

 #! / sbin / sh # # /system/addon.d/99-dirty.sh # / systeem wordt geformatteerd en opnieuw geïnstalleerd, waarna deze bestanden worden hersteld. #. /tmp/backuptool.functions list_files () {cat < 

Maak een lijst met bestanden die u na een vuile flits wilt bewaren.

 list_files () {cat < 

RM -RF de bestanden die u niet wilt installeren na een vuile flash (systeembestanden die u in uw wijziging hebt verwijderd en die opnieuw worden geïnstalleerd vanaf een vuile flash)

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

Hoe maak je een Flashable Android Zip

We zullen hiervoor MiXplorer gebruiken, want het is zonder twijfel de beste root-verkenner en bestandsbeheerder voor Android.

  1. Selecteer eerst al uw mappen die in de zip worden opgenomen en kies Archief.

  2. Bevestig de aanmaak van uw archiefbestand, geef het een naam en kies Opslaan.

  3. Uw flashable zip wordt aangemaakt, dus selecteer het zip-bestand en vervolgens Ondertekenen (met behulp van de MiX signer plugin)
  4. Selecteer nu TestKey om het te controleren op handtekeningfouten.
  5. U kunt nu de zip flashen - raad aan het te verplaatsen naar / SDcard om het gemakkelijk te vinden vanuit aangepast herstel.

Slotopmerkingen

Uw flashable zip moet worden geïnstalleerd na een schone flash, of na het wissen van de / systeempartitie en het doen van een vuile flash van uw ROM. Het updater-script verwijdert en voegt de systeembestanden toe die u in uw script hebt opgegeven - maar laat het addon.d-script met rust, omdat het zijn werk doet zonder enige tussenkomst van u.

Controleer na je eerste installatie grondig de / systeempartitie om er zeker van te zijn dat alles correct is - bestanden zijn verwijderd, enz. Misschien had je een typefout in een bestandsnaam en deze is niet verwijderd, het gebeurt.

Interessante Artikelen