【发布时间】:2020-08-20 04:17:12
【问题描述】:
我的用户可以选择更改应用程序图标和应用程序名称,为此我使用了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:我已经检查过,使用替代名称时我的应用程序的标题设置正确,只有通知具有旧标题。
编辑:查看文档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>
【问题讨论】:
-
我想这会对你有所帮助stackoverflow.com/questions/52076497/…
-
我宁愿避免使用库只是为了更改应用程序名称,而且我不确定是否能看到任何可以应用的答案
-
那么你必须以编程方式更改你的styles.xml 看看这里stackoverflow.com/questions/6936800/…
-
如何在通知中定位应用程序名称?我还没有找到任何方法。
标签: android android-notifications