安卓

环境:ionic3  + 极光

"jpush-phonegap-plugin": "^3.4.3"
"cordova-plugin-jcore": "^1.2.3"
android@6.4.0
 
插件github:
在极光推送注册,然后创建应用--推送设置

应用包名一定要与config.xml一致

 
 
安装插件:
ionic cordova plugin add jpush-phonegap-plugin --variable APP_KEY=your_jpush_appkey(这里为极光的appkey)
npm install --save @jiguang-ionic/jpush

注意:在android6.4和android7.0之后的文件结构有所不一样。

因为我直接安装最新,但是我android@6.4,所以需要搬下插件位置。

即可。

前端代码:

1.在app.module.ts注册插件

import { JPush } from '@jiguang-ionic/jpush';

2.在main.ts添加监听事件

// 打开
document.addEventListener('jpush.openNotification', (event?: any)=>{
console.log('---------------jpush openNotification main----------------')
console.log(JSON.stringify(event))
alert(JSON.stringify(event))
}, false);
// 获取自定义信息内容
document.addEventListener('jpush.receiveMessage', (event?: any)=>{
console.log('---------------jpush receiveMessage main----------------')
console.log(JSON.stringify(event))
alert(JSON.stringify(event))
}, false);
// 后台接受通知
document.addEventListener('jpush.receiveLocalNotification', (event?: any)=>{
console.log('---------------jpush receiveLocalNotification mainmain----------------')
console.log(JSON.stringify(event))
alert(JSON.stringify(event))
}, false);

3本地通知

// jpush
this.JPush.addLocalNotification(1, 'content', 'title', 1, 100, '{"data": "123"}');

ios

鉴于ios接触很少,只是做零散的笔记

ios有3种证书,开发证书,生产证书,推送证书。我就让同事拉我进开发者,我是只能查看和使用

然后一些Xcode设置

开启与证书一直的相关设置

设置好debug

在ionicbuild后需要添加原生代码来注册,注册成功才能接受通知,否则只能使用本地通知和自定义信息。

ionic cordova build ios

ionic cordova build ios -- --buildFlag="-UseModernBuildSystem=0"

第一个为正常build,第二个有部分build成功,但是无法真机调试的解决方案之一。

最后,在AppDelegate.m添加代码:这里在极光推送的ios文档有

https://docs.jiguang.cn/jpush/client/iOS/ios_guide_new/#_5

如果一切正常,就可以正常推送信息。

当出现这个错误的时候:

我的解决方法是:

原来的“New Build System”设置成“Legacy Build System”

在第一次接触ios,很多各种证书问题,设置问题,所以就靠记忆回想记录,各种零散,方便自己查看。

推送功能,在前台,后台的时候,都安卓和ios都可以接受到发送通知,自定义信息只能在前台接受到;

在debug的时候,关了app,ios依然可以接受到通知;安卓不行;据说,大的品牌例如qq,百度等等这些app假如了厂商的白名单,任务器关了也会有相关程序在;

ionic3用极光推送笔记的更多相关文章

  1. 添加极光推送以及在ios中的问题

    项目为 ionic1 + angular1 1.添加极光推送插件 用cordova进行添加 cordova plugin add jpush-phonegap-plugin --variable AP ...

  2. java服务端的 极光推送

    项目中用到了极光推送  下面写下笔记 首先引入jar包   下载地址https://docs.jiguang.cn/jpush/resources/(非maven项目的下载地址) <depend ...

  3. 极光推送 JPush 简介 集成 MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  4. 使用极光推送(www.jpush.cn)向安卓手机推送消息【服务端向客户端主送推送】C#语言

    在VisualStudio2010中新建网站JPushAndroid.添加引用json帮助类库Newtonsoft.Json.dll. 在web.config增加appkey和mastersecret ...

  5. 用JPUSH极光推送实现服务端向安装了APP应用的手机推送消息(C#服务端接口)

    这次公司要我们做一个功能,就是当用户成功注册以后,他登录以后要收到消息,当然这个消息是安装了我们的手机APP应用的手机咯. 极光推送的网站的网址是:https://www.jpush.cn/ 极光推送 ...

  6. 极光推送-适配 iOS10

    //************************ iOS10 适配 **************************// //************************ 11/02/20 ...

  7. iOS推送(利用极光推送)

    本文主要是基于极光推送的SDK封装的一个快速集成极光推送的类的封装(不喜勿喷) (1)首先说一下推送的一些原理: Push的原理: Push 的工作机制可以简单的概括为下图 图中,Provider是指 ...

  8. 极光推送JPush的快速集成

    首先到极光推送的官网上创建一个应用,填写对应的应用名和包名. 创建好之后下载Demo 提取Sdk里面的图片和xml等资源文件放自己项目的相应位置,然后要注意的是.so文件的放置位置: 在main目录下 ...

  9. APP的消息推送(极光推送)

    APP的消息推送,使用的第三方平台是极光推送 简单案例(以Thinkphp为例): 1.下载下载PHPSDK 2.把PHPSDK目录下的jpush-api-php-client-3.5.1\src\J ...

随机推荐

  1. 736. Parse Lisp Expression

    You are given a string expression representing a Lisp-like expression to return the integer value of ...

  2. HttpClient实现HTTP文件通用下载类

    import java.io.File; import java.io.FileOutputStream; import java.io.InputStream; import org.apache. ...

  3. interface中定义default方法和static方法

    interface的default方法和static方法 接口中可以定义static方法,可通过接口名称.方法名()调用,实现类不能继承static方法: 接口中可以定义default方法,defau ...

  4. Docker 部署Django项目

    使用docker部署django项目也很简单,挺不错,分享下 环境 默认你已安装好docker环境 django项目大概结构 (p3s) [root@opsweb]# tree opsweb opsw ...

  5. JavaScript的Date类的函数特殊处理导致的问题

    记得以前参加校招的时候,总是有日期相关的面试题,比如计算两个日期之间的间隔天数.以前还觉得这种题就是为了纯粹为了面试的,但工作了之后,还就碰到了跟日期相关的bug.下面是一段js代码,是要把字符串描述 ...

  6. linux日常运维常用命令

    ---查看端口占用 netstat -ap | grep 8000 ---重启nginx sudo /usr/sbin/nginx -c /usr/local/nginx/conf/nginx.con ...

  7. Python中通过threshold创建mask

    [code] import numpy as np threshold=2 a=np.array([[1,2,3],[3,4,5]]) b=a>threshold print("a=& ...

  8. windows下更新node环境

    https://github.com/Kenshin/gnvm 下载gnvm.exe程序 使用where node命令查看node所在目录,并将下载好的gnvm.exe程序复制到目录中 输入gnvm  ...

  9. Javascript和JQuery函数定义方式

    Javascript 函数定义方式 1.function show() {     } 2.var cal = function() {     },必须先声明才能调用 示例: <html> ...

  10. mongodb数据库添加权限及简单数据库命令操作笔记

    加固mongodb建议:修改数据库默认端口,添加数据库访问权限: 启动数据库(裸奔):C:\mongodb\bin>mongod --dbpath C:\MongoDB\data(同时用--db ...