mobilefirst 推送通知更改 android app_name
Posted
技术标签:
【中文标题】mobilefirst 推送通知更改 android app_name【英文标题】:mobilefirst push notification change android app_name 【发布时间】:2015-09-22 20:31:20 【问题描述】:您好,我正在使用 mobilefirst 6.3 混合应用程序,从我的 string.xml 更改 app_name 时遇到问题。
我有我的混合名称应用程序 <string name="app_name">ASDFGHJK</string>
,当我更改应用程序名称时,我需要将其更改为 <string name="app_name">ASDF GHJK</string>
:
当app在后台时,点击push不做任何事情,当im在app中时,receiver方法没有触发,怎么能在没有这个问题的情况下更改我的app名称?
【问题讨论】:
【参考方案1】:res\values\strings.xml 中的app_name
值在内部用于创建 Intent 对象。因此,当应用关闭并且 GCMIntentService 收到消息时,它会创建一个动作为 <packagename>.<app_name>
的意图,并将其发送到通知服务以在通知栏中显示通知。
这是在 androidManifest.xml 中使用的意图名称,用于指示应用必须在点击通知时启动:
<activity android:name=".PushNotifications" android:label="@string/app_name" android:configChanges="orientation|keyboardHidden|screenSize" android:launchMode="singleTask" android:theme="@android:style/Theme.Translucent.NoTitleBar" android:screenOrientation="sensor">
....
<intent-filter>
<action android:name="com.PushNotifications.PushNotifications.NOTIFICATION"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
所以现在如果app_name
更改为任何其他字符串,Intent 将在内部创建为com.PushNotifications.<new_name>
。
但是 AndroidManifest.xml 仍然有例如com.PushNotifications.PushNotifications
(在示例应用程序的情况下),因此应用程序不会启动,因为意图操作不同。
要以不同的名称显示应用程序,请按以下步骤操作:
-
在 strings.xml 中,添加一个额外的 new_name_value
在 AndroidManifest.xml 中,用新的字符串名称修改标签
<application android:label="@string/app_new_name" android:icon="@drawable/icon">
<activity android:name=".PushNotifications" android:label="@string/app_new_name"...
【讨论】:
当我进入后台时,这不会改变我的应用程序上的图标名称和应用程序标题 这个过程似乎给我们带来了麻烦,我们将清单包重命名为构建时间。但是 Push 无法启动,因为它使用上下文并尝试从错误的位置获取 app_name。以上是关于mobilefirst 推送通知更改 android app_name的主要内容,如果未能解决你的问题,请参考以下文章
Mobilefirst 8.0 推送通知 API - 推送设备注册 (POST)
MobileFirst 推送通知代理 - 407 代理身份验证错误
是否可以启用使用 MobileFirst SDK7.1 开发的推送通知可以运行 MobileFirst Server V8.0?