안드로이드 루트 권한 요청 (Superuser Intent 방식)
Source
Evernote/Technote scraps/April weather 안드로이드 루트 권한 요청하기 소스 코드.md
Summary
이 문서는 Android 앱에서 Superuser 앱을 통해 루트 권한을 요청하는 방법을 설명합니다. android.intent.action.superuser 인텐트를 사용하여 Superuser 앱에 권한 요청을 보내고, 사용자가 승인하면 Runtime.getRuntime().exec("su")를 통해 특권 명령을 실행하는 흐름을 다룹니다.
Key Points
- Superuser 앱이 노출하는
android.intent.action.superuser인텐트를 사용하여 루트 권한을 요청할 수 있음 - 인텐트에 요청 앱의 이름(
name)과 패키지명(packagename)을.putExtra로 전달 startActivityForResult로 요청을 보낸 후, 사용자가 ‘Yes’ 또는 ‘Always’를 선택해야만 권한이 부여됨- 권한 부여 시
Runtime.getRuntime().exec("su -c <command>")를 통해 루트 권한 명령 실행 가능 - 사용자가 거부할 경우 명령 실행 실패