본문 바로가기

공부/안드로이드

launcher 에서 어플리케이션 아이콘 안보이게 하기

단말의 launcher 에서 내가 만든 어플의 아이콘을 숨겨야 할 때가 있다. 


(백그라운드에서만 동작해야 한다던지 사용자 임의로 액티비티를 실행시키지 못하도록 할 때)


이럴 때 PackageManager를 활용해서 런쳐 액티비티의 아이콘을 숨기도록 할 수 있다.


아래와 같이 간단하게 해결이 가능하다.


 녹색부분이 어플리케이션의 패키지이고 주황색부분은 런쳐 액티비티의 클래스이름이다.


숨겨진 아이콘을 다시 보이도록 하고 싶을 때는 하늘색 부분을 


PackageManager.COMPONENT_ENABLED_STATE_ENABLED 로 바꿔주면 된다.




ComponentName componentToDisable = 

new ComponentName(

"com.example.gcmclienttest"

"com.example.gcmclienttest.GcmClientTest");

getPackageManager().setComponentEnabledSetting(

componentToDisable, 

PackageManager.COMPONENT_ENABLED_STATE_DISABLED

PackageManager.DONT_KILL_APP);