Как да създадете запалим цип за системни модове на Android

Ако сте разработчик на Android, който иска да създаде приложения, предназначени за / системен дял (като root приложения), има някои случаи, в които ще искате да създадете плаващ .zip за приложението си. Това е така, че файловете на приложенията да могат да бъдат инсталирани правилно към / системния дял.

Няколко други приложения на сменяеми .zips включват:

  • Промяна на DPI
  • Прилагане на персонализиран шрифт
  • Прилагане на персонализирана анимация за зареждане
  • Премахване или добавяне на системни приложения

Инструктирането на вашите потребители да се забъркват във файловата система и ръчно да преместват файлове е загуба на време за всички участващи - създаването на плаващ .zip е много по-удобен маршрут. Това ръководство за Appual ще ви покаже как да създадете бъркащ цип за Android.

Ще ви покажем и скрипт на addon.d, така че персонализираните промени в системата да преживеят мръсна ROM светкавица - по този начин потребителите няма да имат нужда да презареждат вашия цип за всяка актуализация.

Изисквания:

  • Корен изследовател на файлове (MiXplorer, Solid Explorer)
  • ZipSigner (за подписване на ципове) или плъгинът MiX Signer, ако използвате MixPlorer
  • Силно се препоръчва резервно копие на Nandroid

Трябва също така да подготвите всички файлове, които влизат в ципа - APK, конфигурации, стартови анимации и др. Организирайте всичко преди да започнем, защото това е деликатен процес.

Шаблон на потребителски цип

Ако искате да изтеглите цип на шаблон, който можете да персонализирате според вашите собствени нужди или да го използвате като основа за създаване на променящ се цип, можете да ги вземете тук:

  • TEMPLATE SCRIPT: DOWNLOAD LINK (основни команди / трябва да добавите вашите персонализирани стойности: приложения, пътища на мелодии, bootanimation…)
  • TEMPLATE ZIP: DOWNLOAD LINK (примери винаги са добре дошли, за да разберете по-добре обяснение. Това може да ви помогне да разберете как да структурирате вашите файлове).

Шаблонът трябва да е достатъчен, за да започнете да използвате персонализиран скрипт.

Ще трябва да запомните тези основни пътища, тъй като това са нещата в / системния дял, към които обикновено могат да се насочват вашите променящи се ципове:

 addon.d => резервен скрипт за оцеляване на мръсна светкавица (използвана например от пакета GApps) и priv-app => системни приложения за добавяне или премахване и т.н. => шрифтове на хост файлове => вашия шрифт media => your bootanimation.zip медия> аудио> аларми => звуци за аларми медии> аудио> известия => звуци за медии за известия> аудио> мелодии => звуци за мелодии за звънене> аудио> ui => звуци за различни неща, като ниска батерия, отключване, камера, .. корен на / система за файл build.prop 

Винаги помнете, че файловете, премахнати от тези пътеки, ще бъдат инсталирани отново след мръсна светкавица и файловете, които са добавени ръчно, ще бъдат премахнати. Ето защо е необходимо да се създаде скрипт, който прави резервно копие на вашите / системни модове.

Пример за актуализация-скрипт

 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 ("*** Изтриване на 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 / Имейл ", " / system / app / ExactCalculator ", " / system / app / Exchange2 ", " / system / app / Gello ", " / system / app / HexoLibre ", " / system / app / Jelly ", " / system / app / LiveWallpapersPicker ", " / system / app / LockClock ", " / system / app / съобщения ", " / 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 / Таг "); ui_print ("Инсталиране на приложения и модове и т.н."); show_progress (8.800000, 5); package_extract_dir ("система", "/ система /"); ui_print ("*** Фиксиране на разрешения ***"); 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 ("данни", "/ данни /"); 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 ( "Готово."); ui_print ("Готов за рестартиране."); 

Забележка: ui_print (”“); е за текстово съобщение. Тези редове не правят нищо.

Винаги трябва да демонтирате и монтирате отново дяла, преди да работите върху него.

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

За да премахнете системните компоненти / приложения, поставете запетая в края на всеки ред, с изключение на последния.

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

Извадете системните файлове, които искате да инсталирате.

 package_extract_dir ("система", "/ система /"); Задайте разрешенията за файлове. set_perm (0, 0, 0755, "/system/addon.d/99-dirty.sh"); .............. set_perm (0, 0, 0644, "/system/priv-app/V4A-Magisk.apk"); 

Направете същото, но за папката / data. Така ще монтирате дяла, извлечете данните, които искате да добавите и зададете разрешенията.

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

След това ще демонтирате променените дялове.

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

Пример за Addon.D скрипт

 #! / sbin / sh # # /system/addon.d/99-dirty.sh # / системата се форматира и преинсталира, след това тези файлове се възстановяват. #. /tmp/backuptool.functions list_files () {cat < 

Създайте списък с файлове, които искате да запазите след мръсна светкавица.

 list_files () {cat < 

RM -RF файловете, които не искате да бъдат инсталирани след мръсна светкавица (системни файлове, които сте премахнали във вашата модификация, които ще бъдат инсталирани отново от мръсна светкавица)

 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 ;; 

Как да създадете запалим Android Zip

Ще използваме MiXplorer за това, тъй като това е най-добрият root Explorer и файлов мениджър за Android, с ръце надолу.

  1. Първо изберете всички ваши папки, които ще бъдат включени в ципа, и изберете Архив.

  2. Потвърдете създаването на вашия архивен файл, дайте му име и изберете Store.

  3. Вашият пулсиращ се цип ще бъде създаден, така че изберете zip файла и след това го подпишете (с помощта на MiX подписващ плъгин)
  4. Сега изберете TestKey, за да го проверите за грешки в подписа.
  5. Вече можете да прокарате ципа - препоръчайте да го преместите в / SDcard за лесно намиране от потребителско възстановяване.

Заключителни бележки

Вашият сменяем цип трябва да бъде инсталиран след чиста светкавица или след изтриване на / системния дял и извършване на мръсна светкавица на вашия ROM. Скриптът за актуализиране ще премахне и добави системните файлове, които сте посочили в скрипта си - но оставете скрипта addon.d сам, защото той ще свърши своята работа без намеса от вас.

След първата си инсталация внимателно проверете / системния дял, за да се уверите, че всичко е правилно - файловете са премахнати и т.н. Може би сте имали грешка в името на файла и то не е премахнато, това се случва.

Интересни Статии