빠른 부팅 USB를 사용하지 않는 Flash boot.img


10

그래서 나는 최근에 전화를 뿌리고 ROM을 두 번 시도했습니다. TWRP 복구를 사용하여 SD 카드에서 다른 ROM을 설치할 수 있으므로 PC에 연결할 필요가 없습니다.

그러나 내 장치 (HTC One S)에서는 모든 ROM에 대해 다른 boot.img 파일을 플래시해야하므로 ROM을 전환하려면 전화를 PC에 연결해야합니다. 이 작업을 수행하지 않으면 로딩 화면에 고정됩니다. 그런 다음 명령을 사용해야합니다

fastboot flash boot boot.img

boot.img가있는 폴더에서

USB를 통한 고속 부팅을 사용하지 않고이 부팅 이미지를 TWRP 또는 다른 방법으로 플래시 할 수 있습니까?

답변:


10

해야 할 일은 boot.img를 묶고 ClockworkMod 또는 TWRP를 통한 플래싱에 적합한 새로운 zip 파일을 만드는 것입니다.

전제 조건 :

  • Java와 같은 일반적인 개발 패키지가 설치된 Linux 환경 ( 다른 플랫폼 에도 적용 할 수 있습니다. 아래에서 사용되는 경로를 나타내는 여기 지침에 슬래시가 사용 /되므로 \Windows 환경의 경우 특히 백 슬래시가 되도록주의하십시오! )
  • adb 명령 줄 도구가 설치되었습니다.
  • `testsign.jar ' 도구 : zip 파일에 서명하여 복구가 유효한 아카이브인지 인증하고 확인할 수 있도록합니다. 그렇지 않으면 복구가 손상된 아카이브 또는 이와 유사한 것을보고 합니다.
  • update-binaryflashable 스크립트와 함께 사용하기위한 내부 명령 줄 응용 프로그램 입니다. (이것은 모든 플래시 가능한 zip에서 찾을 수 있습니다 . 중요한 것은 바이너리를 추출하고 표시된 것처럼 디렉토리의 구조에 저장하는 것입니다)
  • 우편 명령 줄 도구.

토론을 위해 디렉토리를 workdir 이라고 가정 하고 작업 디렉토리를 호출하여 해당 디렉토리에 복사 한 boot.img후 다음 디렉토리 구조를 작성하십시오 META-INF/com/google/android. 이것은 중요합니다! 그리고 내에서 해당 디렉토리로 META-INF/com/google/android호출 update-binary된 이진 애플리케이션을 복사하십시오 . 따라서 디렉토리 구조는 다음과 같아야합니다.

+ workdir/
     +
     |
     +--+ boot.img
     |
     |
     +--+ META-INF/
              +
              |
              +--+ com/
                    +
                    |
                    +--+ google/
                           +
                           |
                           +--+ android/
                                   +
                                   |
                                   +--> update-binary
                                   |
                                   +--> updater-script

에 관해서는 updater-script, 아래의 다음의 내용을 복사 :

ui_print("Please wait, boot.img being flashed...");
show_progress(0.1, 0);
assert(package_extract_file("boot.img", "/tmp/boot.img"),
       write_raw_image("/tmp/boot.img", "boot"),
       delete("/tmp/boot.img"));
show_progress(0.1, 10);
ui_print("It is now safe to reboot! :)");

기억하십시오 : 여기에 표시된 업데이터 스크립트는 혼동하지 말고 그대로 두어야합니다. Windows 환경에서이 작업을 수행하는 경우 슬래시를 백 슬래시로 뒤집지 마십시오.

디렉토리 구조의 상위로 돌아가서 (즉, workdir 외부) 다음을 수행하면 다음과 같이 zip 파일을 생성 할 것입니다.

zip -r my_custom_flashable_boot_unsigned.zip workdir/이것은 재귀 함수이므로 모든 것을 my_custom_flashable_boot_unsigned.zip 파일에 압축합니다 .

마지막으로, zip 파일에 서명하려면 다음을 발행하십시오.

java -classpath testsign.jar testsign my_custom_flashable_boot_unsigned.zip my_custom_flashable_boot_signed.zip

그런 다음 SD 카드를 가로 질러 SD 카드를 가로 질러 adb push my_custom_flashable_boot_signed.zip /sdcard/수동으로 복구하고 문제를 해결하는 zip 아카이브 (예 : my_custom_flashable_boot_signed.zip )를 지정하십시오.


좋아, 나 자신에게 훌륭한 지침을 만들고 싶습니다. SD 카드의 폴더에있는 모든 ROM의 플래시 부팅 부트를 얻을 수 있기 때문에 원하는 상황이 발생할 수 있기 때문에 컴퓨터가 필요한 것은 아닙니다.
MarioDS

2

flash_image바이너리 가 있으면 터미널 에뮬레이터를 통해 장치에서 수행 할 수 있습니다 (플래시 부팅, 나머지는 복구 사용).

통사론: flash_image boot /sdcard/boot.img

자기 진흥 시간

바이너리에 대한 GUI를 제공하는 앱이 있습니다. 여기에서 찾으 십시오 .

해당 바이너리가없는 경우 설치할 수 있습니다 (Google it-다운로드 한 다음 /system/bin폴더에 복사해야 함) .

모든 장치에서 작동하지는 않지만 이것이 유일하게 떠오르는 유일한 방법입니다.


잘 알고 있다면 터미널 에뮬레이터는 휴대 전화가 정상 모드로 부팅되는 동안 실행되는 일반 응용 프로그램입니까? OS가 실행되는 동안 부팅 플래시 문제가 발생하지 않습니까?
MarioDS

1
@MarioDeSchaepmeester 전화는 부팅하는 동안 만 부팅을 사용합니다;)
Liam W

유무 같이, 그것을 downvote했다 flash_image요구 사항을 가지고 복사를 사용하여 휴대폰에서 호출하는 adb shell, 문서를 ( 간부 비트 세트 (* 나쁜 생각 이상으로 SDCARD를 다시 마운트 요구하고 내가 추가 할 수 있습니다, 당신하세요 linky를 제공하기 위해 실패) ) 및 루트 즉, 필요 su것과 더를, 앱 관련하여 "자기 홍보는"I에서 온 유로에, 비싼이다 6,09 유로입니다 ... FASTBOOT가 표준이며, CM은 자신의 기발한 가지 방법이 있습니다 - 서로 다른 무엇 fastbootflash_image?
t0mm13b

또한 바이너리는 컴퓨터없이 사용할 수 있습니다.
Liam W

0

이 부팅 이미지를 TWRP [...]로 플래시 할 수 있습니까?

파일 이름을 변경 boot.emmc.win을 과에 배치 TWRP/BACKUPS/(새 폴더를 만듭니다). 일반적인 TWRP 메뉴에서 백업을 복원

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.