ionic3+

ionic2/ionic3 Jpush极光推送无法setAlia

2017-10-26  本文已影响255人  Kiuyam

此文章针对于2017年10月份后,部分ionic2 ionic3开发者极光推送无法setAlias() setTags()的问题。

Jpush 于 2017年10月份更新了 jpush-phonegap-plugin的Api。

部分大神级开发者封装的 npm包(node_modules包)的Api与新版本的 jpush-phonegap-plugin的Api不能对应,所以setAlias和 setTags无法正常生效(请检查是否set后返回的信息为OK,OK其实并没有set成功,真正set成功后返回是个html对象[Object])。

首先大家可以看一下 新版本的Jpush plugin 的api接口。

然后大家可以看一下npm包里面的参数设置方式,是不是跟Jpush plugin提供的方式不一样。

这里仅仅是举例一下,具体大家用的是哪位大神开发者封装的包还需要自己去看一下。

下面是解决方案。

1.ionic2-jpush 包(针对于 "@ionic-native/core":"^4.3.2",ionic-native/core 版本较高的开发者)

https://github.com/HsuanXyz/ionic2-jpush  (npm install ionic2-jpush --save)

此npm包在github已经跟随jpush plujin进行了更新,但是npm源上的包并没有跟随升级,所以大家npm install ionic2-jpush --save下来的包还是旧版的包(api 不同的包)

解决办法是:

1.1 先在自己的工程下npm install ionic2-jpush --save 

(或者直接 npm install https://github.com/HsuanXyz/ionic2-jpush也可以,就不用替换了。)

1.2 然后从https://github.com/HsuanXyz/ionic2-jpush中下载全部文件 ionic2-jpush-master.zip

1.3 解压后替换ionic2/3工程目录下node_modules/ionic2-jpush 里面的文件就好了 记得要替换干净

替换掉就好了

1.4 然后更改自己的代码,注意新的setalias 和 settags的参数。

更改自己的代码

2.dist/@ionic-native/jpush 包 (<= 为啥是蓝色啊??)(针对于 "@ionic-native/core":"^3.6.0",ionic-native/core 版本较低的开发者)

https://github.com/kongdewen1994/ionic2-jpush-cordova-plugin 

这个包的api调用方式一开始就是设置而 any类型。

一开始就是any,不过已经不适合最新的ionic native core了

2.1 按照说明导入包

2.2 改自己代码(看上面)

2.3 测试吧

3.直接调用plugin api

3.1  (<any>window).plugins.jPushPlugin.init();

最后贴一下自己的测试结果

结果


最后最后 感谢各位大神们造的轮子。

上一篇下一篇

猜你喜欢

热点阅读