개발린생

[안드로이드] 앱 빌드 후 앱 아이콘이 안보이는 문제 본문

Android Develop/너와 나의 문제 ・⋆。✰

[안드로이드] 앱 빌드 후 앱 아이콘이 안보이는 문제

김블루 2022. 11. 9. 20:25

안드로이드 스튜디오에서 Run 'app'을 실행하여 앱 빌드 시 앱 설치 후 실행이 된다.

자동으로 실행이 되니 구현한 화면까지는 볼 수 있는데... 목록에서 찾을 수 없는 앱!

 

해당 프로젝트에서 여러번 빌드하면서 앱 아이콘이 사라진 적이 없는데

어느 시점 이후로 앱 빌드 시 앱이 설치되지 않은 것 마냥 앱 아이콘이 사라지는 문제가 발생했다.

바로 카카오 로그인 기능 구현 후 아이콘이 사라졌다.

정확히는 AndroidManifest.xml에 어느 코드를 추가한 후 발생한 문제! 

 

기존 코드

<activity
    android:name=".view.activity.MainActivity"
    android:exported="true"
    android:screenOrientation="portrait">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />

        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

 

문제 원인 코드

기존 코드에 카카오 로그인 기능 구현을 위한 Redirect URI 설정을 위해 scheme 을 추가하여 아래와 같은 코드를 작성하였다.

<activity
    android:name=".view.activity.MainActivity"
    android:exported="true"
    android:screenOrientation="portrait">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />

        <category android:name="android.intent.category.LAUNCHER" />
        <!-- kakao login -->
        <data
            android:host="oauth"
            android:scheme="kakao${KAKAO_NATIVE_KEY}" />
    </intent-filter>
</activity>

 

<data ~ /> 부분 코드를 추가하여 해당 문제가 발생된 것 같아

'안드로이드 앱 빌드 아이콘 사라짐'을 키워드로 검색 후 블로그 내용을 참고하여 문제를 해결했다.

 

문제 해결 코드

scheme 적용 코드를 기존에 있던 <intent-filter> 코드 안에 넣지 않고

아래 새로운 <intent-filter> 코드를 만들고 그 안에 scheme 적용 코드를 작성하였다.

<activity
    android:name=".view.activity.MainActivity"
    android:exported="true"
    android:screenOrientation="portrait">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />

        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
    <intent-filter>
        <!-- kakao login -->
        <data
            android:host="oauth"
            android:scheme="kakao${KAKAO_NATIVE_KEY}" />
    </intent-filter>
</activity>

 

참고한 블로그 내용에서는

한 <intent-filter> 안에 MAIN과 VIEW를 같이 넣을 시, MAIN이 아닌 VIEW로 인식이 되어 앱이 설치는 되지만 앱 아이콘이 보이지 않는 것이라 주장하고 있다.

비슷한 맥락으로.. 한 <intent-filter> 안에 MAIN과 scheme을 같이 넣어 VIEW로 인식이 되는건지..

 

문제가 비슷하지만 정확하게 같은 내용은 아니기에 원인은 서치로 더 알아봐야겠다.

앞으로 <intent-filter> 안에 추가할 코드는 <intent-filter>를 하나 더 추가해서 적용해야겠다.

 

 

 

 

 

 

 

 

참고 블로그 

https://gogorchg.tistory.com/entry/Android-Scheme-설정-시-앱이-안보이는-현상

https://velog.io/@skyepodium/안드로이드-스튜디오-빌드-후-스마트폰에서-앱-아이콘-안보일때