是否有一种方法可以在不创建新项目的情况下更改应用程序的名称(Launcher App Label) ?

注意:手机主屏幕上的启动器图标上显示的应用程序名称和标签可能不同。

示例:在我的移动应用程序所在的主页上,我有一个图标和名称Foo,但我想将名称更改为Bar。我能这样做吗?


当前回答

你可能不得不改变你的主活动“android:label”的名称,也解释在命名我的应用程序在android

其他回答

是的,你可以。通过更改AndroidManifest.xml中应用程序节点中的android:label字段。

注意:如果你已经添加了启动画面并添加

 <activity
    android:name=".SplashActivity"
    android:label="@string/title_activity_splash_screen"
    android:theme="@style/AppTheme">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

到你的启动画面,然后启动器图标的名称将被更改为你的启动画面类名称。

请确保您更改标签:

android:label="@string/title_activity_splash_screen"

在你的strings.xml文件中的启动画面活动。可以在Res -> Values -> strings.xml中找到

点击这里查看更多信息。

更改应用程序字符串资源为您的新活动

在我的情况下,我需要invalidate/cache和重启及其工作

在清单文件中编辑应用程序标记。

 <application
    android:icon="@drawable/app_icon"
    android:label="@string/app_name"
    android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" >

更改label属性并在那里给出最新的名称。

我注意到,在Lollipop设备上,应用名称的显示方式有所不同。在棒棒糖之前,你可以有不同的应用程序名称:

<application
    android:label="@string/app_name"> // appears in manage app info
    <activity
        android:name=".MainActivity"
        android:label="@string/action_bar_title"> // appears in actionbar title 
        <intent-filter android:label="@string/name_in_icon_launcher"> // appears in icon launcher
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
...

在Lollipop中,它是这样的:

<application
    android:label="@string/name_in_manage_app_info">
    <activity
        android:name=".MainActivity"
        android:label="@string/name_in_actionbar_and_icon_launcher">
        <intent-filter android:label="@string/this_is_useless">
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

在Lollipop中,intent-filter中的android:label基本上是无用的,而动作栏标题和图标启动器是相同的。所以,如果你想在动作栏中有不同的标题,你别无选择,只能动态设置

getSupportActionBar().setTitle(R.string.app_name);