У меня есть требование, чтобы метка строки заголовка на моей активности запуска отличалась от фактической метки запуска. Похоже, что это работает нормально в общем случае, однако у меня есть подтвержденный отчет от пользователя о том, что его ярлык запуска изменился со временем и стал ярлыком активности. Вот пример:
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:label="@string/activity_title"
android:name="MyActivity" >
<intent-filter android:label="@string/app_name">
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
При первоначальной установке все правильно. Метка запуска отображается в виде строки app_name. При запуске приложения метка активности представляет собой строку activity_title. Однако в какой-то момент пользователь открывает свой список приложений и вместо того, чтобы видеть строку app_name для моего приложения, он видит строку activity_title.
Они установлены несколько раз, и это, кажется, происходит каждый раз. Кто-нибудь еще видел такое поведение и знает способ его решения?
EDIT:
После еще одного тестирования я выяснил, как повторить это каждый раз с манифестом, приведенным выше. Если я устанавливаю приложение, затем помещаю ярлык на домашний экран и перезагружаю эмулятор или устройство, то при возврате ярлык переименовывается. Приложение в списке приложений по-прежнему правильно названо. Странные вещи.