Package io.rong.push

Class RongPushClient

    • Field Summary

      Fields 
      Modifier and Type Field Description
    • Constructor Summary

      Constructors 
      Constructor Description
      RongPushClient()
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
    • Method Summary

      Modifier and Type Method Description
      static void registerGCM(Context context) 注册GCM推送。必须在init()之前调用。 该方法已废弃,请使用 setPushConfig
      static void registerFCM(Context context) 注册FCM推送。必须在init()之前调用。 该方法已废弃,请使用 setPushConfig
      static void registerMiPush(Context context, String miAppId, String miAppKey) 注册小米推送。必须在init()之前调用。 该方法已废弃,请使用 setPushConfig
      static void registerHWPush(Context context) 注册华为推送。必须在init()之前调用。 该方法已废弃,请使用 setPushConfig
      static void registerMZPush(Context context, String appId, String appKey) 注册魅族推送。必须在 init() 之前调用。 该方法已废弃,请使用 setPushConfig
      static void resolveHWPushError(Activity activity, long errorCode) 注意:华为推送升级到3.0版本后,该接口已废弃,调用无任何效果 处理华为push连接错误,由终端用户操作解决.
      static void resolveHMSCoreUpdate(Activity activity) 处理华为 hms core 为 3.0 以下版本无法获取 token 弹框升级的逻辑.
      static void init(Context context, String appKey) 初始化。
      static void init(Context context, String appKey, String pushDomain, boolean isPushEnable) 初始化(在应用主进程调用初始化)。 用户设置自己的 push 服务器地址时,使用该接口。
      static void setPushEventListener(PushEventListener listener) 设置推送事件监听器.
      static PushEventListener getPushEventListener() 获取应用层设置的推送事件监听器
      static void stopService(Context context) 停止融云 push 服务,如果用的第三方推送,也会断掉和第三方推送的连接。
      static void redirected(Context context) push 服务重定向。通过该接口,可以重新访问 push 导航服务器, 根据返回的地址再次建立连接。
      static void clearAllNotifications(Context context) 清除通知栏所有通知消息。
      static PushType getCurrentPushType(Context context) 获取当前使用的推送类型。 如果配置失败,返回的推送类型为 UNKNOWN
      static void clearAllPushNotifications(Context context) 清除所有的推送通知和后台消息通知。ex: A账号离线或者退到后台,B账号给A发送消息,A设备会收到该消息的通知,调用此函数会清除该类型的通知。 但是,如果是从开发者后台使用广播推送服务发送的推送通知,仍然会保留,不会清除 。
      static void clearAllPushServiceNotifications(Context context) 清除所有后台推送服务的推送通知。后台推送服务,是指开发者后台的广播推送服务。
      static void clearNotificationById(Context context, int notificationId) 根据 notification id 清除通知栏。
      static void recordNotificationEvent(String pushId) 记录在开发者后台使用后台推送功能时,对应的推送通知的点击事件。开发者后台的推送打开率既根据客户端上传的该事件进行相应统计和计算。 2.6.0之前版本,推送打开率的使用请在知识库里搜索标签push,有相关说明。 2.6.
      static void recordNotificationEvent(PushNotificationMessage pushNotificationMessage, PushType pushType) 上传推送通知的点击事件,开发者后台的推送打开率既根据客户端上传的该事件进行相应统计和计算。
      static void recordHWNotificationEvent(Intent intent) 统计华为push点击事件 如果用户没有在开发者后台自定义intent,则需要在配置的会话列表界面的activity的onCreate方法里面调用该接口 示例:
      if(intent != null && intent.getData() != null && intent.getData().getScheme() != null
                    && intent.getData().getScheme().equals("rong")
                    && intent.getData().getQueryParameter("isFromPush") != null
                    && intent.getData().getQueryParameter("isFromPush").equals("true")){
                        RongPushClient.recordHWNotificationEvent(intent);
                    }
      如果用户在开发者后台自定义了华为推送点击传入的intent,则需要在自己配置的activity里面过滤intent,根据你自定义的intent过滤出intent,并调用该接口。
      static void stopRongPush(Context context) 停止融云推送服务。
      static void sendNotification(Context context, PushNotificationMessage notificationMessage) 发送通知。如果使用IMLib开发,当应用在后台需要弹后台通知时,可以直接调用此函数弹出通知。
      static void sendNotification(Context context, PushNotificationMessage notificationMessage, int left) 发送通知。如果使用IMLib开发,当应用在后台需要弹后台通知时,可以直接调用此函数弹出通知。
      static void setNotifiationSound(Uri uri) 设置通知铃音 uri须设置绝对路径。在 init 之后 connect 之前调用可以使连接后所有接收的消息都提示此铃声
      static void checkManifest(Context context) 帮助方法,用来检查androidManifest里融云Push服务相关的配置是否正确。
      static void cancelPushHeartBeat(Context context)
      static void sendPushPing(Context context)
      static void updatePushContentShowStatus(Context context, boolean isShow)
      static void recordPushArriveEvent(Context context, PushType pushType, PushNotificationMessage pushNotificationMessage) 上传推送送达事件 开发者后台的推送到达率,根据客户端上传的该事件进行相应统计和计算。
      static void setPushConfig(PushConfig config) 设置 push 相关配置。在初始化 SDK 之前调用。
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • RongPushClient

        RongPushClient()
    • Method Detail

      • registerGCM

        @Deprecated() static void registerGCM(Context context)

        注册GCM推送。必须在init()之前调用。

        该方法已废弃,请使用 setPushConfig

        Parameters:
        context - 上下文。
      • registerFCM

        @Deprecated() static void registerFCM(Context context)

        注册FCM推送。必须在init()之前调用。

        该方法已废弃,请使用 setPushConfig

      • registerMiPush

        @Deprecated() static void registerMiPush(Context context, String miAppId, String miAppKey)

        注册小米推送。必须在init()之前调用。

        该方法已废弃,请使用 setPushConfig

        Parameters:
        context - 上下文。
        miAppId - 您在小米开发者站注册的应用的AppId.
        miAppKey - 您在小米开发者站注册的应用的AppKey.
      • registerHWPush

        @Deprecated() static void registerHWPush(Context context)

        注册华为推送。必须在init()之前调用。

        该方法已废弃,请使用 setPushConfig

        Parameters:
        context - 上下文。
      • registerMZPush

        @Deprecated() static void registerMZPush(Context context, String appId, String appKey)

        注册魅族推送。必须在 init() 之前调用。

        该方法已废弃,请使用 setPushConfig

        Parameters:
        context - 上下文.
        appId - 应用在魅族后台注册后生成的魅族 appId.
        appKey - 应用在魅族后台注册后生成的魅族 appKey.
      • resolveHWPushError

        @Deprecated() static void resolveHWPushError(Activity activity, long errorCode)

        注意:华为推送升级到3.0版本后,该接口已废弃,调用无任何效果 处理华为push连接错误,由终端用户操作解决. 仅当错误码为以下错误码才能通过终端用户操作解决: SERVICE_MISSINGSERVICE_VERSION_UPDATE_REQUIREDBINDFAIL_RESOLUTION_REQUIRED

        Parameters:
        activity - 当前界面的activity, 不能传空
        errorCode - 错误码
      • resolveHMSCoreUpdate

         static void resolveHMSCoreUpdate(Activity activity)

        处理华为 hms core 为 3.0 以下版本无法获取 token 弹框升级的逻辑.

        Parameters:
        activity - 当前界面的activity,不能为空
      • init

         static void init(Context context, String appKey)

        初始化。

        Parameters:
        context - 上下文。
        appKey - app 唯一 key
      • init

         static void init(Context context, String appKey, String pushDomain, boolean isPushEnable)

        初始化(在应用主进程调用初始化)。 用户设置自己的 push 服务器地址时,使用该接口。

        Parameters:
        context - 上下文。
        appKey - app 唯一 key
        pushDomain - push 服务器域名。
      • setPushEventListener

         static void setPushEventListener(PushEventListener listener)

        设置推送事件监听器.

        所有第三方推送相关事件可通过此监听器拦截。 融云默认推送由于需要跨进程,仍然需要通过 监听

        Parameters:
        listener - 推送事件监听器
      • getPushEventListener

         static PushEventListener getPushEventListener()

        获取应用层设置的推送事件监听器

        Returns:

        推送事件监听器

      • stopService

         static void stopService(Context context)

        停止融云 push 服务,如果用的第三方推送,也会断掉和第三方推送的连接。

        Parameters:
        context - 应用上下文
      • redirected

         static void redirected(Context context)

        push 服务重定向。通过该接口,可以重新访问 push 导航服务器, 根据返回的地址再次建立连接。

        Parameters:
        context - 应用上下文
      • clearAllNotifications

         static void clearAllNotifications(Context context)

        清除通知栏所有通知消息。

        Parameters:
        context - 上下文
      • getCurrentPushType

         static PushType getCurrentPushType(Context context)

        获取当前使用的推送类型。

        如果配置失败,返回的推送类型为 UNKNOWN

      • clearAllPushNotifications

         static void clearAllPushNotifications(Context context)

        清除所有的推送通知和后台消息通知。ex: A账号离线或者退到后台,B账号给A发送消息,A设备会收到该消息的通知,调用此函数会清除该类型的通知。 但是,如果是从开发者后台使用广播推送服务发送的推送通知,仍然会保留,不会清除 。

        Parameters:
        context - 上下文。
      • clearAllPushServiceNotifications

         static void clearAllPushServiceNotifications(Context context)

        清除所有后台推送服务的推送通知。后台推送服务,是指开发者后台的广播推送服务。

        Parameters:
        context - 上下文。
      • clearNotificationById

         static void clearNotificationById(Context context, int notificationId)

        根据 notification id 清除通知栏。

        Parameters:
        context - 上下文。
        notificationId - 通知栏消息 id。
      • recordNotificationEvent

        @Deprecated() static void recordNotificationEvent(String pushId)

        记录在开发者后台使用后台推送功能时,对应的推送通知的点击事件。开发者后台的推送打开率既根据客户端上传的该事件进行相应统计和计算。 2.6.0之前版本,推送打开率的使用请在知识库里搜索标签push,有相关说明。 2.6.0之后版本,如果用户使用的SDK内置的通知实现,则不需要调用该方法来统计推送打开率,SDK内部已经帮用户做了统计。 但是如果用户自己定义了推送时通知栏的显示,则需要在点击通知时,调用此方法,来向服务器上传推送打开事件。

        Parameters:
        pushId - push通知的id。只有使用开发者后台广播消息和开发者后台推送服务时,pushId才会有值,其余非后台情况下都为空。
      • recordNotificationEvent

         static void recordNotificationEvent(PushNotificationMessage pushNotificationMessage, PushType pushType)

        上传推送通知的点击事件,开发者后台的推送打开率既根据客户端上传的该事件进行相应统计和计算。

        Parameters:
        pushNotificationMessage - 推送消息
        pushType - 推送消息类型
      • recordHWNotificationEvent

         static void recordHWNotificationEvent(Intent intent)

        统计华为push点击事件 如果用户没有在开发者后台自定义intent,则需要在配置的会话列表界面的activity的onCreate方法里面调用该接口 示例:

        if(intent != null && intent.getData() != null && intent.getData().getScheme() != null
                      && intent.getData().getScheme().equals("rong")
                      && intent.getData().getQueryParameter("isFromPush") != null
                      && intent.getData().getQueryParameter("isFromPush").equals("true")){
                          RongPushClient.recordHWNotificationEvent(intent);
                      }
        如果用户在开发者后台自定义了华为推送点击传入的intent,则需要在自己配置的activity里面过滤intent,根据你自定义的intent过滤出intent,并调用该接口。
        Parameters:
        intent - 点解华为push传入的intent.
      • stopRongPush

        @Deprecated() static void stopRongPush(Context context)

        停止融云推送服务。

        Parameters:
        context - 上下文。
      • sendNotification

         static void sendNotification(Context context, PushNotificationMessage notificationMessage)

        发送通知。如果使用IMLib开发,当应用在后台需要弹后台通知时,可以直接调用此函数弹出通知。

        Parameters:
        context - 上下文
        notificationMessage - 融云对外公开的通知消息。
      • sendNotification

         static void sendNotification(Context context, PushNotificationMessage notificationMessage, int left)

        发送通知。如果使用IMLib开发,当应用在后台需要弹后台通知时,可以直接调用此函数弹出通知。

        Parameters:
        context - 上下文
        notificationMessage - 融云对外公开的通知消息。
        left - 离线消息数
      • setNotifiationSound

         static void setNotifiationSound(Uri uri)

        设置通知铃音 uri须设置绝对路径。在 init 之后 connect 之前调用可以使连接后所有接收的消息都提示此铃声

        Parameters:
        uri - 铃音 uri
      • checkManifest

        @Deprecated() static void checkManifest(Context context)

        帮助方法,用来检查androidManifest里融云Push服务相关的配置是否正确。

        Parameters:
        context - 上下文。
      • recordPushArriveEvent

         static void recordPushArriveEvent(Context context, PushType pushType, PushNotificationMessage pushNotificationMessage)

        上传推送送达事件

        开发者后台的推送到达率,根据客户端上传的该事件进行相应统计和计算。

        Parameters:
        context - 上下文
        pushType - 推送类型 PushType
        pushNotificationMessage - 推送消息 PushNotificationMessage
      • setPushConfig

         static void setPushConfig(PushConfig config)

        设置 push 相关配置。在初始化 SDK 之前调用。

        Parameters:
        config - push 配置。PushConfig.