全部产品
云市场

客户端配置

更新时间:2019-11-08 10:25:11

客户端配置包括 接入 CDP预置展位加载并展示开屏广告

接入 CDP

接入 CDP 流程如下:

配置开发环境

参考文档 配置开发环境

在控制台创建应用

参考文档 在控制台创建应用,创建应用后,点击应用名称,进入控制台操作页面,完成以下步骤,下载配置文件,操作方法如下:

  1. 在左侧导航栏中,点击 代码管理 > 代码配置,进入 代码配置 页面。
  2. 在右侧页面中,点击 Android 页签,进入 Android 标签页。
  3. 配置 Package Name(应用包名)。
  4. 点击 下载配置 按钮,下载应用配置文件,为后续开发做准备。
    在控制台创建应用
说明:下载的配置文件名称示例:Ant-mpaas-55BE623261623-default-Android.config

在客户端创建新工程

参考 创建 Portal创建 新Bundle,创建一个基于 mPaaS 框架的新工程。

创建 Portal 和 Bundle 过程中,需要分别添加与智能投放组件的依赖。如下图所示,点击 CDP 对应的 安装,添加依赖。
添加组件依赖

编写代码

至此已完成 CDP 的接入工作,您可基于业务需求编写代码。

预置展位

由于通过控制台配置的方式,无法指定展位位置为腰封,故需要通过客户端配置的方式,通过代码,在客户端页面上预置展位,指定展位位置。

操作步骤如下:

  1. 预置 CdpAdvertisementView 展位参数到 App 中展位所在界面的 layout.xml 文件中。
    • 通过 XML 预置
      1. <com.mpaas.cdp.CdpAdvertisementView
      2. android:id="@+id/pit_cdp_cav"
      3. android:layout_width="match_parent"
      4. android:layout_height="wrap_content" />
    • 通过 java 预置
      1. CdpAdvertisementView cdpView = new CdpAdvertisementView(context);
      2. parentView.addView(cdpView);
  2. 在 Activity 的 onResume() 生命周期中调用更新接口。
    1. cdpView.updateSpaceCode("my_space_code");
说明:从服务端获取的展位信息会填写到 CdpAdvertisementView 参数中。

加载并展示开屏广告

加载展位信息和广告

  1. /**
  2. *
  3. * 检查splash 页面是否加载完成
  4. * @return
  5. */
  6. public static boolean checkIfSplashPrepared(){
  7. return cpdService().checkIfSplashPrepared();
  8. }
  9. /**
  10. *
  11. * 加载启动页面
  12. */
  13. private void request_start_up_page() {
  14. final CdpAdvertisementService cdpAdvertisementService = cpdService();
  15. cdpAdvertisementService.getSpaceInfoByCode("STARTPAGE", new HashMap<String, String>(), true, new CdpAdvertisementService.IAdGetSingleSpaceInfoCallBack() {
  16. @Override
  17. public void onSuccess(SpaceInfo spaceInfo) {
  18. //
  19. toastShow(spaceInfo.toString());
  20. }
  21. @Override
  22. public void onFail() {
  23. }
  24. });
  25. }

展示广告

  1. /**
  2. *
  3. * 展示开屏页面
  4. */
  5. private void doSplash() {
  6. final CdpAdvertisementService cdpAdvertisementService = cpdService();
  7. cdpAdvertisementService.doSplash(this, new HashMap<String, String>(), new CdpAdvertisementService.IAdEventHandler() {
  8. @Override
  9. public void onClosed(SpaceInfo spaceInfo) {
  10. }
  11. @Override
  12. public void onJump(SpaceInfo spaceInfo) {
  13. Log.e("suj","onJump clicked");
  14. }
  15. });
  16. }