ionic3用极光推送笔记
安卓
环境:ionic3 + 极光
应用包名一定要与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用极光推送笔记的更多相关文章
- 添加极光推送以及在ios中的问题
项目为 ionic1 + angular1 1.添加极光推送插件 用cordova进行添加 cordova plugin add jpush-phonegap-plugin --variable AP ...
- java服务端的 极光推送
项目中用到了极光推送 下面写下笔记 首先引入jar包 下载地址https://docs.jiguang.cn/jpush/resources/(非maven项目的下载地址) <depend ...
- 极光推送 JPush 简介 集成 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- 使用极光推送(www.jpush.cn)向安卓手机推送消息【服务端向客户端主送推送】C#语言
在VisualStudio2010中新建网站JPushAndroid.添加引用json帮助类库Newtonsoft.Json.dll. 在web.config增加appkey和mastersecret ...
- 用JPUSH极光推送实现服务端向安装了APP应用的手机推送消息(C#服务端接口)
这次公司要我们做一个功能,就是当用户成功注册以后,他登录以后要收到消息,当然这个消息是安装了我们的手机APP应用的手机咯. 极光推送的网站的网址是:https://www.jpush.cn/ 极光推送 ...
- 极光推送-适配 iOS10
//************************ iOS10 适配 **************************// //************************ 11/02/20 ...
- iOS推送(利用极光推送)
本文主要是基于极光推送的SDK封装的一个快速集成极光推送的类的封装(不喜勿喷) (1)首先说一下推送的一些原理: Push的原理: Push 的工作机制可以简单的概括为下图 图中,Provider是指 ...
- 极光推送JPush的快速集成
首先到极光推送的官网上创建一个应用,填写对应的应用名和包名. 创建好之后下载Demo 提取Sdk里面的图片和xml等资源文件放自己项目的相应位置,然后要注意的是.so文件的放置位置: 在main目录下 ...
- APP的消息推送(极光推送)
APP的消息推送,使用的第三方平台是极光推送 简单案例(以Thinkphp为例): 1.下载下载PHPSDK 2.把PHPSDK目录下的jpush-api-php-client-3.5.1\src\J ...
随机推荐
- Android NDK学习(四):C/C++层调用JAVA
一.从C/C++层调用JAVA层代码(无参数调用) //在c代码里面调用java代码里面的方法 // java 反射 // 1 . 找到java代码的 class文件 // jclass (*Find ...
- mysql数据表修复
当数据库表被破坏,运行报错: Table './database/tablename' is marked as crashed and last (automatic?) repair failed ...
- ASP.NET MVC 异常Exception拦截
一.前言 由于客户端的环境不一致,有可能会造成我们预计不到的异常错误,所以在项目中,友好的异常信息提示,是非常重要的.在asp.net mvc中实现异常属性拦截也非常简单,只需要继承另一个类(Syst ...
- Dispatch Queue 之 dispatch_async
 可以看到,在queue里的任务,不仅仅是一个函数,也可以是一个其他的queue. 下面是一个例子.  全局队列的处理 一般一个全局队列有多个线程,这些个线程会遍历并处理链表里的任务. 对于全局队 ...
- Linux入门搭建可视化桌面环境小合集virtual box centOS7.10
常用命令: 关联主机与虚拟机(方便文件共享): # sudo mount -t vboxsf share(主机文件夹名) /usr/share(虚拟机内自创) Linux shell进入root模式: ...
- Jupyter中python3之numpy练习
---恢复内容开始--- Numpy_pratice In [2]: n = 10 L = [i for i in range(n)] In [3]: L * 2 Out[3]: [0, 1, 2, ...
- ACM学习<二>
穷举算法思想: 一句话:就是从所有可能的情况,搜索出正确的答案. 步骤: 1.对于一种可能的情况,计算其结果. 2.判断结果是否满足,YES计算下一个,no继续步骤1,然后判断 ...
- Docker容器绑定外部IP和端口
Docker允许通过外部访问容器或者容器之间互联的方式来提供网络服务. 以下操作通过myfirstapp镜像模拟,如何制作myfirstapp镜像请点击此处. 1.外部访问容器容器启动之后,容器中可以 ...
- Mongodb 命令清单
一.数据库常用命令 # 切换/创建数据库 PRIMARY> use yourDB; #当创建一个集合(table)的时候会自动创建当前数据库# 查询所有数据库 PRIMARY> show ...
- SpringBoot(4) SpringBoot热部署
热部署,就是在应用正在运行的时候升级软件,却不需要重新启动应用. 使用springboot结合dev-tool工具,快速加载启动应用 官方地址:https://docs.spring.io/sprin ...