HUAWEI Ads广告服务(转化跟踪参数)(二)

时间:2021-07-15 | 标签: | 作者:Q8 | 来源:华为开发者联盟官网网络

小提示:您能找到这篇{HUAWEI Ads广告服务(转化跟踪参数)(二)}绝对不是偶然,我们能帮您找到潜在客户,解决您的困扰。如果您对本页介绍的HUAWEI Ads广告服务(转化跟踪参数)(二)内容感兴趣,有相关需求意向欢迎拨打我们的服务热线,或留言咨询,我们将第一时间联系您!

< ">

< ">4.集成转化跟踪参数开放能力(SDK方式)

< ">SDK方式是指通过HUAWEI Ads Kit提供的SDK接入开放能力,接入方式简单,推荐使用此方式。

< ">1、集成SDK

< ">步骤1 配置HUAWEI Ads SDK的Maven仓地址。

< ">打开Android Studio项目级build.gradle文件,在allprojects->repositories里面配置SDK的Maven仓地址。

allprojects {

    repositories {

        google()

        jcenter()

        maven { url 'https://developer.huawei.com/repo/' }

    }

}

< ">步骤2 配置依赖

< ">打开子工程app下的build.gradle文件,在dependencies新增SDK的依赖,并将{version}替换为最新HUAWEI Ads SDK版本号,参见版本更新说明。

dependencies {

    implementation 'com.huawei.hms:ads-installreferrer:{version}'

}

< ">步骤3 同步修改的文件

< ">步骤4 配置混淆脚本(必选)

< ">app/proguard-rules.pro

-keep class com.huawei.hms.ads.**{*;}

-keep interface com.huawei.hms.ads.**{*;}

< ">2、创建转化跟踪参数状态监听器

< ">实现InstallReferrerStateListener监听器接口的两个方法onInstallReferrerSetupFinished和onInstallReferrerServiceDisconnected,代码示例如下:

private InstallReferrerStateListener installReferrerStateListener = new InstallReferrerStateListener() {

    @Override

    public void onInstallReferrerSetupFinished(int responseCode) {

        switch (responseCode) {

            case InstallReferrerClient.InstallReferrerResponse.OK:

                Log.i(TAG, "connect ads kit ok");

                get();

                break;

            case InstallReferrerClient.InstallReferrerResponse.FEATURE_NOT_SUPPORTED:

                Log.i(TAG, "FEATURE_NOT_SUPPORTED");

                break;

            case InstallReferrerClient.InstallReferrerResponse.SERVICE_UNAVAILABLE:

                Log.i(TAG, "SERVICE_UNAVAILABLE");

                break;



            default:

                Log.i(TAG, "responseCode: " + responseCode);



                break;

        }

    }


    @Override

    public void onInstallReferrerServiceDisconnected() {

        Log.i(TAG, "onInstallReferrerServiceDisconnected");

    }

};

< ">在连接成功的回调中调用getInstallReferrer方法获取转化跟踪参数。

< ">InstallReferrerSdkUtil.java

private void get() {

    if (null != mReferrerClient) {

        try {

            ReferrerDetails referrerDe精准营销线下tails = mReferrerClient.getInstallReferrer();

            if (null != referrerDetails && null != mCallback) {

                mCallback.onSuccuss(referrerDetails.getInstallReferrer(),

                        referrerDetails.getReferrerClickTimestampMillisecond(),

                        referrerDetails.getInstallBeginTimestampMillisecond());

            }

        } catch (RemoteException e) {

            Log.i(TAG, "getInstallReferrer RemoteException: " + e.getMessage());

        } catch (IOException e) {

            Log.i(TAG, "getInstallReferrer IOException: " + e.getMessage());

        } finally {

            disconnect();

        }

    }

}

< ">3、创建InstallReferrerClient实例

< ">通过builder配置和创建一个InstallReferrerClient实例。

< ">开发步骤:

< ">步骤1 调用InstallReferrerClient.newBuilder创建一个Builder实例。

< ">步骤2 调用build创建InstallReferrerClient实例。

< ">InstallReferrerSdkUtil.java

mReferrerClient=InstallReferrerClient.newBuilder(mCont宣传海报软件ext).build();

< ">4、连接转化跟踪参数服务

< ">建立与转化跟踪参数服务的连接,不要在主线程中调用该方法。

< ">开发步骤:

< ">步骤1 设置startConnection的监听器为已创建的InstallReferrerStateListener监听器。

< ">步骤2 在子线程中调用startConnection方法连接服务。

< ">InstallReferrerSdkUtil.java

mReferrerClient.startConnection(installReferrerStateListener);

< ">5.集成转化跟踪参数开放能力(AIDL方式)

< ">1、新增AIDL接口文件

