안드로이드 에뮬레이터를 근절하는 방법 (Android 7.1.1 / Nougat)
Android 에뮬레이터를 루팅하는 더 쉬운 방법을 커뮤니티에 알리게되어 기쁩니다 (독립형 Android SDK에서 실행).
요구 사항 :
참고 : SuperSU는 더 이상 사용되지 않지만이 방법은 여전히 에뮬레이터를 루팅하는 데 사용되며 최신 루팅 방법에 대해서는 더 많은 업데이트가 제공됩니다.
명령
SuperSu.apk 설치
먼저 SuperSu 앱을 설치하고 드래그 앤 드롭하십시오 (최신 에뮬레이터 버전을 실행하거나 adb를 통해 사이드로드하는 경우 adb –e install supersu.apk
)
설치 후, 실행하면 아래와 같이“SU 바이너리가 설치되어 있지 않습니다.”라는 화면이 나타납니다. 이 오류는 장치가 아직 루팅되지 않았 음을 확인합니다.
에뮬레이터의 시스템 파티션 쓰기 가능
참고 : Android SDK가 설치된 도구 폴더로 이동 한 다음 Shift 키를 누르고 마우스 오른쪽 단추를 클릭하여 명령 프롬프트를여십시오.
시스템 디렉토리에서 su 바이너리 푸시
- 복구 flashable.zip 추출 (다른 아키텍처의 su 바이너리가 포함됨)
중대한! x86, arm 등과 같은 DVD 아키텍처와 일치하는 su 바이너리 만 사용하고이 바이너리를 추출한 경로를 기록하십시오.
- 루트로 adb를 실행하고 다시 마운트해야합니다. 이 코드를 입력하십시오
adb root
adb remount
이제 su 바이너리를 푸시 할 시간입니다 :
이것은 내가 성공적으로 사용한 코드입니다 .adb -e push C:\%USERPROFILE%\Desktop\rootemu\x86\su.pie /system/bin/su
(su 바이너리의 특정 위치에 대해서는 신경 쓰지 마십시오. 공백이 없으면 아무 위치 나 괜찮습니다)
이것이 실패하면 대신이 디렉토리로 넘어가십시오 /system/xbin/su
. 또한 안드로이드 5.1 이하를 실행하는 에뮬레이터의 su
경우su.pie
su 바이너리의 권한 변경
- 다음으로 su 바이너리의 권한을 약간 수정 해 봅시다. 에뮬레이터 장치에서 adb를 통해이 작업을 수행해야합니다.
adb –e shell
su root
cd /system/bin
chmod 06755 su
중대한!! su 이진 경로를 적어 둡니다 (광산은 / system / bin입니다).
- 설정
install
SU 바이너리 및 세트 A의 지시를daemon
코드를 입력하십시오 :
su --install
그리고 데몬을 설정하기 위해 :
su --daemon&
중대한!! 간격을 기록해 두십시오
SELinux를 허용으로 설정 (즉, SE Linux 끄기)
- 마지막으로이 코드를 통해 selinux를 끄십시오 :
setenforce 0
그게 다야 !! SuperSU 앱을 열고 바이너리 업데이트를 요청하면 일반 방법을 사용할 수 있습니다.
SU 권한이 필요한 모든 응용 프로그램을 두 번 확인하고 실제로 SUSU는 su 권한을 부여할지 묻습니다.
비고
참고로 대부분의 내용은 이전 안드로이드 버전에 대한 것이기 때문에 내가 수정 한 다른 명령과 경로의 이유입니다.
특별 인정;
Irvin H에게 특별한 감사의 말을 전합니다.이 튜토리얼은 수많은 시간을 겪지 못한 후이 가이드를 만들도록 영감을 주었으며 많은 사용자가 에뮬레이터를 루팅해야 할 필요성을 본 후에도 도움이되었습니다. 나는 이것이 또한 많은 혜택을 얻을 수 있기를 바랍니다
어빈 H : 안드로이드 에뮬레이터 루팅 – 안드로이드 스튜디오 2.3 ((Android 4.4)
최신 정보
SaAtomic이 언급 한 것처럼
이 방법은 여전히 Android Studio 3.0.1에서 실행 가능합니다
에뮬레이터 버전 27.2.9
이상으로 업그레이드 한 후에 는 이제 스냅 샷 기능을 통해 루트를 훨씬 쉽게 보존 할 수 있습니다 (system.img 메소드를 복사 할 수없는 경우).
이상적으로는 구성을 그대로 유지하면서 가상 장치를 최대 절전 모드로 유지하는 것과 비슷하므로 모든 것이 보존됩니다.
스냅 샷
이제 지정된 장치 구성에 대해 여러 AVD 스냅 샷을 저장하고 에뮬레이터를 시작할 때로드 할 저장된 스냅 샷을 선택할 수 있습니다. 스냅 샷을로드하여 가상 장치를 시작하는 것은 전원이 꺼진 상태에서 부팅하는 것이 아니라 절전 상태에서 물리적 장치를 깨우는 것과 매우 유사합니다.
이것은 에뮬레이터를 시작하기위한 유일한 요구 사항은 -writable-system
매개 변수를 일반 에뮬레이터 -avd [avdname]
명령에 추가하여 에뮬레이터 를 시작하는 것입니다. (에뮬레이터 -avd [avdname] 만 사용하여 에뮬레이터를 실행하면 루팅 된 버전 / 복사본이 시작되지 않거나 일부 오류가 발생할 수 있습니다)
API 레벨 22에서 테스트