I had the same issue in Android Studio, with API 19 and with the gradle build system. We spent a couple of hours to figure this out, and we realized that if you have more libraries (for example, you have more test applications in one project) and you have more launch icons in a separate library than gradle cannot solve this problem, You will not receive an error message, you just do not see the icon.
- So use different names for the launcher icon or just delete what you don't need.
(I just thought maybe someone would have the same problem ...)
- There was another scenario when the icon disappears. When you use
<data android:scheme="your-own-uri">
The solution is to split the intent filter.
<activity android:name=".MainActivity" android:label="@string/app_name" > <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.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="your-own-uri" /> </intent-filter> </activity>
Zoltan
source share