У моего пользователя есть возможность изменить значок приложения и имя приложения, для этого я использовал activity-alias
, который отлично работает.
Например:
- Значок по умолчанию с именем приложения как «Имя приложения»
- Альтернативный значок с именем приложения как «Альтернативное имя приложения»
Однако, когда я отправляю уведомление пользователю, если они выбрали альтернативный значок / название приложения, заголовок уведомления содержит приложение по умолчанию. Как я могу изменить?
Вот мой notificationBuilder
:
NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(context, "default")
.setSmallIcon(isAlternativeLaunched ? R.drawable.ic_alternative : R.drawable.ic_default)
.setContentTitle("This is my title")
.setContentText("This is my content")
.setSubText("This is my text")
.setColor(ContextCompat.getColor(context, R.color.colorPrimary));
PS: Я проверил, и заголовок моего приложения правильно установлен при использовании AlternativeName, только в уведомлении старый заголовок.
РЕДАКТИРОВАТЬ: Глядя на do c https://developer.android.com/guide/topics/ui/notifiers/notifications#Templates, говорится:
Имя приложения: Это предоставляется системой
Я не понимаю, почему имя приложения не меняется? Мой activity-alias
выглядит так:
<activity-alias
android:name="my.package.name.DefaultActivity"
android:enabled="true"
android:icon="@mipmap/ic_launcher_default"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round_default"
android:targetActivity="my.package.name.MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity-alias>
<activity-alias
android:name="my.package.name.AlternativeActivity"
android:enabled="false"
android:label="@string/app_name_alternative"
android:icon="@mipmap/ic_launcher_alternative"
android:roundIcon="@mipmap/ic_launcher_alternative_round"
android:targetActivity="my.package.name.MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity-alias>