Ionic2 Jpush Save

ionic2激光推送的封装基于 jpush-phonegap-plugin

Project README

ionic2-JPush

Dependency Status NPM version Downloads MIT License

为ionic2调用极光插件提供符合angular2及TS的调用方式

说在前面:如果想使用 ionic-native 的调用方式,可以参考https://github.com/zjcboy/ionic2-jpush-demo

install

先安装官方的cordova插件 https://github.com/jpush/jpush-phonegap-plugin.git

$ cordova plugin add jpush-phonegap-plugin --variable APP_KEY=your_jpush_appkey

在安装本库

$ npm install ionic2-jpush --save

Import module

import { NgModule, ErrorHandler } from '@angular/core';
import { IonicApp, IonicModule, IonicErrorHandler } from 'ionic-angular';
import { MyApp } from './app.component';
...
import { IonJPushModule } from 'ionic2-jpush'

@NgModule({
  declarations: [
    MyApp,
    ...
  ],
  imports: [
    IonJPushModule,
    IonicModule.forRoot(MyApp)
  ],
  bootstrap: [IonicApp],
  entryComponents: [
    MyApp,
    ...
  ],
  providers: [{provide: ErrorHandler, useClass: IonicErrorHandler}]
})
export class AppModule {}

Use

import 'rxjs';
import { Component } from '@angular/core';
import { Platform } from 'ionic-angular';
...
import { JPushService } from 'ionic2-jpush'

@Component({
  templateUrl: 'plugins-test.html'

})
export class PluginsTestPage {
  constructor(
    private platform: Platform,
    private jPushPlugin: JPushService
  ) {

        platform.ready().then( () =>{
       
             this.jPushPlugin.openNotification()
               .subscribe( res => {
                 console.log('收到推送');
                 console.log(res)
               });
       
             this.jPushPlugin.receiveNotification()
               .subscribe( res => {
                 console.log('收到推送');
                 console.log(res)
               });
       
             this.jPushPlugin.receiveMessage()
               .subscribe( res => {
                 console.log('收到推送');
                 console.log(res)
               });
       
           })

     }

    /**
    * 注册极光
    */
   init() {
    this.jPushPlugin.init()
    .then(res => alert(res))
    .catch(err => alert(err))
    }

    /**
    * 获取ID
    */
    getRegistrationID() {
     this.jPushPlugin.getRegistrationID()
     .then(res => alert(res))
     .catch(err => alert(err))
     }
     
    /**
    * 设置标签
    */
    setTags() {
    this.jPushPlugin.setTags({
      sequence: Date.now(),
      tags: ['tag1', 'tag2']
    })
    .then((res:any) => {
      console.log(res.tags.toString())
    })
    .catch(err => {
      alert(err);
      console.log(err)
    })
    }
    
  }

API

名称 参数 返回类型 描述
setDebugMode boolean Promise 设置 debug 模式
init Promise 注册极光
getRegistrationID Promise 获取ID
stopPush Promise 停用推送
resumePush Promise 恢复推送
isPushStopped Promise 推送是否被停用
setTags { sequence: number; tags: string[] } Promise 设置 tags
addTags { sequence: number; tags: string[] } Promise 添加 tags
deleteTags { sequence: number; tags: string[] } Promise 删除 tags
cleanTags { sequence: number } Promise 清除tags
getAllTags { sequence: number } Promise 获取所有本机设置的 tags
setAlias { sequence: number; alias: string } Promise 设置 alias
deleteAlias { sequence: number } Promise 删除 alias
getAlias { sequence: number } Promise 获取本机设置的 alias

IOS API

名称 参数 返回类型 描述
setBadge value:number Promise 设置 badge 至 JPush 服务器
reSetBadge Promise 移除 JPush 服务器 badge
getApplicationIconBadgeNumber Promise 获取本地 badge
setApplicationIconBadgeNumber value:number Promise 设置本地 badge
clearAllLocalNotifications Promise 清除所有本地推送对象

Android API

名称 参数 返回类型 描述
clearNotificationById id:number Promise 清除指定ID通知
clearAllNotification Promise 清除所有通知
setPushTime days: number , startHour: number, endHour: number Promise 设置允许推送时间
setSilenceTime days: number , startHour: number, endHour: number Promise 设置通知静默时间

可订阅事件

名称 参数 返回类型 描述
openNotification Observable 点击通知事件
receiveNotification Observable 收到通知事件
receiveMessage Observable 收到自定义消息事件
backgroundNotification Observable 后台收到通知事件
Open Source Agenda is not affiliated with "Ionic2 Jpush" Project. README Source: hsuanxyz/ionic2-jpush
Stars
54
Open Issues
0
Last Commit
6 years ago
License
MIT
Tags

Open Source Agenda Badge

Open Source Agenda Rating