< ">在工程中新增一个aidl接口文件,包名为com.huawei.android.hms.ppskit,文件名称为IPPSChannelInfoService.aidl,拷贝下面内容到文件中。

< ">app/src/main/aidl/com/huawei/android/hms/ppskit/IPPSChannelInfoService.aidl

< ">/< color: rgb(127, 127, 127);">/IPPSRemoteService.aidl

package com.huawei.android.hms.ppskit;

/*

*Important:Do not modify the method sequence of the AIDL file.

*/

interface IPPSChannelInfoService{

String getChannelInfo();

}

< ">2、创建一个类,实现ServiceConnection接口。

< ">开发步骤:

< ">步骤1 实现ServiceConnection的onServiceConnected方法。

< ">步骤2 调用IPPSChannelInfoService.Stub.asInterface方法获取IPPSChannelInfoService。

< ">步骤3 调用getChannelInfo方法获取转化跟踪参数。

< ">InstallReferrerAidlUtil.java

private final class InstallReferrerServiceConnection implements ServiceConnection {


    private InstallReferrerServiceConnection() {

    }


    @Override

    public void onServiceConnected(ComponentName componentName, IBinder iBinder) {

        Log.i(TAG, "onServiceConnected");

        mService = IPPSChannelInfoService.Stub.asInterface(iBinder);

        if (null != mService) {

            try {

                String channelJson = mService.getChannelInfo();

                Log.i(TAG, "channelJson: " + channelJson);

                JSONObject jsonObject = new JSONObject(channelJson);

                String installReferrer = jsonObject.optString("channelInfo");

                long clickTimestamp = jsonObject.optLong("clickTimestamp", 0);

                long installTimestamp = jsonObject.optLong("installTimestamp", 0);

                if (null != mCallback) {

                    mCallback.onSuccuss(installReferrer, clickTimestamp, installTimestamp);

                } else {

                    mCallback.onFail("install referrer is empty");

                }

            } catch (RemoteException e) {

                Log.e(TAG, "getChannelInfo RemoteException");

                mCallback.onFail(e.getMessage());

            } catch (Exception e) {

                Log.e(TAG, "getChannelInfo Excepition");

                mCallback.onFail(e.getMessage());

            } finally {

                unbindService();

            }

        }

    }


    @Override

    public void onServiceDisconnected(ComponentName componentName) {

        Log.i(TAG, "onServiceDisconnected");

        mService = null;

    }

}

< ">3、连接转化跟踪参数的AIDL服务

< ">开发步骤:

< ">步骤1 创建一个InstallReferrerServiceConnection实例。

< ">步骤2 创建一个Intent,Action是"com.huawei.android.hms.CHANNEL_SERVICE"。

< ">步骤3 设置Intent的包名为"com.huawei.hwid"。

< ">步骤4 调用bindService连接转化跟踪参数的AIDL服务。

< ">InstallReferrerAidlUtil.java

private boolean bindService() {

    Log.i(TAG, "bindService");

    if (null == mContext) {

        Log.e(TAG, "context is null");

        return false;

    }

    mServiceConnection = new InstallReferrerServiceConnection();

    Intent intent = new Intent(Constants.SERVICE_ACTION);

    intent.setPackage(Constants.SERVICE_PACKAGE_NAME);

    boolean result = mContext.bindService(intent, mServiceConnection, Context.BIND_AUTO_CREATE);

    Log.i(TAG, "bindService result: " + result);

    return result;

}

< ">4、断开转化跟踪参数的AIDL服务

< ">使用完AIDL接口后,应该主动断开服务连接。

< ">InstallReferrerAidlUtil.java

private void unbindService() {

    if (null != mServiceConnection) {

        unbindService(mServiceConnection);

    }

}

HUAWEI Ads广告服务(转化跟踪参数)(二)

上一篇:Wish税务设置
下一篇:HUAWEI Ads广告服务(转化跟踪参数)(三)


版权声明:以上主题为“HUAWEI Ads广告服务(转化跟踪参数)(二)"的内容可能是本站网友自行发布,或者来至于网络。如有侵权欢迎联系我们客服QQ处理,谢谢。
相关内容
推荐内容
扫码咨询
    HUAWEI Ads广告服务(转化跟踪参数)(二)
    打开微信扫码或长按识别二维码

小提示:您应该对本页介绍的“HUAWEI Ads广告服务(转化跟踪参数)(二)”相关内容感兴趣,若您有相关需求欢迎拨打我们的服务热线或留言咨询,我们尽快与您联系沟通HUAWEI Ads广告服务(转化跟踪参数)(二)的相关事宜。

关键词:HUAWEI,Ads广告服务(转化跟

关于 | 业务 | 案例 | 免责 | 隐私
客服邮箱:sales@1330.com.cn
电话:400-021-1330 | 客服QQ:865612759
沪ICP备12034177号 | 沪公网安备31010702002418号