Как изменить имя приложения Android?

424

Есть ли способ изменить имя (Launcher App Label) приложения, не создавая новый проект?

Примечание. Название приложения и метка, отображаемая на значке запуска на главном экране мобильного телефона, могут различаться.

Пример: на домашней странице в моем мобильном телефоне, где находятся мои приложения, у меня есть значок и имя Foo, но я хочу изменить имя на Bar. Я могу сделать это?

au789
источник

Ответы:

609

Да, ты можешь. Изменяя android:labelполе в вашем узле приложения в AndroidManifest.xml.

Примечание. Если вы добавили заставку и добавили

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

на вашем экране-заставке имя иконки запуска изменится на имя вашего класса класса экрана-заставки.

Пожалуйста, убедитесь, что вы изменили метку:

android:label="@string/title_activity_splash_screen"

в вашей активности на заставке в файле strings.xml. Его можно найти в Res -> Values ​​-> strings.xml

Подробнее здесь .

MByD
источник
235
И для любых начинающих вы можете найти это 'android: label = "@ string / app_name"'. В /res/values/strings.xml вы найдете определение для строки app_name: <string name = "app_name"> Имя вашего приложения </ string>. Надеюсь, это сэкономит кому-то немного времени, когда они начинают.
Майкл Рид
12
У меня есть <string name="app_name">myname</string>в моем strings.xml и использовать его в моем манифесте: android:label="@string/app_name". у меня все еще есть мое старое имя разработчика (SplashActivity) даже после удаления (оно называется «myname», когда мне нужно подтвердить удаление)
Wandang
1
Спасибо @MichaelReed, новичкам также полезно знать, не рекомендуется менять @ string / app_name на фактическое имя. Вы получите желтое предупреждение о том, что в этом поле следует использовать @ string / some_name, а не «жесткий код» (напишите реальное имя). Скорее, как вы говорите, найдите фактическое имя приложения и отредактируйте его в файле string.xml.
Azurespot
1
Android: ярлык не то, что отображается на главном экране.
lxknvlk
2
@lxknvlk, из моего тестирования на Android 5 и 5.1, имя, указанное в этом ответе, отображается в списке установленных приложений, в диалоговом окне удаления и на экране «Информация о приложении» для вашего приложения. Если вы хотите изменить имя, отображаемое на панели запуска или на главном экране, попробуйте изменить android:labelатрибут в своей активности панели запуска.
Сэм
231

Есть ярлык android: для приложения и ярлык android: для запуска. Первый - это то, что вы видите в разделе «Настройки» -> «Приложения» -> «Управление приложениями» на вашем устройстве. Последнее - это то, что вы видите в разделе «Приложения» и, соответственно, в любом ярлыке для вашего приложения, например

<application
    android:label="@string/turns_up_in_manage_apps" >
    <activity
        android:name=".MainActivity"
        android:label="@string/turns_up_in_shortcuts" >
        ...
    </activity>
</application>
Стив Хансен Смит
источник
2
Это должен быть принятый ответ. Также можете ли вы объяснить, для чего тогда <string name = "app_name"> в strings.xml?
Кайзер Созай
1
Привет, у меня есть вопрос. После добавления заставки и перемещения фильтра намерений, который контролирует, какое приложение запускается первым, имя моего приложения изменилось на имя действия, которое запускается первым. Я попробовал ваш ответ, но все равно не повезло. Что мне делать? Спасибо!
Ручир Барония
1
+1 за упоминание об использовании строковых ресурсов (например: android: label = "@ string / turn_up_in_manage_apps") вместо жестко закодированной строки. Согласно Android Studio: жесткое кодирование текстовых атрибутов непосредственно в файлах макетов является плохим по нескольким причинам: *** При создании вариантов конфигурации (например, для ландшафта или портрета) необходимо повторять фактический текст (и обновлять его при внесении изменений). ) *** Приложение нельзя перевести на другие языки, просто добавив новые переводы для существующих строковых ресурсов.
ivanleoncz
Android дизайн порой невероятно мусор.
Крис Нев
60

Это простая вещь в Android Studio,

перейдите в папку res -> values ​​-> strings.xml

измените имя приложения (в приведенном ниже примере: MitsuhoSdn Bhd) на любое новое имя, которое вы хотите.

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

longcrystal
источник
К сожалению, предыдущий ответ не работал для меня. Этот сделал!
L30nardo SV.
38

Я заметил, что есть некоторые различия в том, как имя приложения может появляться в устройствах Lollipop. До 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 android:labelфильтр намерений в принципе бесполезен, тогда как заголовок панели действий и панель запуска значков идентичны. Итак, если вы хотите другой заголовок на панели действий, у вас нет выбора, кроме как установить динамически

getSupportActionBar().setTitle(R.string.app_name);
Neoh
источник
Привет, у меня есть вопрос. После добавления заставки и перемещения фильтра намерений, который контролирует, какое приложение запускается первым, имя моего приложения изменилось на имя действия, которое запускается первым. Я попробовал ваш ответ, но все равно не повезло. Что мне делать? Спасибо!
Ручир Барония
15

