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

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

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


当前回答

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

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

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

其他回答

这取决于你想做什么。我个人想重命名我的项目,这样它就不会在应用程序顶部和手机菜单图标下方显示MainActivity。

为此,我进入Android Manifest.xml文件并进行编辑

<activity
        android:name=".MainActitivity"
        android:label="@string/title_activity_main" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

并编辑了android:name="。然后在strings.xml文件中编辑字符串title_activity_main以匹配该名称。

希望有帮助!

我注意到,在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);

这是应用程序的android:标签,还有启动活动的android:标签。前者是你在设置->应用程序->管理设备上的应用程序下看到的。后者是你在应用程序下看到的,并通过扩展在应用程序的任何快捷方式中,例如。

<application
    android:label="@string/turns_up_in_manage_apps" >
    <activity
        android:name=".MainActivity"
        android:label="@string/turns_up_in_shortcuts" >
        ...
    </activity>
</application>

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

Manifest文件的变化并没有改变应用程序的名称,

<application android:icon="@drawable/ic__logo" android:theme="@style/AppTheme" android:largeHeap="true" android:label="@string/app_name">

但是改变MainLauncher中的Label属性对我来说很有用。

[Activity(Label = "@string/app_name", MainLauncher = true, Theme = "@style/MainActivityNoActionBarTheme", ScreenOrientation = ScreenOrientation.Portrait)]