Phonegap + iOS + Parse 推送通知
Posted
技术标签:
【中文标题】Phonegap + iOS + Parse 推送通知【英文标题】:Phonegap + iOS + Parse Push Notification 【发布时间】:2015-09-18 18:35:41 【问题描述】:我正在为 ios 和 android 开发基于 Cordova 的应用程序 我已经成功实现了 Parse for Android。 我的 index.html 中有一个 HandleGlobalPush,当 Parse 通知到达并且用户点击它时,我从 CordovaActivity.java 调用它。 我在 HandleGlobalPush 中处理我的视图导航,它根据通知中收到的 AlertType 数据将用户重定向到特定屏幕/视图 工作正常,没有任何问题。
昨天我开始为 iOS 做同样的事情 这是我在 AppDelegate.m 中实现的
-(void) application :(UIApplication *)application
didReceiveRemoteNotification:(NSDictionary *)userInfo
// Process the remote notification
[PFPush handlePush:userInfo];
// Clear notification badge
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];
[[UIApplication sharedApplication] cancelAllLocalNotifications];
//here data will be json and converted to string in future
NSString *jsCallBack = [NSString stringWithFormat:@"HandleGlobalPush('data');"];
//[self.viewController.loadFromString("javascript:" + jsCallBack);
[viewController.webView stringByEvaluatingJavaScriptFromString:jsCallBack];
在 viewController.webView 我可以看到生成的 jsCallBack 之前,我可以看到我可以到达的所有内容。我还看到在 Push 中收到的数据,但它没有调用 HandleGlobalPush,我将从那里根据数据查看导航和 UI 更改。
【问题讨论】:
【参考方案1】:@Sandy, 我了解您在做什么 - 但不知道为什么。 Parse 刚刚发布了适用于 iOS 和 Android 的新 SDK。无论如何,已经有 Push Plugin 用于 Parse。您是否正在尝试构建一个新的插件?是这样的,已经有相关的指示了,而你不在基地。
Phonegap FAQ - 见最后一个问题
为 OS X 引入 Parse Pushhttp://blog.parse.com/announcements/introducing-parse-push-for-os-x/
谷歌:phonegap push plugin parse
Phonegap Parse Plugin
此外,如果您正在编写 Java,这将违背 Phonegap 的全部目的,除非您正在编写插件。
谷歌:phonegap how to write a plugin
【讨论】:
您好杰西,感谢您的帮助。我尝试使用 PushPlugin 我能够注册设备但无法从 Parse 获得推送。我在 iOS 8 或更高版本中看到了很多关于弃用的警告。但是我从该插件中发现的一件事是用于将 json 数据解析为目标 c 中的 json 字符串以及如何在 javascript 中将其传递回函数调用。我在上面显示的代码中实现了这个逻辑,然后它就起作用了。所以我的主要问题解决了。 Parse Plugin 也在插件中做同样的事情,所以我可以通过修改 cordova 项目的 appdelegate.m。 Continue... 现在我处于测试阶段,所以一旦整个 api 逻辑完成,我们将编写原生应用程序,届时我们会处理它以上是关于Phonegap + iOS + Parse 推送通知的主要内容,如果未能解决你的问题,请参考以下文章
PhoneGap/Ionic 如何处理来自 Parse 的推送通知?
如何让 Parse.com 推送通知在 Cordova/Phonegap Android 应用程序中工作?