我正在尝试 pushwoosh 并尝试在远程 api 上取消注册 iOS 设备,但出现了此错误:
-[__NSDictionaryI cdvjk_JSONString]: unrecognized selector sent to instance
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '- [__NSDictionaryI cdvjk_JSONString]: unrecognized selector sent to instance
*** First throw call stack:
libc++abi.dylib: terminate called throwing an exception
Sending request: {"request":{"hwid":"my_hwid", "application":"my_app_id"}}
To urL https://cp.pushwoosh.com/json/1.3/pushStat
(lldb)
然后我意识到 unregister 方法仅适用于 androids 而不是 iOS 设备,因此插件文件夹中的 pushwoosh 插件没有使用请求。
我从我的 index.js 和 pushnotifications.js 文件中删除了代码,但每次我在接受推送通知后尝试启动应用程序时仍然出现错误。
然后我从远程 api 中删除了这段代码:
new JObject(
new JProperty("custom", "json data"))),
new JProperty("link", "http://pushwoosh.com/")
希望看似自定义的数据不会被发送到 pushwoosh。
仍然出现错误。我知道问题是每次都会发出未经处理的请求,但问题是代码不存在。
我是否可能编辑了一些方法签名,并且每次尝试接受推送通知时都会使用这些签名?
还是 Xcode 执行自动完成?
我需要熟悉 pushwoosh(和 Xcode)的人来帮助我。无需升级到 Cordova 2.1.0 或更高版本的解决方法是什么(此错误来自插件本身,Phonegap 人员通过添加前缀“cdvjk_”改变了调用“JSONString”objective-c 函数的方式破坏了兼容性任何 < 2.1 Phonegap 版本的插件。)?