2012-04-10 2 views
1

프로그래밍 방식으로 기본 홈 화면의 설정을 해제하려고합니다. 내 응용 프로그램은 매니페스트의 홈으로 정의되지만 사용자가 홈 화면을 선택하는 대화 상자에서 기본 홈으로 전화 홈 화면을 선택하면 다시 내 홈으로 설정할 수 없습니다. 코드에서 기본 홈 화면 설정 해제

사용자가 내가하기 만 (체크 박스 "기본값으로 설정"에) 기본적으로 홈 화면으로 내 응용 프로그램을 선택하면

:

clearPackagePreferredActivities ("MypackageApp"); // from packagemanager

그러면 선택자가 다시 나타납니다. 그러나 대화 상자가 현재 홈 화면을 선택하는 방법 (사용자가 기본 설정으로 전화 홈 화면을 선택할 때)을 다시 표시하는 방법을 모르겠습니다. 나는 이것을 tryed했다 :

clearPackagePreferredActivities ("com.android.launcher"); // packagemanager에서 하지만 오류가 발생합니다 : java.lang.security.exception 사용자 *도 아니며 현재 프로세스에 android.permission.SET_PREFERRED_APPLICATIONS도 없습니다. 하지만 내 매니페스트 앱에서이 권한을 정의했습니다.

답변

2

I'm trying to unset the default home screen programatically.

확실한 보안상의 이유로 다행히도 불가능합니다.

My app is defined as home in manifest but if the user select the phone home screen as default (in the dialog to select the home screen) i cannot set my app as home again.

다른 홈 화면으로 전환 한 사용자는 매우 좋은 것으로 간주합니다.

But i have defined this permission in my manifest app.

응용 프로그램이 펌웨어 서명에 사용 된 것과 동일한 서명 키로 서명 된 경우에만 권한을 보유 할 수 있습니다.