Wie ändere ich den Namen einer Android-App?


424

Gibt es eine Möglichkeit, den Namen (Launcher App Label) einer App zu ändern, ohne ein neues Projekt zu erstellen?

Hinweis: Name der App und Die Bezeichnung, die auf dem Startsymbol auf dem Startbildschirm von Mobiltelefonen angezeigt wird, kann unterschiedlich sein.

Beispiel: Auf der Startseite meines Handys, auf der sich meine Apps befinden, habe ich ein Symbol und den Namen Foo, aber ich möchte den Namen in Bar ändern. Kann ich das tun?

Antworten:


609

Ja, du kannst. Durch Ändern des android:labelFeldes in Ihrem Anwendungsknoten in AndroidManifest.xml.

Hinweis: Wenn Sie einen Begrüßungsbildschirm hinzugefügt und hinzugefügt haben

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

In Ihrem Begrüßungsbildschirm wird der Name des Startsymbols in den Namen Ihres Begrüßungsbildschirms geändert.

Bitte stellen Sie sicher, dass Sie das Etikett ändern:

android:label="@string/title_activity_splash_screen"

in Ihrer Begrüßungsbildschirm-Aktivität in Ihrer Datei strings.xml. Es befindet sich unter Res -> Values ​​-> strings.xml

Sehen Sie hier mehr .


235
Und für alle Anfänger finden Sie möglicherweise dieses 'android: label = "@ string / app_name"'. In /res/values/strings.xml finden Sie die Definition für die Zeichenfolge app_name: <string name = "app_name"> Ihr App-Name </ string>. Hoffe, das spart jemandem ein wenig Zeit, wenn er anfängt.
Michael Reed

12
Ich habe <string name="app_name">myname</string>in meiner strings.xml und benutze es in meinem Manifest : android:label="@string/app_name". Ich habe immer noch meinen alten Entwicklungsnamen (SplashActivity), auch nach einer Deinstallation (er heißt "myname", wenn ich die Deinstallation bestätigen muss)
Wandang

1
Dank @MichaelReed ist es auch für Anfänger gut zu wissen, es wird nicht empfohlen, den @ string / app_name in einen tatsächlichen Namen zu ändern. Sie erhalten eine gelbe Warnung, die Sie auffordert, @ string / some_name zu verwenden und nicht "harten Code" (schreiben Sie den tatsächlichen Namen) in dieses Feld. Suchen Sie stattdessen, wie Sie sagen, den tatsächlichen App-Namen und bearbeiten Sie ihn in der Datei string.xml.
Azurespot

1
android: label ist nicht das, was auf dem Startbildschirm angezeigt wird.
lxknvlk

2
@lxknvlk, nach meinen Tests unter Android 5 und 5.1 wird der in dieser Antwort genannte Name in der Liste der installierten Anwendungen, im Deinstallationsdialog und im Bildschirm "App-Info" für Ihre App angezeigt. Wenn Sie den im Starter oder Startbildschirm angezeigten Namen anpassen möchten, ändern Sie das android:labelAttribut für Ihre Starteraktivität.
Sam

231

Es gibt das android: label für die Anwendung und das android: label für die Startaktivität. Ersteres sehen Sie unter Einstellungen -> Anwendungen -> Anwendungen auf Ihrem Gerät verwalten. Letzteres sehen Sie unter Anwendungen und als Erweiterung in einer Verknüpfung zu Ihrer Anwendung, z

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

2
Dies sollte die akzeptierte Antwort sein. Können Sie dann auch erklären, was der Zweck von <string name = "app_name"> in strings.xml ist?
Kaizer Sozay

1
Hey, ich habe eine Frage. Nachdem ich einen Begrüßungsbildschirm hinzugefügt und den Absichtsfilter verschoben habe, der steuert, welche App zuerst gestartet wird, hat sich der Name meiner Anwendung in den Namen der Aktivität geändert, die zuerst gestartet wird. Ich habe deine Antwort versucht, aber immer noch kein Glück. Was sollte ich tun? Vielen Dank!
Ruchir Baronia

1
+1 für die Erwähnung der Verwendung von String-Ressourcen (z. B. android: label = "@ string / turn_up_in_manage_apps") anstelle von fest codierten Strings. Laut Android Studio ist das Hardcodieren von Textattributen direkt in Layoutdateien aus mehreren Gründen schlecht: *** Beim Erstellen von Konfigurationsvarianten (z. B. für Quer- oder Hochformat) müssen Sie den tatsächlichen Text wiederholen (und ihn bei Änderungen auf dem neuesten Stand halten) ) *** Die Anwendung kann nicht in andere Sprachen übersetzt werden, indem nur neue Übersetzungen für vorhandene Zeichenfolgenressourcen hinzugefügt werden.
ivanleoncz

