Android 无法为清单中的应用程序和启动器活动设置不同的图标/标签
我知道以前有人问过这个问题,但在所有这些问题中,答案都是从活动的onCreate方法设置它。 我不想在onCreate方法中执行此操作,因此我对清单文件执行了此操作,但没有效果:-Android 无法为清单中的应用程序和启动器活动设置不同的图标/标签,android,android-layout,android-manifest,Android,Android Layout,Android Manifest,我知道以前有人问过这个问题,但在所有这些问题中,答案都是从活动的onCreate方法设置它。 我不想在onCreate方法中执行此操作,因此我对清单文件执行了此操作,但没有效果:- <application android:allowBackup="true" android:icon="@drawable/ic_launcher_screen" android:label="@string/app_name" android
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher_screen"
android:label="@string/app_name"
android:theme="@android:style/Theme.Holo.Light"
>
<activity
android:name="com.iws.unify.HomeScreen"
android:label="@string/nullstring"
android:icon="@drawable/ic_launcher"
>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
出于某种原因,我在活动中设置的任何图标/标签都会覆盖应用程序标记中的图标/标签,这非常烦人。请帮忙 回答:
删除android活动中的图标
额外信息:
android运行时将考虑使用activity launcher的主要活动
例如:
如果在两个活动“a”和“b”中声明以下代码:
然后你的应用程序将有两个启动图标“a”和“b”。我也遇到了同样的问题,我用一个非常奇怪但简单的解决方案解决了这个问题 1-创建一个新活动,并将其称为
LauncherActivity
(将此活动的图标和标签设置为希望显示为应用程序图标/标签的内容)
2-将此活动设置为应用程序的主启动活动。(从主屏幕活动中删除
标记)
3-将此活动的主题设置为android:theme=“@android:style/theme.Translucent”
4-现在在您的启动器活动中
onCreate()
不要做任何事情,只需使用意图启动主屏幕活动并完成此活动
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Intent intent = new Intent(this, HomeScreen.class);
startActivity(intent);
finish();
}
finish()是必需的,因此当您按下主屏幕上的后退按钮时,应用程序将关闭
现在,您的应用程序图标和标签将与主屏幕图标和标签不同
您的清单应该如下所示:
<application
android:allowBackup="true"
android:theme="@android:style/Theme.Holo.Light"
>
<activity
android:name="com.iws.unify.HomeScreen"
android:label="@string/nullstring"
android:icon="@drawable/ic_launcher"
>
</activity>
<activity
android:name="com.iws.unify.LauncherActivity"
android:icon="@drawable/ic_launcher_screen"
android:label="@string/app_name"
android:theme="@android:style/Theme.Translucent" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
如果您只需要有一个不同于应用程序图标的活动操作栏图标,您可以使用“android:logo”属性覆盖它:
<activity
android:name="com.iws.unify.HomeScreen"
android:label="@string/nullstring"
android:logo="@drawable/ic_launcher">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
您也可以使用“活动别名”:
您的“playstore”图标将是在应用程序节点中指定的图标,因此您也可以在需要时执行此操作:
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher_screen"
android:label="@string/app_name"
android:theme="@android:style/Theme.Holo.Light">
<activity
android:name="com.iws.unify.HomeScreen"
android:label="@string/nullstring"
android:icon="@drawable/ic_launcher"
android:exported="true" />
<activity-alias
android:name=".LaucherActivityAlias"
android:targetActivity="com.iws.unity.HomeScreen"
android:icon="@drawable/ic_launcher_screen">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity-alias>
</application>
很抱歉,我没有收到。如果我有两个启动器活动,它将如何解决我的问题?添加额外的活动不是解决方案。。。只是我把你弄糊涂了我想@新建此处,只需删除活动中的图标属性。但我希望我的应用程序和主要活动具有不同的图标。根据你的建议,我最终会得到相同的应用程序图标和活动图标。谢谢你的帮助。还有其他建议吗?但是你想为这两个图标都换一个吗。。我很好奇,因为我的图标是蓝色+红色的文本,背景是透明的,在动作栏中看起来很奇妙,但在主屏幕上由于墙纸的缘故无法阅读。因此,我为应用程序图标设置了白色背景,为操作栏设置了没有背景的原始图标。请阅读本文,这是答案[问题][1][1]:最简单的解决方案,不会增加太多开销。工作得很好!这一点也不奇怪。事实上,这是我在面对同样的情况后想到的第一个想法。
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@android:style/Theme.Holo.Light">
<activity
android:name="com.iws.unify.HomeScreen"
android:label="@string/nullstring"
android:exported="true" />
<activity-alias
android:name=".LaucherActivityAlias"
android:targetActivity="com.iws.unity.HomeScreen"
android:icon="@drawable/ic_launcher_screen">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity-alias>
</application>
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher_screen"
android:label="@string/app_name"
android:theme="@android:style/Theme.Holo.Light">
<activity
android:name="com.iws.unify.HomeScreen"
android:label="@string/nullstring"
android:icon="@drawable/ic_launcher"
android:exported="true" />
<activity-alias
android:name=".LaucherActivityAlias"
android:targetActivity="com.iws.unity.HomeScreen"
android:icon="@drawable/ic_launcher_screen">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity-alias>
</application>