2012-02-09 4 views
2

에 프로그램 APK 파일을 설치하는 방법 :이 코드에 의해 프로그램 APK를 설치하기 위해 노력하고있어 갤럭시 탭

Intent intent = new Intent(Intent.ACTION_VIEW); 
String mimetype = "application/vnd.android.package-archive"; 
intent.setDataAndType(Uri.fromFile(file), mimetype); 
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
startActivity(intent); 

을 그리고 삼성 갤럭시 탭 GT-P1000를 제외한 모든 장치에 대해 잘 작동합니다.

Galaxy Tab 패키지 관리자는 설치를 시작하지만 끝내지 않습니다. 끝없는 진행 표시 줄이 있습니다. 뒤로 키로 pakage 관리자를 닫은 후에는 결코 적은 apk가 시스템에 설치되지 않았 음을 확인합니다.

파일 관리자에서 같은 apk를 설치하기 만하면 올바르게 작동합니다. Apk 설치 및 패키지 관리자 설치 진행이 몇 초 내에 완료됩니다.

프로그래밍 방식으로 설치할 때 패키지 관리자가 제대로 작동하려면 어떻게해야합니까?

+0

참고로 필자는 필자의 스크립트가'am' 명령으로 .apk 파일을 설치할 때 내 갤럭시 탭에서 이것을 자주 관찰합니다. 설치는 항상 두 번째 시도에서 이루어졌습니다. –

답변

0

문제는 Galaxy Tab 작업 관리자에 따라 다릅니다. 내 응용 프로그램의 버그로 인해 100 % CPU를 사용하고있었습니다. 그리고 작업 관리자가 단순히 패키지 관리자를 켜지 않은 것 같습니다. 100 % cpu로 버그를 수정 한 후 패키지 관리자가 제대로 작동하기 시작합니다.

0

이 작업을 수행하려면 apk를 설치해야하는 프로젝트의 장치에 설치하고 싶습니다. 그런 다음 인 텐트를 사용하여 설치를 시작할 수 있습니다.

확인이 아웃 - http://www.androidsnippets.com/install-an-apk-via-intent

또 다른 방법은 ACTION_VIEW 의도를 생성하고 의도의 setDataAndType 방법을 사용하는 것입니다. 그런 다음 컨텍스트의 startActivityForResult() 메소드를 사용하여 APK를 설치하십시오.

매니페스트에 INSTALL_PACKAGES의 사용자 권한이 필요할 수도 있습니다.

+0

프로젝트에이 APK를 포함 할 수 없습니다. 외부 양식으로 다운로드 중입니다. 그리고 왜 그것이 도움이 될 수 있다고 생각합니까? 그리고 물론 매니페스트에서 를 사용하고 있습니다. – vok1980