댓글 쓰기 권한이 없습니다. 로그인 하시겠습니까?
Android
2015.06.01 10:12
android pm 명령어 정리
조회 수 15542 댓글 0
http://egloos.zum.com/sharku/v/1328169 안드로이드에서 사용가능한 쉘 명령어입니다 pm의 기본 실행 권한은 -rwxr-xr-x(755) 입니다 쉘에서 pm 이라고 하면 usage가 출력됩니다 usage: pm list packages [-f] [-d] [-e] [-s] [-3] [-i] [-u] [FILTER] pm list permission-groups pm list permissions [-g] [-f] [-d] [-u] [GROUP] pm list instrumentation [-f] [TARGET-PACKAGE] pm list features pm list libraries pm path PACKAGE pm install [-l] [-r] [-t] [-i INSTALLER_PACKAGE_NAME] [-s] [-f] [--algo <algorithm name> --key <key-in-hex> --iv <IV-in-hex>] PATH pm uninstall [-k] PACKAGE pm clear PACKAGE pm enable PACKAGE_OR_COMPONENT pm disable PACKAGE_OR_COMPONENT pm disable-user PACKAGE_OR_COMPONENT pm grant PACKAGE PERMISSION pm revoke PACKAGE PERMISSION pm set-install-location [0/auto] [1/internal] [2/external] pm get-install-location pm set-permission-enforced PERMISSION [true|false] 크게 list path install uninstall clear enable disable great revoke set-install-location get-install-location set-permission-enforced 이렇게 정리할수 있겠습니다 이제 시작해보겠습니다. 실제 명령어는 굵게 표시했으니 참고하시면 됩니다. 1. list 리스트는 다시 여러개의 항목으로 나눠집니다 packages permission-groups permissons instrumentation features libraries 1) packages pm list packages 라고 쓰면 현재 설치된 패키지 목록이 출력됩니다. 여기서 출력되는 패키지이름들이 실제 패키지명입니다 카카오톡 이런건 패키지명이 아닙니다. 여기서는 모든 패키지가 출력됩니다 그런데 친절하게도 옵션들이 있습니다. -f 패키지명과 연관된 apk 파일의 경로를 보여줍니다 -d 실행 줄가능한 패키지를 보여줍니다 -e 실행가능한 패키지들을 보여줍니다 -s 시스템패키지만 보여줍니다 -3 시스템패키지가 아닌 서드파티 패키지만 보여줍니다(사용자가 설치한 앱) -i 각 패키지별로 인스톨러를 표시해줍니다(보통은 null) -u 언인스톨된 패키지까지 포함해서 보여줍니다(그런데 안보임..) 2) permission-groups pm list permission-groups 라고 쓰면 권한이 주어진 그룹을 출력합니다. 3) permissions pm list permissions 알려진 모든 permission을 보여줍니다. 옵션은 아래와같습니다 -g 그룹별로 부여된 permission들을 보여줍니다(permission-groups 에있는 group들을 기본으로 합니다) -f permission 별로 상세 내용을 보여줍니다 (각 permission 별로 package, label, descryption, protectionLevel 을 보여줍니다) -s 간단하게 각 항목(그룹)별로 해당하는 설명과 permission 들을 보여줍니다 항목들은 development tools Your personal informaiton Services that cost you money Your location Your messages Network communication Your accounts Storage Phone calls Hardware controls System tools ungrouped -d 위함한 permission 을 보여줍니다(기본적으로는 아무것도 없습니다) -u 위험하거나 일반적인 permission 들을 보여줍니다 4) instrumentation pm packages instrumentation -f 파일경로와 함께 보여줍니다. 5) features pm list features 시스템의 feature들을 보여줍니다. 블루투스, 카메라, 등등 이런것을 system feature 라고 합니다. 2. path pm path [package이름] 패키지의 설치 경로를 보여줍니다. pm list packages -f 와 기능은 똑같지만 이 명령어와 차이점은 다른 점은 한개만 보여준다는 겁니다. 3. install pm install [apk파일명] adb install [파일명] 과 같은 역할을 합니다. 차이점은 안드로이드의 쉘에서 실행해야 한다는 것이죠. -l forward-lock 이라는 설정을 추가해서 설치합니다. FORWARD-LOCK 라는 것은 이후 OS버전에서 앱이 업데이트 되지 않도록 하는 것입니다. 이후버전의 테스트 중이라거나 등등 특별한 상황에서 쓰이는 값입니다. -r 설치된 앱을 재설치하는 옵션입니다. -t 앱에 테스트를 허락하는 옵션입니다. -i 인스톨러 패키지를 지정합니다.(이름을 써주면 됩니다) -s 앱을 sdcard 에 설치합니다. -f 앱을 내부 저장장치에 설치합니다. 4. uninstall pm uninstall [패키지명] 설치할때는 파일명이지만 삭제할때는 패키지명으로 삭제해야 합니다 ㅎ 삭제할때는 /data/app 폴더의 앱까지 지워버립니다. -k 삭제 후에도 앱들의 데이터는 그대로 둡니다. 5. clear pm clear 패키지와 관련된 모든 데이터들을 삭제해버립니다. 패키지를 삭제하지는 않습니다. 6. enable, disable, disaable-user pm enable [패키지명] pm disable [패키지명] pm disable-user [패키지명] 세 명령어는 패키지를 사용 가능/불가능 상태를 설정합니다. 7. grant, revoke DB에서 자주 보던 명령어인데 여기서 또 보니 안반갑군요.. ㅋ pm grant [패키지명] [permission명] pm revoke [패키지명] [permission명] 보통은 권한문제로 허락이 안됩니다.. ㅋㅋ permission은 pm list permissions 로 확인! 8. get-install-location pm get-install-location 패키지의 설치 장소를 보여줍니다. 0 auto는 패키지에 설정된대로 알아서 되는것이고 1 internal은 내부저장장치에 2 external은 외부저장장치에 설치됩니다. 9. set-install-location 위에와 반대로 여기는 설정하는 창입니다. pm set-install-location [숫자] 이렇게 설정해주면 됩니다. Dreamy의 코드 스크랩내가 모으고 내가 보는
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Designed by sketchbooks.co.kr / sketchbook5 board skin
Sketchbook5, 스케치북5
Sketchbook5, 스케치북5
Sketchbook5, 스케치북5
Sketchbook5, 스케치북5