Android Studio应用已安装但图标不显示,无法启动求助(关联Manifest)
Got it, let's figure out why your Android app isn't showing up on the home screen or app list even though it's successfully installed and visible in Settings > Apps. The issue almost always boils down to a misconfigured AndroidManifest.xml—here are the key things to check step by step:
This is the most common culprit. Your main launch activity (usually MainActivity) needs the correct <intent-filter> to be recognized by the system as a launchable entry. Double-check that it includes both the MAIN action and LAUNCHER category, plus the required exported flag for Android 12+:
<activity android:name=".MainActivity" android:exported="true"> <!-- Mandatory for Android 12+ --> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity>
- Don’t mix up the category:
android.intent.category.LAUNCHERis what tells the system to add your app’s icon to the app list. UsingDEFAULTor another category here will break this functionality. - For Android 12 and higher, omitting
android:exported="true"will cause the system to ignore your launch activity entirely—this is a non-negotiable requirement now.
Accidentally setting android:enabled="false" on your main activity will prevent the system from activating it, which means no icon will show up. Check your activity tag for this property:
<activity android:name=".MainActivity" android:enabled="true" <!-- Keep this true, or remove it (default is true) --> android:exported="true"> <!-- Intent filter here --> </activity>
Even if the app appears in Settings, missing or misconfigured icon resources can prevent it from showing up in the app list. Verify that your <application> tag points to valid icon resources:
<application android:icon="@mipmap/ic_launcher" <!-- Make sure this exists in res/mipmap-* folders --> android:roundIcon="@mipmap/ic_launcher_round" <!-- Same check here --> ...>
If the resource paths are wrong or the files are missing, the system can’t load your icon, resulting in no entry (or a generic placeholder) in the app list.
Rarely, someone might accidentally set android:enabled="false" on the root <application> tag. This disables the entire app, so even though it’s installed, it won’t appear anywhere except Settings. Fix it like this:
<application android:enabled="true" <!-- Default is true; never set this to false unless intentional --> ...>
If you have more than one activity with <category android:name="android.intent.category.LAUNCHER" />, this can cause conflicts. The system might get confused and fail to show any icon, or only show one. Stick to adding this category only to your main launch activity—use android.intent.category.DEFAULT for other activities that need to be accessible via intents.
XML typos (like unclosed tags or misspelled attributes) can cause the manifest to parse incorrectly, even if Android Studio doesn’t flag them immediately. Try running a clean rebuild:
- Go to
Build > Clean Project - Then
Build > Rebuild Project
This will surface any hidden syntax errors that might be breaking the manifest.
If all else fails, uninstall the app, clear Android Studio’s cache (File > Invalidate Caches...), then rebuild and reinstall. Sometimes cached build artifacts can cause odd behavior like this.
内容的提问来源于stack exchange,提问作者Rishika Agrawal

