Android N 테스터 : 루트 앱이 계속 실패하는 이유는 다음과 같습니다.

당신은 최첨단에 살고 싶어서 기내에서 뛰어 와서 Google의 새로운 Android N 미리보기 빌드를 설치했습니다. 소프트웨어를 일일 드라이버로 실행하고 있다면 (충돌하고 타는 것을 좋아할 수도 있고, 누가 알겠는가?) 즐겨 찾는 앱이 많이 작동하지 않는 것 같습니다. 더 나은 시스템 제어로 불행의 일부를 완화하기 위해 Android N 용 Chainfire의 SuperSU 베타를 플래시했지만 많은 루트 앱도 중단되었습니다. 왜? 그리고 어떻게 고칠 수 있습니까? Chainfire 에 따르면 그 이유는 Google이 도구 상자 에서 toybox로 이동하고 있으며 Android Marshmallow 이후로 도구 상자 마운트 지원을 제거 했기 때문입니다. 과거에 루트 앱에 문제가 있었다면 아마도 '도구 상자'라는 단어를 본 적이있을 것입니다. 그렇지 않은 경우 Chainfire가 무엇인지 설명하도록하겠습니다.

Android의 세 가지 상자는 도구 상자, 비지 박스 및 장난감 상자입니다. 이 박스는 다양한 Linux 배포판에서 제공되는 GNU Core Utils와 유사한 다양한 기본 유닉스 명령에 대한 구현을 제공합니다.

툴박스 는 최근까지 표준 Android 구현이었습니다. busybox 는 Android 외부의 표준 상자이며 GPL 라이센스가 있으며 많은 사람들이 Android로 이식했습니다. toybox 는 이전 busybox 관리자가 만든 busybox 의 BSD 라이센스 대안입니다. toybox 는 M에서 Android에 처음 등장했으며 다양한 명령에 대한 도구 상자 구현을 천천히 대체하고 있습니다.

이러한 명령은 대부분 루트 앱, 장치 스크립트 및 adb 셸 / 터미널 에뮬레이터 사용자가 사용합니다.

Chainfire에 따라 도구 상자 또는 비지 박스에서 발생하는 문제가 발생하는 이유는 다음과 같습니다.

많은 루트 앱은이 상자에서 제공하는 명령을 실행해야합니다. 기본 명령은 일반적으로 동일하지만 허용되는 매개 변수, 정확한 작업 및 출력은 구현과 구현의 버전에 따라 다릅니다.

기본적으로 일부 루트 앱에는 한 상자에있는 하나의 특정 명령이 필요하지만 다른 앱에는 다른 상자에있는 다른 특정 명령이 필요할 수 있기 때문에 많은 사용자는 상자 구현으로 인해 특정 루트 앱이 제대로 작동하는 데 문제가있었습니다. 모든 올바른 명령이 없습니다. 이로 인해 앱이 작동하지 않는 이유를 궁금해하는 사용자를 처리해야하는 Chainfire와 같은 개발자에게는 문제가 발생합니다. 대부분의 사용자에게는 하나의 b usybox 구현이 설치되어 있지만 개발자는 루트 응용 프로그램이 작동하는 데 필요한 적절한 매개 변수가있는 적절한 명령이 설치되기를 원하기보다는 도구 상자를 직접 호출 할 수 있습니다. 그러나이 해결 방법은 Android N에서 깨졌습니다.

불행히도 N Preview에서는 toybox mount 가 기본 구현으로 toolbox mount 를 대체했으며, 더 나쁜 경우 toolbox mount 가 제거되어 다시 되돌릴 수 없습니다. toybox mount 는 segfaults의 사가를 제거 한 것처럼 보이지만 실제로는 그렇게 잘 작동하지 않습니다. 최소한 툴박스 구현만큼이나 대체 된 것은 아닙니다.

이것이 Android N의 루트 앱이 실패하는 이유입니다. Chainfire는 SuperSU 2.70에 수정 프로그램을 적용하여 널리 사용되는 mount 명령 형식을 사용하는 일부 깨진 앱을 부분적으로 수정하려고 시도했지만 모든 앱이 수정되는 것은 아닙니다. 최종 사용자 인 경우 즐겨 사용하는 앱 개발자가 업데이트를 푸시 할 때까지이 작업을 수행 할 수있는 작업이 없습니다. Android N 사용자에게 문제가 발생하는 이유를 궁금해하는 개발자 인 경우 Chainfire의 전체 게시물을 읽고 앱을 수정하는 방법을 알아야합니다.


Android N에서 루트 앱이 실패 했습니까? 아래 의견에 모든 사람에게 알려주십시오 (특히 개발자에게 연락하십시오)!