Возможно, вам также придется изменить название вашего основного действия «android: label», как описано в разделе «Наименование моего приложения в Android».

darkzangel
источник
Привет, у меня есть вопрос. После добавления заставки и перемещения фильтра намерений, который контролирует, какое приложение запускается первым, имя моего приложения изменилось на имя действия, которое запускается первым. Я попробовал ваш ответ, но все равно не повезло. Что мне делать? Спасибо!
Ручир Барония
9

Это зависит от того, что вы хотите сделать. Я лично хотел переименовать свой проект, чтобы он не отображал 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=".Mynewname"а затем отредактировал строку title_activity_mainв файле strings.xml в соответствии с именем.

Надеюсь, это поможет!

WebDevDanno
источник
Это основная причина, когда мы создаем новое действие с помощью New-> Wizard в затмении. Хороший улов
Сиддхарт
Странно, что это исправили, когда собственно приложение android: label не сделали.
loeschg
Привет, у меня есть вопрос. После добавления заставки и перемещения фильтра намерений, который контролирует, какое приложение запускается первым, имя моего приложения изменилось на имя действия, которое запускается первым. Я попробовал ваш ответ, но все равно не повезло. Что мне делать? Спасибо!
Ручир Барония
9

если вы хотите изменить имя приложения под значком запуска, измените его android:label="@string/app_name" в теге активности основного запуска

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

И если вы хотите изменить имя приложения внутри

Настройки -> Диспетчер приложений -> скачано

где у вас есть все установленные приложения, затем измените это android:label="@string/app_name" внутри тега приложения

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

            ........

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

             .......

 </application>
Шань Ксиши
источник
Это важно - имя под значком средства запуска на рабочем столе - это не имя приложения, а имя средства запуска по умолчанию.
Джефф Дег
Привет, у меня есть вопрос. После добавления заставки и перемещения фильтра намерений, который контролирует, какое приложение запускается первым, имя моего приложения изменилось на имя действия, которое запускается первым. Я попробовал ваш ответ, но все равно не повезло. Что мне делать? Спасибо!
Ручир Барония
7

Чтобы изменить название вашего Androidприложения в Android Studioили Eclipse, вы должны изменить значение свойстваandroid:label определенного внутри <application>узла вAndroidManifest.xml

 android:label="My Cool Application!"

по умолчанию имя приложения ссылается на строку, определенную в strings.xml файле, например:

 android:label="@string/app_name"

Итак, мы должны изменить значение внутри файла strings.xml:

  <string name="app_name">My Cool Application!</string>
Jorgesys
источник
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>

Чтобы изменить имя приложения для Android, перейдите к действию, которое является активностью запуска, и измените его метку, как я делал выше в своем коде.

pioneerBhawna
источник
Странный. Я тоже должен был создать новую строку @stst для моего нового имени приложения и ссылку на него, прежде чем новое имя застряло. Может ли это быть «Затмением»?
Майк Хайнс
3

Неважно, я нашел это. Это можно сделать в файле манифеста под приложением, просто установите метку андроида. Сначала был сброшен, потому что это не изменило мой ярлык названия приложения.

au789
источник
Привет, у меня есть вопрос. После добавления заставки и перемещения фильтра намерений, который контролирует, какое приложение запускается первым, имя моего приложения изменилось на имя действия, которое запускается первым. Я попробовал ваш ответ, но все равно не повезло. Что мне делать? Спасибо!
Ручир Барония
1

Отредактируйте тег приложения в файле манифеста.

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

Измените атрибут label и дайте там самое последнее имя.

Дипак Шарма
источник
Я думаю, что вы используете тег label в своей деятельности или что-то подобное, из-за чего меняется имя приложения. Пожалуйста, вставьте отображение вашей деятельности в файл манифеста.
Дипак Шарма
1
  1. Перейти к файлу Strings.xml под значениями.
  2. Измените тег app_name на ваше app_name, чтобы захотеть, и все готово, вы сможете увидеть имя, которое вы измените сейчас.
Ашишкумар Мурия
источник
1

Если вы используете Android Studio, элемент находится в вашем strings.xml

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

Здесь лучше изменить имя, потому что вы, возможно, где-то использовали эту строку. Или, может быть, библиотека или что-то еще использовало ее. Вот и все. Просто создайте и запустите, и вы получите новое имя. или что-нибудь еще.

Стив Моретц
источник
1

выполните следующие действия: (допустим, вы выбрали представление Android) app> res> values> strings

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

u_mewara
источник
0

Да Конечно ........ Android Поддерживает изменение названия приложения перед сборкой, как iOS (конфигурация сборки). Вы можете изменить его, изменив файл манифеста Android для проекта.

Суреш Шарма
источник
0

Изменение в файле манифеста не изменило имя приложения,

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

но изменение Labelатрибута MainLauncher помогло мне.

[Activity(Label = "@string/app_name", MainLauncher = true, Theme = "@style/MainActivityNoActionBarTheme", ScreenOrientation = ScreenOrientation.Portrait)]
Annu
источник
-1

измените ресурс строки приложения на новое действие

Bachask8
источник