我想知道是否可以配置远程通知选项来传递URL。
我看到onErrorRemoteDisableDenial
有一个功能。我试图修改它,但它似乎禁用了该应用程序。即使我把代码继续下去,下一次调用后端也行不通。
但我们正在寻找的是让用户可以选择通过网址进行更新,或者继续使用他们目前拥有的应用版本。
使用Worklight 6.1
答案 0 :(得分:0)
有一种方法可以自定义远程禁用和远程通知,但downloadLink
(您在Worklight Console中设置的链接)仅在设置远程禁用而非远程通知时可用。只有message
(Worklight Console中设置的文本)可用。
您可以使用main.js中的以下内容(在任何函数之外)自定义远程通知流程:
wl_remoteDisableChallengeHandler.handleChallenge = function(message,downloadLink) {
WL.SimpleDialog.show(
"New Version",
message,
[
{text: "Download", handler: function() {
// Maybe use WL.App.openURL(downloadLink) to go to the app store
}},
{text: "Close", handler: function() {
// Continue with the app
}}
]);
};
wl_remoteDisableChallengeHandler.handleChallenge
会覆盖默认的Remote Notify 代码路径。 wl_remoteDisableChallengeHandler.handleFailure
将覆盖默认的远程禁用代码路径(和this is another way以自定义远程禁用)。
编辑:根据评论中的调查结果,为了同时获得message
和downloadLink
,您首先需要临时设置Remote Disable,然后更改为Remote Notify,这是一个变通方法因为默认情况下Remote Notify并不意味着也将downloadLink传递给默认提供的对话框。
注意:远程通知仅在消息的生命周期中显示一次,因此在显示之后 - 在控制台中再次设置消息之前,它不会再次显示。
让代码在每个应用程序启动时工作的方法是清除应用程序的HTML本地存储(在应用程序运行时的某个时刻),其中有一个"标记"存储是为了告诉应用程序不再显示消息(我忘了它的名字,但你可以打印本地存储的内容并进行调试)。
听起来很不错的功能请求:https://developer.ibm.com/mobilefirstplatform/help