[Android] 안드로이드 기기 바탕화면의 앱 숨김처리

[Android] 안드로이드 기기 바탕화면의 앱 숨김처리

AndroidManifest.xml 파일에서 intent-filter 태그 내용을 아래처럼 수정한다.

<!– 바탕화면에 앱 아이콘 표시  –>

<!–

<intent-filter>
    <action android:name=”android.intent.action.MAIN” />
    <category android:name=”android.intent.category.LAUNCHER” />
</intent-filter>

–>

<!– 바탕화면에 앱 아이콘 숨김  –>

<intent-filter>
    <action android:name=“android.intent.action.MAIN” />
    <category android:name=“android.intent.category.DEFAULT” />
</intent-filter>

앱을 숨기는 이유는 또다른 앱을 통해서 실행하기 위한 목적이다.

숨겨진 앱을 실행하는 코드는 다음과 같이 작성하면 된다.

    Intent intent = new Intent();

    // intent.setClassName(패키지명, 클래스명);
    intent.setClassName(“com.bb.testapp”, com.bb.testapp.MainActivity”);
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

   

    startActivity(intent);

참고로 앱을 숨기게 되면 안드로이드 스튜디오에서 앱 실행 시 “Error running ‘app’: Default Activity not found” 오류가 발생한다.

안드로이드 스튜디오 상단메뉴 [Run] – [Edit Configurations…] 에 들어간다.

 

Launch Optioins 항목의 Launch 콤보박스 값을 [Nothing] 으로 변경하고 [OK] 버튼을 클릭한다.