admin管理员组

文章数量:1558087

注意事项

1.vivo
推送服务SDK支持的最低android版本为Android 6.0。

一、集成SDK

1.导入推送aar包

将解压后的libs文件夹中vivo_pushsdk-VERSION.aar(vivo_pushsdk-VERSION.aar为集成的jar包名字,VERSION为版本名称)拷贝到您的工程的libs文件夹中。

2.引用aar包到工程

在android项目app目录下的build.gradle中添加aar依赖。

dependencies {

         implementation fileTree(include: ['*.jar'],   dir: 'libs')

         implementation   'androidx.appcompat:appcompat:1.0.2'

         implementation     'androidx.constraintlayout:constraintlayout:1.1.3'

         // 添加aar依赖到工程

         implementation   files("libs/vivo_pushsdk-2.5.3.1.aar")

}

二、配置信息

1.添加权限

vivo Push集成只需要配置网络权限,请在当前工程AndroidManifest.xml中的manifest节点下添加以下代码:

<!—Vivo Push需要的权限--> 

<uses-permission android:name="android.permission.INTERNET"/> 

2.配置appid 、api key等信息

vivo Push集成需要配置对应的activity、appid 、app key信息,其中appid 和app key是在开发者平台中申请的,详见 vivo push 操作手册。

请在当前工程AndroidManifest.xml中的Application节点下添加以下代码:

<!--Vivo Push需要配置的service、activity--> 

<service 

    android:name="com.vivo.push.sdk.service.CommandClientService" 
    
    android:exported="true"/>

<!--Vivo Push开放平台中应用的appid 和api key--> 

<meta-data 

    android:name="com.vivo.push.api_key" 
    
    android:value="xxxxxxxx"/> 

<meta-data 

    android:name="com.vivo.push.app_id" 
    
    android:value="xxxx"/>   

三、启动推送

1.添加启动推送代码

在工程的Application中,添加以下代码,用来启动打开push开关,成功后即可在通知消息到达时收到通知。

// 在当前工程入口函数,建议在Application的onCreate函数中,添加以下代码 

PushClient.getInstance(getApplicationContext()).initialize (); 

// 打开push开关, 关闭为turnOffPush,详见api接入文档

PushClient.getInstance(getApplicationContext()).turnOnPush(new IPushActionListener() { 

        @Override

        public void onStateChanged(int state) { 

          // TODO: 开关状态处理, 0代表成功
			if (state != 0) {
                Log.i("打开push异常[" + state + "]");
            } else {
                Log.i("打开push成功");
                Log.i("获取当前设备的当前应用的唯一标识:" + PushClient.getInstance(context).getRegId());
            }

        } 

  }); 

2.自定义通知回调类

在当前工程中新建一个类 PushMessageReceiverImpl继承OpenClientPushMessageReceiver 并重载实现相关方法。并在当前工程的AndroidManifest.xml文件中,添加自定义Receiver信息,代码如下:

<!-- push应用定义消息receiver声明 --> 

<receiver android:name="xxx.xxx.xxx.PushMessageReceiverImpl" > 

   <intent-filter> 

     <!-- 接收push消息 --> 
    
     <action   android:name="com.vivo.pushclient.action.RECEIVE"   /> 

   </intent-filter> 

</receiver>

四、处理推送消息

1.通知点击消息

当设备接收到通知消息后,查看手机的通知栏,可以看到通知栏内的该新通知展示。当点击通知时,回调PushMessageReceiverImpl#onNotificationMessageClicked方法。

示例代码:

public class PushMessageReceiverImpl     extends OpenClientPushMessageReceiver {
        @Override
        public void onNotificationMessageClicked(Context context,  UPSNotificationMessage msg) {
        }

        @Override
        public void onReceiveRegId(Context context, String regId) {

        }
  }

五、混淆说明

若需要混淆app,请在混淆文件中添加以下说明,防止SDK内容被二次混淆,自定义回调类切勿混淆。

-dontwarn com.vivo.push.** 

-keep class com.vivo.push.**{*;   } 

-keep class com.vivo.vms.**{*; }

-keep class xxx.xxx.xxx.PushMessageReceiverImpl{*;}   

踩坑

坑一:

每天测试一个regId只能推送五条通知。因此,手机上会拿不到通知的。

本文标签: vivoandroid