华为分析服务预置大量分析模型,可帮助您清晰地了解用户的行为方式。从而实现用户、产品、内容的深度洞察,让您实现基于数据驱动的运营,可以就应用营销和产品优化制定明智的决策。
HUAWEI Analytics Kit采集端侧数据,用于支持Analytics功能:
在这个codelab中,您将基于我们提供的Demo project,创建一个Demo App。通过Demo App您可以体验到:
集成HUAWEI HMS Core能力,需要完成以下准备工作:
target 'hmsAnalyticsKitDemo' do
# Pods for hmsAnalyticsKitDemo
pod 'HiAnalytics'
end
end
$ pod install
在上一小节中,您已成功集成了HUAWEI Analytics Kit,本小节您将尝试编写一个Demo,学会如何使用 HUAWEI Analytics Kit的主要接口。这是一个具有答题功能的Demo,您可以不用关心业务逻辑,我们为您准备了现成的代码,您只需要按照下文每一步的提示,学会如何利用HUAWEI Analytics Kit将您所关心的事件,如"回答问题"、"计算分数"、"设置用户属性"等,上报即可。
将HiAnalytics类导入PrefixHeader.pch类中。
#ifndef PrefixHeader_pch
#define PrefixHeader_pch
// Include any system framework and library headers here that should be included in all compilation units.
// You will also need to set the Prefix Header build setting of one or more of your targets to reference this file.
#import <HiAnalytics/HiAnalytics.h>
#import "HToast.h"
#endif /* PrefixHeader_pch */
添加以下代码以初始化Analytics Kit。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// TODO: Initialize the configuration.
[HiAnalytics config];
// TODO: Enable event collection.
[HiAnalytics setAnalyticsEnabled:YES];
// TODO: Configure reporting policies.
[HiAnalytics setReportPolicies:@[[HAReportPolicy onMoveBackgroundPolicy],[HAReportPolicy onCacheThresholdPolicy:200]]];
return YES;
}
- (void)reportAnswerEvt:(NSString *)answer {
// TODO: Report a custom event.
// Event name: Answer
// Event parameters:
// -- question: String
// -- answer: String
// -- answerTime: String
NSDateFormatter *dateFormat=[[NSDateFormatter alloc]init];
[dateFormat setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSString *answerTime=[dateFormat stringFromDate:[NSDate date]];
NSDictionary *parms = @{@"question":self.questionsArray[self.curQuqestionIndex],
@"answer":answer,
@"answerTime":answerTime};
// Report a custom event.
[HiAnalytics onEvent:@"Answer" setParams:parms];
}
- (IBAction)postScoreBtnClick:(UIButton *)sender {
// TODO: Report a score through the kHAEventSubmitScore event.
NSDictionary *parms = @{kHAParamScore:[NSNumber numberWithInteger:self.score]};
// Report a predefined event.
[HiAnalytics onEvent:kHAEventSubmitScore setParams:parms];
[HToast showMessage:@"Post score success."];
}
- (IBAction)saveBtnClick:(UIButton *)sender {
[self.textField resignFirstResponder];
if (self.textField.text.length<=0) {
[HToast showMessage:@"Please enter your favorite sport."];
return;
}
// TODO: Set users' favorite sport using the setUserProfile API.
[HiAnalytics setUserProfile:@"favor_sport" setValue:self.textField.text];
[HToast showMessage:@"Set user profile success."];
}
- (IBAction)clearCacheBtnClick:(UIButton *)sender {
// TODO: Clear cached data.
[HiAnalytics clearCachedData];
[HToast showMessage:@"Clear cache success."];
}
关于API简介,请参见《HUAWEI Analytics API参考》。
Demo提供了一个将华为分析工具包与应用程序集成的示例。它提供了两个页面(即答题页面和用户属性设置页面),用于演示收集预定义事件和自定义事件。
在开发过程中可以启用调试模式,借助DebugView实时查看事件的记录情况,观察具体结果并根据需要进行调整。
"调试"模式将保持启用状态,直至您通过设置"-HADebugDisabled"参数明确停用"调试"模式。
数据成功上报后,AGC上会展示出数据,如下图:
请在AppDelegate类的.m文件中的application:didFinishLaunchingWithOptions方法中进行初始化,否则可能影响自动采集的生命周期事件的处理,HUAWEI Analytics Kit必须在主线程中初始化。
HUAWEI Analytics Kit使用AAID(匿名应用程序标识符)来识别用户。
在以下情况下,将重置AAID:
Analytics Kit需要网络权限,通过网络将数据上报给AGC服务,但是权限在应用层面设置,无需为Analytics Kit单独设置网络权限。
干得好,您已经成功完成了HUAWEI Analytics Kit的使用,并学到了:
您可以阅读下面链接,了解更多相关的信息。
相关文档
您可以点击下方按钮下载源码。