update.zip은 어떻게 작동합니까?


14

update.zip은 안드로이드 시스템의 일부를 대체하는 패키지입니다. 패키지에는 업데이트로 교체하려는 모든 파일과 실행시 교체 할 스크립트가 포함되어 있습니다.

Update.zip은 OTA 업데이트에서 제공 될 수 있지만 경우에 따라 일부 특수 폴더에 update.zip을 수동으로 다운로드하여 넣어야합니다. 그러나 update.zip은 여전히 ​​동일한 방식으로 감지되고 적용됩니다.

android의 어떤 부분이 update.zip을 감지하고 처리합니까?

답변:


18

update.zip 안드로이드는 절대 손대지 않습니다.

해당 아카이브 안에는 복구 런타임에 의해 구문 분석되고 해석되는 스크립트가 있습니다.

복구는 실행시 임시 디렉토리에 압축을 풀고 아카이브를 열고, 적절하게 이름이 지정된 스크립트를 읽고 update-script, 분석하고, 구문에 따라 복구에 알려진 기능을 실행합니다. 조금:

  • 마운트 /system및 기타 파일 시스템, 커널 복사, apk 또는 파티션 포맷 등을 포함한 읽기 / 쓰기 파일 작업 수행
  • build.prop장치, 제조업체 등과 같은 특정 속성을 확인하십시오.
  • 화면에 인쇄 표시, 진행 정보 등

그것은 안드로이드 오픈 소스 프로젝트 (AOSP)에 통합 된 사실상의 표준입니다.

ClockworkMod, TWRP는 AOSP에 상주하는 베어 본 버전의 파생물이며 터치 스크린 입력과 같은 추가 기능이 향상되었습니다.


+1 매우 흥미 롭습니다. 복구가 안드로이드 자체의 일부가 아닌가? 그것은 무엇에 속합니까? 별도의 엔터티 인 Linux의 일부입니까?
RossC

2
@RossC 적절한 복구 환경은 별도의 /recovery파티션 에 상주 합니다 (일부 제조업체는 알 수없는 이유로이 작업을 수행하지 않습니다. 의사 복구) 베어 본은 재고 복구 여부에 따라 제한된 Android 대 루트 권한 외에 더 많은 팩을 제공하는 CWM / TWRP 제한 . 진정한 모더의 즐거움은 복구를 위해 별도의 파티션이있는 장치입니다.
t0mm13b

1
/recovery파티션처럼 보이지 않습니다. 리눅스에서는 디렉토리 일뿐입니다. 그것은 장착 파티션 -하지만 여전히 디렉토리입니다. 나는 이것이 안드로이드 사용자들에게서 발견 한 일반적인 오해이기 때문에 이것을 말한다.
jcora

@yannbane-이것을 시도 cat /proc/mtd하거나 /proc/partitions부트 로더가 작동하는 방식을 살펴 보십시오. vol dwn을 누르면 부트 로더가 커널을 읽고 /recovery체인로드를 수행하여 재고 또는 사용자 정의 복구를 가져옵니다. 그것은 리눅스 가 아니다 ....
t0mm13b
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.