在即时通讯 IM 中集成魅族推送

大约 2 分钟

在即时通讯 IM 中集成魅族推送

即时通讯 IM SDK 中已集成魅族推送相关逻辑,你还需要完成以下步骤。

步骤一 在魅族开发者后台创建应用

在魅族开发者后台创建应用,开启推送服务,并上传对应的证书指纹。详见魅族官方介绍:Flyme 推送服务集成open in new window

步骤二 上传推送证书

声网控制台open in new window上传魅族推送证书。

  1. 展开控制台左上角下拉框,选择需要开通即时通讯 IM 服务的项目。

  2. 点击左侧导航栏的全部产品

  3. 在下拉列表中找到即时通讯 IM 并点击。

  4. 即时通讯 IM 页面,进入功能配置标签页。

  5. 推送证书 页签下,点击添加推送证书

  6. 在弹出的对话框中,选择魅族页签,配置相关参数,点击保存。参数相关信息,详见你在 flyme 推送平台open in new window创建的应用的 APP IDAPP SECRET 以及程序的 包名

image

参数类型是否必需描述
证书名称String填写魅族 App ID。
推送密钥String填写魅族 App Secret。
应用包名String填写魅族 App package name。
ActivityString选择点击通知后的动作。
推送送达回执String
- 开启
- 关闭

步骤三 集成魅族推送 SDK

  1. 配置魅族推送远程依赖包。

    app level/build.gradle 中添加依赖。

    dependencies{
        // 从 PushSDK4.1.0 开始 其已发布⾄ mavenCentral
        implementation 'com.meizu.flyme.internet:push-internal:4.3.0'
    }
    
  2. 配置 AndroidManifest.xml

    • 推送服务需要的权限列表:
    <!-- 魅族推送配置 start-->
    <!-- 兼容 flyme5.0 以下版本,魅族内部集成 pushSDK 必填,不然无法收到消息-->
    <uses-permission android:name="com.meizu.flyme.push.permission.RECEIVE" />
    <permission
        android:name="${applicationId}.push.permission.MESSAGE"
        android:protectionLevel="signature" />
    <uses-permission android:name="${applicationId}.push.permission.MESSAGE" />
    <!-- 兼容 flyme3.0 配置权限-->
    <uses-permission android:name="com.meizu.c2dm.permission.RECEIVE" />
    <permission
        android:name="${applicationId}.permission.C2D_MESSAGE"
        android:protectionLevel="signature" />
    <uses-permission android:name="${applicationId}.permission.C2D_MESSAGE" />
    <!-- 魅族推送配置 end-->
    
    • 推送服务需要的 receiver
    <!-- MEIZU 推送配置 start -->
    <receiver android:name="io.agora.push.platform.meizu.MzMsgReceiver">
        <intent-filter>
            <!-- 接收 push 消息 -->
            <action android:name="com.meizu.flyme.push.intent.MESSAGE"
                />
            <!-- 接收 register 消息 -->
            <action
                android:name="com.meizu.flyme.push.intent.REGISTER.FEEDBACK" />
            <!-- 接收 unregister 消息-->
            <action
                android:name="com.meizu.flyme.push.intent.UNREGISTER.FEEDBACK"/>
            <!-- 兼容低版本 Flyme3 推送服务配置 -->
            <action android:name="com.meizu.c2dm.intent.REGISTRATION"
                />
            <action android:name="com.meizu.c2dm.intent.RECEIVE" />
            <category android:name="${applicationId}"></category>
        </intent-filter>
    </receiver>
    <!-- MEIZU 推送配置 end -->
    
  3. 在即时通讯 IM SDK 初始化时,配置启用魅族推送。

    ChatOptions options = new ChatOptions();
    ...
    PushConfig.Builder builder = new PushConfig.Builder(this);
    builder.enableMeiZuPush(String appId,String appKey);
    // 将 pushconfig 设置为 ChatOptions
    options.setPushConfig(builder.build());
    // 初始化 IM SDK
    ChatClient.getInstance().init(this, options);
    
上次编辑于: