jpush-phonegap-plugin/document/Android_detail_api.md
2015-04-14 09:58:44 +08:00

7.4 KiB
Raw Blame History

adnroid API简介

停止与恢复推送服务 API

API - init

调用此API,用来开启 JPush SDK 提供的推送服务。

开发者App可以通过调用停止推送服务API来停止极光推送服务。当又需要使用极光推送服务时则必须要调用恢复推送服务 API。

本功能是一个完全本地的状态操作。也就是说:停止推送服务的状态不会保存到服务器上。

如果停止推送服务后开发者App被重新安装或者被清除数据

JPush SDK 会恢复正常的默认行为。(因为保存在本地的状态数据被清除掉了)。 
本功能其行为类似于网络中断的效果,即:推送服务停止期间推送的消息,

恢复推送服务后,如果推送的消息还在保留的时长范围内,则客户端是会收到离线消息。
接口定义
window.plugins.jPushPlugin.init()

API - stopPush

  • 在android平台

    • 开发者App可以通过调用停止推送服务API来停止极光推送服务。当又需要使用极光推送服务时则必须要调用恢复推送服务 API。

    • 调用了本 API 后JPush 推送服务完全被停止。具体表现为:

      • JPush Service 不在后台运行
      • 收不到推送消息
      • 不能通过 JPushInterface.init 恢复需要调用resumePush恢复
      • 极光推送所有的其他 API 调用都无效
  • iOS平台

    • 不推荐调用因为这个API只是让你的DeviceToken失效在设置通知 中您的应用程序没有任何变化
    • 推荐设置一个UI界面 提醒用户在在设置-通知关闭推送服务
接口定义
window.plugins.jPushPlugin.stopPush()

#####平台 androidiOS

API - resumePush

恢复推送服务。 调用了此 API 后在android平台上极光推送完全恢复正常工作在iOS平台上重新去APNS注册

#####平台 android iOS

接口定义
window.plugins.jPushPlugin.resumePush()

API - isPushStopped

在android 用来检查 Push Service 是否已经被停止 在iOS 平台检查推送服务是否注册

接口定义
    window.plugins.jPushPlugin.isPushStopped(callback)

#####平台 android iOS

参数说明
  • callback 回调函数用来通知JPush的推送服务是否开启

####代码示例 window.plugins.jPushPlugin.resumePush(callback) var onCallback = function(data) { if(data>0){ //开启 }else{ //关闭 } }

获取集成日志

API - setDebugMode

用于开启调试模式可以查看集成JPush过程中的log如果集成失败可方便定位问题所在

接口定义
window.plugins.jPushPlugin.setDebugMode (mode)
参数说明
  • mode的值

    • true 显示集成日志
    • false 不显示集成日志

接收推送消息Receiver

API - receiveMessageInAndroidCallback

用于android收到应用内消息的回调函数(请注意和通知的区别),该函数不需要主动调用

接口定义
window.plugins.jPushPlugin.receiveMessageInAndroidCallback = function(data)
参数说明
  • data 接收到的js字符串包含的key:value请进入该函数体查看
代码示例

API - openNotificationInAndroidCallback

当点击android手机的通知栏进入应用程序时,会调用这个函数,这个函数不需要主动调用,是作为回调函数来用的

接口定义
window.plugins.jPushPlugin.openNotificationInAndroidCallback = function(data)
参数说明
  • data js字符串
代码示例

统计分析 API

API - onResume / onPause

这是一个 android local api不是js的api请注意 本 API 用于“用户使用时长”,“活跃用户”,“用户打开次数”的统计,并上报到服务器,在 Portal 上展示给开发者。

####接口定义

	public static void onResume(final Activity activity)
	public static void onPause(final Activity activity)

####参数说明

Activity activity 当前所在的Activity。 ####调用说明

应在所有的 Activity 的 onResume / onPause 方法里调用。

####代码示例

@Override
protected void onResume() {
    super.onResume();
    JPushInterface.onResume(this);
}
@Override
protected void onPause() {
    super.onPause();
    JPushInterface.onPause(this);
}

API - reportNotificationOpened

用于上报用户的通知栏被打开,或者用于上报用户自定义消息被展示等客户端需要统计的事件。

接口定义
window.plugins.jPushPlugin.reportNotificationOpened(msgID)
参数说明
  • msgID -收到的通知或者自定义消息的id

清除通知 API

API - clearAllNotification

推送通知到客户端时,由 JPush SDK 展现通知到通知栏上。

此 API 提供清除通知的功能,包括:清除所有 JPush 展现的通知(不包括非 JPush SDK 展现的)

接口定义
window.plugins.jPushPlugin.clearAllNotification = function()

设置允许推送时间 API

设置通知静默时间 API

通知栏样式定制 API

API - setBasicPushNotificationBuilder,setCustomPushNotificationBuilder

当用户需要定制默认的通知栏样式时,则可调用此方法。 极光 Push SDK 提供了 2 个用于定制通知栏样式的构建类:

  • setBasicPushNotificationBuilder
    • Basic 用于定制 Android Notification 里的 defaults / flags / icon 等基础样式(行为)
  • setCustomPushNotificationBuilder
    • 继承 Basic 进一步让开发者定制 Notification Layout

如果不调用此方法定制则极光Push SDK 默认的通知栏样式是Android标准的通知栏提示。

接口定义
window.plugins.jPushPlugin.setBasicPushNotificationBuilder = function()
window.plugins.jPushPlugin.setCustomPushNotificationBuilder = function()

设置保留最近通知条数 API

API - setLatestNotificationNum

通过极光推送,推送了很多通知到客户端时,如果用户不去处理,就会有很多保留在那里。

新版本 SDK (v1.3.0) 增加此功能,限制保留的通知条数。默认为保留最近 5 条通知。

开发者可通过调用此 API 来定义为不同的数量。

接口定义
window.plugins.jPushPlugin.setLatestNotificationNum(num)
参数说明
  • num 保存的条数

本地通知API

API - addLocalNotification,removeLocalNotification,clearLocalNotifications

本地通知API不依赖于网络无网条件下依旧可以触发

本地通知与网络推送的通知是相互独立的,不受保留最近通知条数上限的限制

本地通知的定时时间是自发送时算起的,不受中间关机等操作的影响

三个接口的功能分别为:添加一个本地通知,删除一个本地通知,删除所有的本地通知

#####接口定义

window.plugins.jPushPlugin.addLocalNotification = function(builderId,
										    content,
											title,
											notificaitonID,
											broadcastTime,
											extras)
window.plugins.jPushPlugin.removeLocalNotification = function(notificationID)
window.plugins.jPushPlugin.clearLocalNotifications = function()
参数说明
  • builderId 设置本地通知样式
  • content 设置本地通知的content
  • title 设置本地通知的title
  • notificaitonID 设置本地通知的ID
  • broadcastTime 设置本地通知触发时间,为距离当前时间的数值,单位是毫秒
  • extras 设置额外的数据信息extras为json字符串