Android-Design ist manchmal unglaublich Müll.
Chris Neve

60

Dies ist eine einfache Sache in Android Studio,

Gehen Sie zu: res Ordner -> Werte -> strings.xml

Ändern Sie den App-Namen (im folgenden Beispiel: MitsuhoSdn Bhd) in einen beliebigen neuen Namen.

<string name="app_name">MitsuhoSdn Bhd</string>
<string name="hello_world">Hello world!</string>
<string name="menu_settings">Settings</string>


Leider hat die vorherige Antwort bei mir nicht funktioniert. Dieser hat es getan!
L30nardo SV.

38

Ich habe festgestellt, dass es einige Unterschiede gibt, wie der App-Name auf Lollipop-Geräten angezeigt werden kann. Vor Lollipop können Sie verschiedene App-Namen haben:

<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
...

In Lollipop wird es so sein:

<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>

In Lollipop ist der android:labelIntent-Filter grundsätzlich nutzlos, während der Titel der Aktionsleiste und der Symbolstarter identisch sind. Wenn Sie also einen anderen Titel in der Aktionsleiste wünschen, haben Sie keine andere Wahl, als dynamisch festzulegen

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

Hey, ich habe eine Frage. Nachdem ich einen Begrüßungsbildschirm hinzugefügt und den Absichtsfilter verschoben habe, der steuert, welche App zuerst gestartet wird, hat sich der Name meiner Anwendung in den Namen der Aktivität geändert, die zuerst gestartet wird. Ich habe deine Antwort versucht, aber immer noch kein Glück. Was sollte ich tun? Vielen Dank!
Ruchir Baronia

15

Möglicherweise müssen Sie auch den Namen Ihrer Hauptaktivität "android: label" ändern, wie unter Benennen meiner Anwendung in Android erläutert


Hey, ich habe eine Frage. Nachdem ich einen Begrüßungsbildschirm hinzugefügt und den Absichtsfilter verschoben habe, der steuert, welche App zuerst gestartet wird, hat sich der Name meiner Anwendung in den Namen der Aktivität geändert, die zuerst gestartet wird. Ich habe deine Antwort versucht, aber immer noch kein Glück. Was sollte ich tun? Vielen Dank!
Ruchir Baronia

9

Es kommt darauf an, was Sie tun möchten. Ich persönlich wollte mein Projekt umbenennen, damit oben in der App und unter dem Symbol in meinem Telefonmenü nicht MainActivity angezeigt wird.

Dazu bin ich in die Datei Android Manifest.xml gegangen und habe sie bearbeitet

<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>

Und bearbeitete die android:name=".Mynewname"und bearbeitete dann die Zeichenfolgetitle_activity_main in der Datei strings.xml so, dass sie mit dem Namen übereinstimmt.

Ich hoffe, das hilft!


Dies ist die Hauptursache, wenn wir eine neue Aktivität über den Neu-> Assistenten in Eclipse erstellen. Guter Fang
Siddharth

Seltsam, dass dies behoben wurde, als die eigentliche Anwendung android: label dies nicht tat.
Loeschg

Hey, ich habe eine Frage. Nachdem ich einen Begrüßungsbildschirm hinzugefügt und den Absichtsfilter verschoben habe, der steuert, welche App zuerst gestartet wird, hat sich der Name meiner Anwendung in den Namen der Aktivität geändert, die zuerst gestartet wird. Ich habe deine Antwort versucht, aber immer noch kein Glück. Was sollte ich tun? Vielen Dank!
Ruchir Baronia

9

Wenn Sie den App-Namen unter dem Launcher-Symbol ändern möchten, ändern Sie diesen android:label="@string/app_name" in Ihrem Haupt-Launcher-Aktivitäts-Tag

        <activity android:name="com.test.app"
                  android:label="@string/app_name" >
                  <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
                    <category android:name="android.intent.category.LAUNCHER" />
                  </intent-filter>
        </activity>

Und wenn Sie den App-Namen im Inneren ändern möchten

Einstellungen -> Anwendungsmanager -> heruntergeladen

Wenn Sie alle Anwendungen installiert haben, ändern Sie diese android:label="@string/app_name" innerhalb des Anwendungs-Tags

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

            ........

        <activity android:name="com.test.app" >
        </activity>

             .......

 </application>

