本篇Codelab基于Stage模型,实现了展示应用详情页下载安装目标应用、查询广告验签版本、获取模块安装信息、添加按需加载模块、检查应用更新、应用归因服务和隐私管理服务等功能。
我们首先需要完成HarmonyOS开发环境搭建,可参照如下步骤进行。
DevEco Studio版本:DevEco Studio NEXT Developer Beta1及以上。
HarmonyOS SDK版本:HarmonyOS NEXT Developer Beta1 SDK及以上。
设备类型:华为手机、平板、2in1。
HarmonyOS系统:HarmonyOS NEXT Developer Beta1及以上。
本篇Codelab只对核心代码进行讲解,对于完整代码请在“介绍”章节中下载。
用户在媒体页面点击安装按钮或者应用图标, 跳转到应用市场的应用详情页面,点击安装按钮,进行应用的下载安装。调用loadProduct接口步骤如下:
在媒体页面正确导入productViewManager模块。
调用loadProduct接口,需捕获接口异常;传输正确参数,第三个参数是可选参数。
生态查询服务对元服务和应用的加载、跳转、加桌等行为进行管控。对于广告管控场景,生态查询服务会鉴权该调用是否为广告场景,并且匹配对应的场景值进行体验管控。生态查询服务提供查询广告验签版本的能力,调用getAdsVerificationVersion接口步骤如下:
导入sceneManager模块。
调用getAdsVerificationVersion接口,需捕获接口异常。
用户加载指定模块前,为防止同一模块重复加载安装,需要在加载前先判断相应模块是否已经加载。对于已经加载的模块无需重复加载,使用moduleInstallManager中的getInstalledModule方法判断对应模块的加载状态。调用getInstalledModule接口步骤如下:
导入moduleInstallManager模块。
调用getInstalledModule接口,需捕获接口异常。
用户使用应用的增强特性时,需要动态下载增强特性相关的模块。使用moduleInstallManager中的fetchModules动态下载模块。调用fetchModules接口步骤如下:
导入moduleInstallManager模块。
构造入参moduleInstallRequest。
调用fetchModules接口,需捕获接口异常。
如果需要动态加载模块,需要将该demo应用,及demo应用下的相应HSP、HAP等上架到应用市场。
上架应用市场后,从应用市场下载该demo应用,然后才能动态加载模块。
不上架应用市场无法动态加载模块,调用接口后相应的提示信息为:{"code":-6,"taskStatus":-4,"taskId":"","desc":"download info is incomplete","modules":["AModulelib"],"totalSize":0,"downloadedSize":0}。
使用updateManager中的checkAppUpdate方法检查是否有可更新的版本,若有新版本则调用showUpdateDialog显示更新弹框。操作步骤如下:
导入updateManager模块。
调用checkAppUpdate接口(点击“点我调用检查更新的接口”按钮),需捕获接口异常。
若第2步中检测到新版本,则调用showUpdateDialog接口(点击“点我调用显示Dialog的接口”按钮),需捕获接口异常。
如果需要检测到新版本,请将最新版本上架到应用市场,然后才能检测到新版本。
不上架到应用市场时,调用checkAppUpdate接口后相应的提示信息为:{"updateAvailable: 0"},调用showUpdateDialog接口后相应的提示信息为:1。
当用户在广告平台、媒体App内浏览或点击广告主投放的广告、下载安装并产生转化时,应用归因服务通过匹配用户在广告链路中的行为数据,分析用户的来源渠道以及转化的原因,并将归因结果回传给广告平台、广告主/广告监测平台。调用应用归因服务的attributionManager模块的registerSource方法可以实现登记归因来源能力。接口调用步骤如下:
导入attributionManager模块。
构造入参adSourceInfo。
调用registerSource接口,需捕获接口异常。
应用归因服务为广告主提供登记归因转化事件能力,调用registerTrigger接口步骤如下:
导入attributionManager模块。
构造入参adTriggerInfo。
调用registerTrigger接口,需捕获接口异常。
应用归因服务提供开发者接入调试能力,调用validateadSourceInfo接口可以验证媒体/广告平台的登记归因来源信息,接口调用步骤如下:
导入attributionTestManager模块。
构造入参adSourceInfo。
调用validateadSourceInfo接口,需捕获接口异常。
调用setPostback接口可以用于验证triggerData合法性,设置调试使用的归因回传信息,接口调用步骤如下:
导入attributionTestManager模块。
构造入参postbackInfo。
调用setPostback接口,需捕获接口异常。
调用flushPostbacks接口可以验证接收及处理归因回传结果的逻辑是否正确,接口调用步骤如下:
导入attributionTestManager模块。
构造入参adTechId。
调用flushPostbacks接口,需捕获接口异常。
隐私管理服务对接入隐私声明托管服务的应用提供查询隐私链接信息的能力,调用getAppPrivacyMgmtInfo接口步骤如下:
导入privacyManager模块。
调用getAppPrivacyMgmtInfo接口,需捕获接口异常。
您已经完成了本次Codelab的学习,并了解到以下知识点:
1.如何展示应用详情页下载安装目标应用
2.如何查询广告验签版本
3.如何获取模块安装信息
4.如何添加按需加载模块
5.如何检查应用更新并弹框显示升级提示
6.如何登记归因来源
7.如何登记归因转化
8.如何验证归因来源信息
9.如何设置归因回传
10.如何触发归因结果回传
11.如何查询隐私链接信息