【发布时间】:2023-03-21 13:43:01
【问题描述】:
问题 1:
我正在尝试使用 IBM worklight 实现基于标签的推送通知。正如培训材料中所建议的,我在应用程序描述符文件中添加了标签。我还订阅了 main.js 文件中的特定标记名。
后续步骤:
- 在 application-descriptor.xml 中添加了带有标签名称 OFFERS 的标签。
- 在
WL.Client.Push.onReadyToSubscribe函数中使用WL.Client.PushsubscribeTag("OFFERS", {onSuccess:doSubscribeSuccess , onFailure: doSubscribeFailure})订阅了该标签。 - 已添加
WL.client.Push.onMessage(props,payload)来处理收到的通知。 - 在加载应用程序时,它会转到
main.js(附加)中的doSubscribeMethod,但不会调用回调方法 doSubscribeSuccess。 - 在调用适配器发送通知时(SubmitBroadcastNotification 过程)我提到了我订阅的标记名(OFFERS)。
- 在控制台中显示
Failed to send Notification Reason FPWSE0009E. No devices found
问题2: WL.Server.CreateEventsource 何时会调用此过程。
注意:关于推送通知配置的所有步骤都已遵循,并且为基于事件的推送提供的示例代码工作正常。
编辑: 我已在 logcat 下方附加了以下 log sn-p 中突出显示的错误。
07-18 18:19:19.253:D/CordovaLog(1081):file:///android_asset/www/default/worklight/cordova.js:第 1061 行:processMessage 失败:堆栈:TypeError:无法读取属性'未定义的 hideView' 07-18 18:19:19.253: D/CordovaLog(1081): 在 wlEnvInit (file:///android_asset/www/default/js/main.js:77:78) 07-18 18:19:19.253: D/CordovaLog(1081): 在文件:///android_asset/www/default/worklight/worklight.js:7638:5 07-18 18:19:19.253: D/CordovaLog(1081): 在 Object.onSuccess (file:///android_asset/www/default/worklight/worklight.js:7665:5) 07-18 18:19:19.253: D/CordovaLog(1081): 在 finalizeInit (file:///android_asset/www/default/worklight/worklight.js:6972:15) 07-18 18:19:19.253:D/CordovaLog(1081):在对象处。 (文件:///android_asset/www/default/worklight/worklight.js:7812:7) 07-18 18:19:19.253:D/CordovaLog(1081):在对象处。 (文件:///android_asset/www/default/worklight/wljq.js:1202:33) 07-18 18:19:19.253: D/CordovaLog(1081): 在文件:///android_asset/www/default/worklight/wljq.js:1047:30 07-18 18:19:19.253: D/CordovaLog(1081): 在 Object.resolveWith (file:///android_asset/www/default/worklight/wljq.js:1158:7) 07-18 18:19:19.253: D/CordovaLog(1081): 在 Object.resolve (file:///android_asset/www/default/worklight/wljq.js:1247:34) 07-18 18:19:19.253: D/CordovaLog(1081): 在 deviceIDSuccessCallback (file:///android_asset/www/default/worklight/worklight.js:7732:22) 07-18 18:19:19.253:I/Web 控制台(1081):processMessage 失败:堆栈:TypeError:无法读取未定义的属性“hideView” 07-18 18:19:19.253: I/Web 控制台 (1081): 在 wlEnvInit (file:///android_asset/www/default/js/main.js:77:78) 07-18 18:19:19.253:I/Web 控制台(1081):在文件:///android_asset/www/default/worklight/worklight.js:7638:5 07-18 18:19:19.253: I/Web 控制台 (1081): 在 Object.onSuccess (file:///android_asset/www/default/worklight/worklight.js:7665:5) 07-18 18:19:19.253: I/Web 控制台 (1081): 在 finalizeInit (file:///android_asset/www/default/worklight/worklight.js:6972:15) 07-18 18:19:19.253:I/Web 控制台(1081):在对象处。 (文件:///android_asset/www/default/worklight/worklight.js:7812:7) 07-18 18:19:19.253:I/Web 控制台(1081):在对象处。 (文件:///android_asset/www/default/worklight/wljq.js:1202:33) 07-18 18:19:19.253:I/Web 控制台(1081):在文件:///android_asset/www/default/worklight/wljq.js:1047:30 07-18 18:19:19.253: I/Web 控制台 (1081): 在 Object.resolveWith (file:///android_asset/www/default/worklight/wljq.js:1158:7) 07-18 18:19:19.253: I/Web 控制台 (1081): 在 Object.resolve (file:///android_asset/www/default/worklight/wljq.js:1247:34) 07-18 18:19:19.253: I/Web 控制台 (1081): 在 deviceIDSuccessCallback (file:///android_asset/www/default/worklight/worklight.js:7732:22) 在 file:///android_asset/www /default/worklight/cordova.js:1061 07-18 18:19:19.263:D/CordovaLog(1081):file:///android_asset/www/default/worklight/cordova.js:第 1062 行:processMessage 失败:消息:S01 DeviceAuth365622402 s90e2f8ab-3e50-3564-921f -b4887579e4a2 07-18 18:19:19.263:I/Web 控制台(1081):processMessage 失败:消息:S01 DeviceAuth365622402 s90e2f8ab-3e50-3564-921f-b4887579e4a2 在 file:///android_asset/www/default/worklight/cordova.js :1062 07-18 18:19:19.313: E/NONE(1081): 与 MBaaS 的连接成功建立 07-18 18:19:19.323:W/PluginManager(1081):线程警告:对 LoggerPlugin.log 的 exec() 调用阻塞了主线程 22 毫秒。插件应该使用 CordovaInterface.getThreadPool()。 07-18 18:19:19.383: D/NONE(1081): Ganesh doSubscribe featurefalse 07-18 18:19:19.443:W/PluginManager(1081):线程警告:对 LoggerPlugin.log 的 exec() 调用阻塞了主线程 19 毫秒。插件应该使用 CordovaInterface.getThreadPool()。 07-18 18:19:19.453: D/NONE(1081): Ganesh doSubscribe 功能已输入 07-18 18:19:19.484:W/PluginManager(1081):线程警告:对 LoggerPlugin.log 的 exec() 调用阻塞了主线程 40 毫秒。插件应该使用 CordovaInterface.getThreadPool()。 07-18 18:19:19.543: E/NONE(1081): 无法订阅,通知令牌未在服务器上更新 07-18 18:19:19.563: D/dalvikvm(1081): GC_CONCURRENT freed 426K, 26% free 3050K/4080K, paused 14ms+35ms,总共195ms
【问题讨论】:
-
你能试着把你的问题格式化一下吗?按原样遵循有点困难。 stackoverflow.com/help/formatting
标签: push-notification ibm-mobilefirst