Dies ist wichtig - der Name unter dem Startsymbol auf dem Desktop ist nicht der Name der App, sondern der Name des Standardstarters.
Jeff Dege

Hey, ich habe eine Frage. Nachdem ich einen Begrüßungsbildschirm hinzugefügt und den Absichtsfilter verschoben habe, der steuert, welche App zuerst gestartet wird, hat sich der Name meiner Anwendung in den Namen der Aktivität geändert, die zuerst gestartet wird. Ich habe deine Antwort versucht, aber immer noch kein Glück. Was sollte ich tun? Vielen Dank!
Ruchir Baronia

7

Um den Namen Ihrer AndroidAnwendung in Android Studiooder Eclipsezu ändern, müssen Sie den Wert der android:labelim <application>Knoten in definierten Eigenschaft ändernAndroidManifest.xml

 android:label="My Cool Application!"

Standardmäßig verweist der Name der Anwendung auf eine in der strings.xmlDatei definierte Zeichenfolge , zum Beispiel:

 android:label="@string/app_name"

Also müssen wir den Wert in der Datei strings.xml ändern:

  <string name="app_name">My Cool Application!</string>

4
<application
      android:icon="@drawable/app_icon"
      android:label="@string/app_name">
          <activity
            android:name="com.cipl.worldviewfinal.SplashActivity"
            android:label="@string/title_activity_splash" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

</application>

Um den Namen der Android-App zu ändern, gehen Sie zu Aktivität, die Launcher-Aktivität ist, und ändern Sie die Bezeichnung, wie ich es oben in meinem Code getan habe.


Seltsam. Auch ich musste einen neuen @ string für meinen neuen App-Namen erstellen und darauf verweisen, bevor der neue Name steckte. Könnte dies eine Eclipse-Sache sein?
Mike Hines

3

Egal, ich habe es gefunden. Dies kann in der Manifestdatei unter Anwendung erfolgen, indem Sie einfach die Android-Bezeichnung festlegen. Wurde zuerst verworfen, weil es meine Verknüpfung zum Namen der Anwendung nicht geändert hat.


Hey, ich habe eine Frage. Nachdem ich einen Begrüßungsbildschirm hinzugefügt und den Absichtsfilter verschoben habe, der steuert, welche App zuerst gestartet wird, hat sich der Name meiner Anwendung in den Namen der Aktivität geändert, die zuerst gestartet wird. Ich habe deine Antwort versucht, aber immer noch kein Glück. Was sollte ich tun? Vielen Dank!
Ruchir Baronia

1

Bearbeiten Sie das Anwendungs-Tag in der Manifest-Datei.

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

Ändern Sie das Label-Attribut und geben Sie dort den neuesten Namen an.


Ich denke, Sie verwenden das Label-Tag in Ihrer Aktivität oder so etwas, aufgrund dessen sich der App-Name ändert. Bitte fügen Sie die Zuordnung Ihrer Aktivität in die Manifestdatei ein.
Deepak Sharma

1
  1. Wechseln Sie unter Werte zur Datei Strings.xml.
  2. Ändern Sie das App_Name-Tag in Ihren App_Name, und wenn alles festgelegt ist, können Sie den Namen sehen, den Sie jetzt ändern.

1

Wenn Sie Android Studio verwenden, befindet sich ein Element unter Ihrer Datei strings.xml

<string name="app_name">BareBoneProject</string>

Es ist besser, den Namen hier zu ändern, weil Sie diese Zeichenfolge möglicherweise irgendwo verwendet haben. Oder vielleicht hat eine Bibliothek oder etwas anderes sie verwendet. Das ist es. Nur erstellen und ausführen, und Sie erhalten einen neuen Namen. Denken Sie daran, dass dies den Paketnamen nicht ändert oder irgendetwas anderes.


1

Befolgen Sie die Schritte: (Angenommen, Sie haben die Android-Ansicht ausgewählt) App> res> Werte> Zeichenfolgen

<string name="app_name">Put your App's new name here</string>


0

Ja, natürlich ........ Android Unterstützt das Ändern des Namens der App vor dem Erstellen wie bei iOS (Build-Konfiguration). Sie können es ändern, indem Sie die Android-Manifestdatei für das Projekt ändern.


0

Die Änderung in der Manifest-Datei hat den App-Namen nicht geändert.

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

Aber das Ändern des LabelAttributs in MainLauncher hat den Trick für mich getan.

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

-1

Ändern Sie die App-Zeichenfolgenressource in Ihre neue Aktivität

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.