안드로이드 시스템 개조를위한 플래시 가능 지퍼를 만드는 방법
/ system 파티션 용 응용 프로그램 (예 : 루트 응용 프로그램)을 만들려는 Android 개발자 인 경우 응용 프로그램에 대해 플래시 가능한 .zip을 만들려는 특정 인스턴스가 있습니다. 앱 파일을 / system 파티션에 올바르게 설치할 수 있도록하기위한 것입니다.
플래시 가능한 .zip의 다른 용도는 다음과 같습니다.
- DPI 수정
- 사용자 정의 글꼴 적용
- 사용자 정의 부팅 애니메이션 적용
- 시스템 앱 제거 또는 추가
사용자에게 파일 시스템을 어지럽히고 파일을 수동으로 이동하도록 지시하는 것은 관련된 모든 사람에게 시간 낭비입니다. 플래시 가능한 .zip을 작성하는 것이 훨씬 편리한 경로입니다. 이 Appual 's guide는 안드로이드 용 플래시 지퍼를 만드는 방법을 보여줍니다.
또한 addon.d 스크립트를 보여 주므로, 커스텀 시스템 변경 사항은 더티 ROM 플래시에서도 살아남을 수 있습니다. 따라서 사용자는 각 업데이트마다 지퍼를 다시 플래시 할 필요가 없습니다.
요구 사항 :
- 루트 파일 탐색기 (MiXplorer, Solid Explorer)
- MixPlorer를 사용하는 경우 ZipSigner (zip 서명용) 또는 MiX Signer 플러그인
- Nandroid 백업을 적극 권장합니다
또한 zip으로 들어가는 모든 파일 (예 : APK, 구성, 부팅 애니메이션 등)도 준비해야합니다. 시작하기 전에 모든 것이 정리되어 있어야합니다.이 과정은 섬세한 프로세스이기 때문입니다.
맞춤 우편 템플릿
자신의 필요에 맞게 사용자 정의 할 수있는 템플릿 zip을 다운로드하거나 플래시 가능한 zip을 만들기위한 기반으로 사용하려는 경우 여기에서 가져올 수 있습니다.
- 템플릿 스크립트 : 다운로드 링크 (기본 명령 / 사용자 정의 값을 추가해야 함 : 앱, 벨소리 경로, 부팅 애니메이션…)
- 템플릿 ZIP : 다운로드 링크 (예는 설명을 더 잘 이해하기 위해 항상 환영합니다. 파일을 구성하는 방법을 이해하는 데 도움이 될 수 있습니다).
템플릿은 사용자 정의 스크립트를 사용하기에 충분해야합니다.
이 주요 경로는 / system 파티션에서 플래시 가능한 zip이 일반적으로 대상으로하기 때문에 다음과 같은 경로를 기억해야합니다.
addon.d => 더티 플래시 (예 : GApps 패키지에서 사용) 앱 및 priv-app => 시스템 앱에서 추가 또는 제거를위한 백업 스크립트 => 호스트 파일 글꼴 => 글꼴 미디어 => bootanimation.zip 미디어> 오디오> 알람 => 알람 소리 미디어> 오디오> 알림 => 알림 소리 미디어> 오디오> 벨소리 => 벨소리 소리 미디어> 오디오> ui => 배터리 부족, 잠금 해제, 카메라, .. build.prop 파일의 / system 루트
이러한 경로에서 제거 된 파일은 더티 플래시 후에 다시 설치되며 수동으로 추가 한 파일은 제거됩니다. 그렇기 때문에 / system 모드를 백업하는 스크립트를 작성해야합니다.
업데이트 스크립트의 예
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 ( "*** 블로 트웨어 삭제 ***"); 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 / 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 / 태그 "); ui_print ( "앱 및 모드 설치 등"); show_progress (8.800000, 5); package_extract_dir ( "system", "/ system /"); 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 ( "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 ( "완료."); 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 ( "system", "/ system /"); 파일 권한을 설정하십시오. 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 ( "data", "/ data /"); 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 # / system이 포맷되고 다시 설치되면 해당 파일이 복원됩니다. #. /tmp/backuptool.functions list_files () {cat <더러운 플래시 후에 보관할 파일 목록을 만듭니다.
list_files () {고양이 <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를 사용할 것입니다. 안드로이드를위한 최고의 루트 탐색기와 파일 관리자이기 때문입니다.
- 먼저 zip에 포함될 모든 폴더를 선택하고 보관을 선택하십시오.
- 보관 파일 생성을 확인하고 파일 이름을 지정한 다음 Store를 선택하십시오.
- 플래시 가능한 zip이 생성되므로 zip 파일을 선택한 다음 서명하십시오 (MiX 서명자 플러그인 사용).
- 이제 서명 오류를 검사하려면 TestKey를 선택하십시오.
- 이제 zip을 플래시 할 수 있습니다. 사용자 지정 복구에서 쉽게 찾을 수 있도록 / SDcard로 옮기는 것이 좋습니다.
최종 노트
클린 플래시 후 또는 / system 파티션을 지우고 ROM을 더티 플래시 한 후에 플래시 가능한 zip을 설치해야합니다. 업데이터 스크립트는 스크립트에 지정한 시스템 파일을 제거하고 추가하지만 addon.d 스크립트는 그대로 두어야합니다.이 스크립트는 사용자의 간섭없이 작업을 수행하기 때문입니다.
처음 설치 한 후에는 / system 파티션을 철저히 검사하여 파일이 제거 된 등 모든 것이 올바른지 확인하십시오. 파일 이름에 오타가 있거나 제거되지 않았을 수 있습니다.