请告诉我如何解决此问题。
即使语言环境语言从X更改为Y,状态栏通知消息也以X语言显示。请帮助我刷新它需要做什么。 例如: 即使在将区域设置从En更改为Ja之后,状态栏通知消息也仅在En中显示,即发送状态栏通知的应用程序首次以En语言运行。
由于 Venugopal
答案 0 :(得分:1)
理论上,这应该有效:
第1步:在清单中注册BroadcastReceiver
,注意ACTION_LOCALE_CHANGED
。
第2步:当BroadcastReceiver
与[{1}},onReceive()
一起调用cancel()
并重新提升Notification
时,如果Notification
在屏幕上
问题是您需要知道您的Notification
是否在屏幕上。这不是很直截了当。你可以试试this StackOverflow answer中概述的技术,虽然我没有尝试过这种技术。我已经isActive()
申请NotificationManager
{{1}}方法{{1}},或等效方法,以帮助填补这一空白。