Cordova/Phonegap iOS Parse-Push插件

Siv*_*mar 10 apple-push-notifications ios cordova parse-platform

我花了很多时间为Android和iOS平台的解析推送通知找到正确的cordova插件.

我的要求是:

  1. 接收解析推送通知(在Android和iOS中)
  2. 能够将所有传入的推送通知存储在移动本地存储Sqlite中.

我已经为Android和iOS平台尝试了以下所有解析push cordova插件.

  1. https://github.com/avivais/phonegap-parse-plugin
  2. https://github.com/taivo/parse-push-plugin
  3. https://github.com/campers/parse-push-plugin
  4. https://github.com/manishiitg/parse-push-plugin

对于Android:所有上述插件都完美地满足我上面提到的要求.

对于iOS:只有第一个插件,即https://github.com/avivais/phonegap-parse-plugin正在运行.而且我也无法在本地存储sqlite中保存通知.这意味着只有我的第一个要求得到满足,但不是我的第二个要求.

剩下的插件(即第2,第3,第4)的所有github页面都指出:

"请注意,我只是在这个分支的Android方面工作.iOS方面还没有更新."

是否有任何插件适用于Android和iOS平台以满足我的2个要求?

(要么)

如果两个平台都没有通用插件,那么如何在iOS sqlite中存储传入的插件?

请帮我.提前致谢.

las*_*ood 4

我碰巧维护https://github.com/taivo/parse-push-plugin

看来你在我的叉子刚起步时就抓住了它。当上游分支似乎停滞了一段时间时,我拿起了它,当时我只解决 Android 方面的问题。从那时起我就提供了完整的 iOS 支持。它适用于parse-server以及传出的parse.com。我还做了一个更好的事情,让安装变得简单

cordova add https://github.com/taivo/parse-push-plugin
Run Code Online (Sandbox Code Playgroud)

并编写一些config.xml标签来指示服务器 url 和应用程序 ID。

这应该可以消除在设置插件时手动弄乱 Android Manifest、Java 和 Objective C 的巨大痛苦。

现在它应该满足或超过您的要求。要接收推送通知并存储在 sqlite 中,您所要做的就是在 javascript 中设置一个事件处理程序。请务必使用某种设备就绪或平台就绪事件处理程序包装它,以确保插件已正确加载。

$ionicPlatform.ready(function(){
    if(window.ParsePushPlugin){
       ParsePushPlugin.on('receivePN', function(pn){
           console.log('yo i got this notif:' + JSON.stringify(pn) );

           //
           // do your sqlite storage here
           //
       });
    }
});
Run Code Online (Sandbox Code Playgroud)