update.zip ทำงานอย่างไร


14

update.zip s เป็นแพ็กเกจที่มีการแทนที่สำหรับชิ้นส่วนของระบบ Android แพ็คเกจประกอบด้วยไฟล์ทั้งหมดที่การอัปเดตมีวัตถุประสงค์เพื่อแทนที่และสคริปต์ที่จะทำการแทนที่เมื่อทำงาน

Update.zips อาจมาจากการอัพเดท OTA แต่ในบางกรณีจำเป็นต้องดาวน์โหลดด้วยตนเองและวาง update.zip ไว้ในโฟลเดอร์พิเศษบางโฟลเดอร์ อย่างไรก็ตาม update.zip ยังคงตรวจพบและนำไปใช้ในลักษณะเดียวกัน

ส่วนไหนของ android ที่ตรวจพบและจัดการ update.zips

คำตอบ:


18

update.zip ไม่เคยสัมผัสโดย Android

ข้างในไฟล์เก็บถาวรนั้นเป็นสคริปต์ที่วิเคราะห์และตีความโดยรันไทม์การกู้คืน

การกู้คืนเมื่อเรียกใช้งานจะเปิดการเก็บถาวรโดยการคลายซิปลงในไดเรกทอรีชั่วคราวอ่านสคริปต์ชื่อ aptly update-scriptวิเคราะห์และขึ้นอยู่กับไวยากรณ์ดำเนินการฟังก์ชันที่รู้จักกับ Recovery ซึ่งฟังก์ชันดังกล่าวอาจทำสิ่งต่อไปนี้เพื่อตั้งชื่อ ไม่กี่:

  • mount /systemและระบบไฟล์อื่น ๆ และดำเนินการอ่าน / เขียนไฟล์รวมถึงการคัดลอกเคอร์เนลหรือ apk หรือแม้กระทั่งการจัดรูปแบบพาร์ทิชัน ฯลฯ
  • ตรวจสอบbuild.propคุณสมบัติบางอย่างเช่นอุปกรณ์ผู้ผลิต ฯลฯ
  • พิมพ์หน้าจอแสดงผลข้อมูลความคืบหน้า ฯลฯ

มันค่อนข้างจะเป็นมาตรฐานจริงที่รวมอยู่ใน Android Open Source Project (AOSP)

ClockworkMod, TWRP เป็นอนุพันธ์ของรุ่นแบร์โบนที่อยู่ใน AOSP พร้อมการปรับปรุงเพิ่มเติมเช่นอินพุตหน้าจอสัมผัส


+1 น่าสนใจมาก ดังนั้นการกู้คืนจึงไม่ใช่ส่วนหนึ่งของ Android มันตกอยู่ภายใต้อะไร? ส่วนหนึ่งของ Linux ซึ่งเป็นเอนทิตีแยกต่างหาก
RossC

2
@RossC สภาพแวดล้อมการกู้คืนที่เหมาะสมอาศัยอยู่ใน/recoveryพาร์ติชันแยกต่างหาก(ผู้ผลิตบางรายไม่ได้ทำสิ่งนี้ด้วยเหตุผลที่ไม่รู้จักบางอย่างการกู้คืนเทียม) แบร์โบน จำกัด Android ขึ้นอยู่กับการกู้คืนหุ้นเปลือก จำกัด vs CWM / TWRP ซึ่งแพ็คเพิ่มเติม . ความสุขที่แท้จริงของ modder คืออุปกรณ์ที่มีพาร์ติชั่นแยกต่างหากสำหรับการกู้คืน
t0mm13b

1
/recoveryดูไม่เหมือนพาร์ติชัน ใน Linux นั่นเป็นเพียงไดเรกทอรี มันอาจจะเป็นที่ติดตั้งพาร์ทิชัน - แต่มันก็ยังคงเป็นเพียงไดเรกทอรี ฉันพูดแบบนี้เพราะมันเป็นความเข้าใจผิดที่ฉันพบในผู้ใช้ Android
jcora

@ yannbane - ลองใช้cat /proc/mtdดูหรือดู/proc/partitionsว่า bootloader ทำงานอย่างไรถ้ามีการกด vol dwn bootloader จะอ่านเคอร์เนลจาก/recoveryและโหลดโซ่นำมาซึ่งการกู้คืนหุ้นหรือกำหนดเอง มันเป็นไม่ได้ลินุกซ์ ....
t0mm13b
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.