답변:
약간의 파기 작업을 수행했으며 API 21 이상의 https://developer.android.com/reference/android/content/pm/PackageInstaller.html 시스템 권한이 없으면 가능합니다 .
실제로 Google에서 제공하는 코드 샘플이 있습니다. https://github.com/googlesamples/android-testdpc/blob/master/app/src/main/java/com/afwsamples/testdpc/cosu/CosuUtils.java
애플 리케이션이 (보통 설치 대화 상자 iewithout) 자동으로 설치되어있는 경우, 아마도 이러한 애플리케이션은 직접 전화 pm
즉, PackageManager
시스템 응용 프로그램으로 권한을 부담하는 android.permission.INSTALL_PACKAGES
.
앱이 pm
루트 컨텍스트에서 호출 될 수 있도록 전화를 루팅해야합니다 . 그렇지 않으면 "사용자 xxxx 또는 현재 프로세스에 android.permission.INSTALL_PACKAGES가 없습니다"라는 메시지가 표시됩니다.
편집 : 의견에서 @Izzy가 지적했듯이에 android.permission.INSTALL_PACKAGES
설치된 앱에도 부여됩니다 /system
. 더 많은 통찰력을 얻으려면 아래 의견 과이 질문 을 참조하십시오 .