两个应用程序图标显示 android。我的清单有问题吗?
Posted
技术标签:
【中文标题】两个应用程序图标显示 android。我的清单有问题吗?【英文标题】:two app icons are showing android. Is there any fault in my mainfest? 【发布时间】:2019-07-18 13:37:54 【问题描述】:在我的清单中使用了几个意图过滤器,但我删除了除 laucher 之外的所有意图过滤器,但仍然有两个图标。两个图标还有其他原因吗?
我正在编辑这篇文章并添加我的应用程序 build.gradle 以及项目 build.gradle
这是我的清单
<uses-feature
android:name="android.hardware.camera"
android:required="false" />
<uses-feature
android:name="android.hardware.camera.autofocus"
android:required="false" />
<uses-feature
android:name="android.hardware.camera.flash"
android:required="false" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.USE_CREDENTIALS" />
<application
android:allowBackup="true"
android:icon="@drawable/app_icon"
android:label="@string/app_name"
android:largeHeap="true"
android:supportsRtl="true"
android:theme="@style/AppTheme"
tools:replace="android:icon">
<activity
android:name=".activity.SplashActivity"
android:screenOrientation="portrait"
android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".activity.user.LoginUserActivity"
android:windowSoftInputMode="adjustResize|stateHidden" />
</application>
【问题讨论】:
我从***.com/questions/6028695/…解决了这个问题我去/build/intermediates/manifests/debug/AndroidManifest.xml这个路径,发现有两个Lancher。 【参考方案1】:在清单中,您使用了两个图标,例如 icon 和 roundIcon。因此您可能会得到两个图标。
<application
android:allowBackup="true"
android:icon="@drawable/app_icon" //app icon
android:label="@string/app_name"
android:largeHeap="true"
android:roundIcon="@drawable/app_icon" ---> //another app icon
android:supportsRtl="true"
android:theme="@style/AppTheme"
tools:replace="android:icon">
尝试删除任何一个。
【讨论】:
@g.brahma 删除一个图标,结果相同。 @UnityTaru 你也可以尝试在清单“tools:replace="android:icon”中删除这一行吗?我不知道为什么在那里使用它。 @ g.brahma "tools: replace=" android: icon" 这告诉合并使用我的清单图标而不是其他库。 你是否实用地创建快捷方式图标?? @dastan 没有创建快捷方式图标【参考方案2】:1) 如果图标问题
可能性1
检查所有可绘制的文件夹(mdpi、xdpi、xxhdpi、xxxhdpi 等...)图标是否相同
可能性2
如果您使用任何库或模块,请将该图标的名称从 app_name 更改为任何其他名称。
2) 如果启动器出现问题
如果是启动器问题,请从您的设备上卸载所有应用程序。确保您的清单中只有一个启动器活动并再次运行。
【讨论】:
@Shel S9 一切都很好,正如你上面提到的。 我从***.com/questions/6028695/解决了这个问题……我去了这个路径/build/intermediates/manifests/debug/AndroidManifest.xml,发现有两个Lancher。【参考方案3】:您在应用程序清单中提到了两个图标,请参见:
<application
android:allowBackup="true"
android:icon="@drawable/app_icon"
android:label="@string/app_name"
android:largeHeap="true"
android:roundIcon="@drawable/app_icon"
android:supportsRtl="true"
android:theme="@style/AppTheme"
tools:replace="android:icon">
尝试删除roundIcon
。希望这会奏效。如果它不工作,也replqce tools:replace="android:icon"
这个:tools:replace="icon"
但不要忘记像这样声明清单标头
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.yourpackage"
xmlns:tools="http://schemas.android.com/tools">
【讨论】:
我尝试了你说的两个过程,但结果是一样的 我从***.com/questions/6028695/解决了这个问题……我去了这个路径/build/intermediates/manifests/debug/AndroidManifest.xml,发现有两个Lancher。 但是您必须接受问题的其中一个答案。查看对您帮助最大的答案,并接受它。您还可以添加自己的答案,以便其他人获得帮助。【参考方案4】:我通过这个链接解决了这个问题
Android, icon been duplicate when i install my app on the device
我去/build/intermediates/manifests/debug/AndroidManifest.xml这个路径,发现有两个LAUNCHER。
【讨论】:
以上是关于两个应用程序图标显示 android。我的清单有问题吗?的主要内容,如果未能解决你的问题,请参考以下文章
如何更改我的应用程序中“正在运行的应用程序”屏幕中显示的图标?
将意图类型添加到 android Flutter 清单会导致主屏幕中缺少应用程序图标