我嘗試pushwoosh並試圖註銷的遠程API的iOS設備,但此錯誤想出了:pushwoosh錯誤無法識別的選擇發送到實例科爾多瓦1.7.0
-[__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)
然後我意識到,註銷方法僅適用於android而不適用於iOS設備,因此插件文件夾中的pushwoosh插件沒有使用該請求。
我從我的index.js和pushnotifications.js文件中刪除了代碼,但每次嘗試在接受推送通知後啓動應用程序時都會出現錯誤。
我然後取出從遠程API驗證碼:
new JObject(
new JProperty("custom", "json data"))),
new JProperty("link", "http://pushwoosh.com/")
,希望看似自西港島線的數據不會被髮送到pushwoosh。
仍出現錯誤。我知道問題在於每一次都會提出一個不需要的請求,但問題是代碼不存在。
我是否可能編輯了一些方法簽名,並且每次嘗試接受推送通知時都會使用這些簽名?
還是Xcode執行自動完成?
我需要熟悉pushwoosh(和Xcode)的人來幫助我。因爲(這個錯誤來自插件本身,Phonegap傢伙已經改變了「JSONString」的Objective-C函數通過添加前綴「cdvjk_」來打破兼容性的方式,所以不需要升級到Cordova 2.1.0或更高版本與任何< 2.1 Phonegap版本的插件。)?
我確實聯繫過他們,而且正如我在問題中指出的那樣(間接),他們建議升級,所以我想知道除了升級之外是否還有其他解決方法,不幸的是我預測自己正在做這件事。 – iOSAndroidWindowsMobileAppsDev
您可以手動更改刪除「cdvjk_」前綴的插件代碼,它可以在<2.1 Cordova下正常工作。 – shader