1.建立App,下载SDK
登录你的帐号后,看到友盟的管理后台,点击"+添加新应用",进入新应用信息填写的页面。 在新应用信息填写中,请尽量填写真实的信息。 App建立成功后,可以获得该App的AppKey,以及最新的开发指南和SDK文件。
*Tips
您可以通过友盟统计分析平台的特性节省重复建立App的时间。如果您要对App不同的发布渠道进行统计,不需要创建新App (具体使用请查看 5.使用多渠道统计),通过多渠道统计,您可以更方便的对比数据。
2.加入XCode工程,实现基本使用
- 导入SDK
- 下载Analytics_iPhone_SDK_1.6.4.zip并解压缩
解压缩之后可以看到如下2个文件: MobClick.h libMobClickLibrary.a我们在编辑SDK时,使用的设置为 Base SDK:iOS 4.2,iOS Depolyment Target: iOS 3.0,因此该版本的SDK支持从iOS 3.0 ~ 4.2的设备使用,在工程中引入友盟统计SDK时,推荐设置Base SDK为最新的iOS SDK最新版(当前最新版为iOS 4.2)
- 导入插件
请在你的工程目录结构中,右键点击Classes文件夹,选择Add->Existing Files...选择这两个文件。或者将这两个文件拖入XCode工程目录结构中,在弹出的界面中选择Copy items into destination group's folder(if needed),并确保Add To Targets中,需要使用友盟统计服务的Target App是处于选中状态。
- 添加依赖框架(Framework)
在你的工程中,右键点击Frameworks,选择Add->Existing Frameworks…,选择SystemConfiguration.framework。 MobClick使用这个框架判断网络状态。
请在你的工程目录结构中,右键点击Classes文件夹,选择Add->Existing Files...选择这两个文件。或者将这两个文件拖入XCode工程目录结构中,在弹出的界面中选择Copy items into destination group's folder(if needed),并确保Add To Targets中,需要使用友盟统计服务的App是处于选中状态。
- 下载Analytics_iPhone_SDK_1.6.4.zip并解压缩
- 嵌入代码
- 在*AppDelegate.h(文件)(*代表你的工程名字)中 (添加)#import "MobClick.h", 并添加MobClickDelegate协议,(添加后*AppDelegate类的)结构类似这样:
123
@interface
NewsReaderAppDelegate :
NSObject
<UIApplicationDelegate,MobClickDelegate>{
...
}
- 打开*AppDelegate.m(*代表你的工程名字),添加如下语句
123
- (
NSString
*)appKey{
return
@
"YourAppKey"
;
}
- 在- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 方法内添加如下语句:
123
[MobClick setDelegate:
self
];
[MobClick appLaunched];
1[MobClick setDelegate:
self
];
1[MobClick setDelegate:
self
reportPolicy:REALTIME];
(使用建议,建议使用BATCH形式,减少App与网络的交互,为用户节约流量)
- 在- (void)applicationWillTerminate:(UIApplication *)application方法中添加如下语句:
1[MobClick appTerminated];
- 从iOS4(以)上的(系统都开始支持多任务,导致App的生命周期变化,所以我们需要去修改一下[MobClick appLaunched];[MobClick appTerminated];的添加位置。每次App进入前台和App进入后台任务算是用户的一个完整的使用过程,所以我们只需要在下列位置添加相应代码即可。
123456- (
void
)applicationWillResignActive:(UIApplication *)application {
[MobClick appTerminated];
}- (
void
)applicationWillEnterForeground:(UIApplication *)application {
[MobClick setDelegate:
self
];
[MobClick appLaunched];
}
- 在*AppDelegate.h(文件)(*代表你的工程名字)中 (添加)#import "MobClick.h", 并添加MobClickDelegate协议,(添加后*AppDelegate类的)结构类似这样:
3.使用自定义事件
使用自定义事件功能请先在网站应用管理后台(设置->编辑自定义事件)中添加相应的自定义事件后,服务器才会对相应的自定义事件请求进行处理。这里我们将提供几个简单而通用的接口:
1、简单事件
1
|
+ (
void
)event:(
NSString
*)event_id;
|
一个例子,监测应用程序里广告的点击次数,事件ID为“ad_click”。那么需要在程序里每次广告点击后调用 [MobClick event:@"ad_click"]; 通知服务器一个广告点击事件。
简单事件分析图表示例
2、多标签事件
1
|
+ (
void
)event:(
NSString
*)event_id label:(
NSString
*)label;
|
例如:在应用程序“星座罗盘”中,定义了一个事件的ID为“Constellation”,这个ID对应的名称可以在友盟的管理后台里添加该事件ID并修 改名称为:星座关注分布,每个星座对应这个事件的一个事件标签,我们可以在生成的统计图表中看到用户关注不同星座的比例,如下图所示。
1
|
[MobClick event:[
NSString
stringWithFormat:@
"Constellation"
] label:astroName];
//astroName是变量,表示星座的名称
|
多标签事件分析图表示例
3、事件累计
在应用程序中某些自定义事件可能会被频繁触发,例如用户点击某个按钮。开发者可以在程序中维护一个计数器,这样某个事件被多次触发但只需要生成一个消息,这个消息中包括该事件被触发的次数。为了支持这个功能,这里我们定义了两个新接口:
1
2
|
+ (
void
)event:(
NSString
*)event_id acc:(
NSInteger
)acc;
+ (
void
)event:(
NSString
*)event_id label:(
NSString
*)label acc:(
NSInteger
)acc;
|
参数acc是对应事件 (和对应标签)被触发的次数。
4.使用用户反馈
在程序中通过
1
|
[MobClick showFeedback:viewController];
|
方法进行调用,其中传入的参数请确保viewController非空。
5.使用多渠道统计
当你选择多种程序分发渠道时,例如某Cydia源,或某网站,可以为不同渠道(提供不同)的软件包进行分发渠道的设定,以便统计终端用户得到程序的来源。 如果您只有 App Store一个分发渠道,则不再需要做设定,我们会默认标记为App Store。 请将下面代码添加到AppDelegate.m文件中。
1
|
- (
NSString
*)channelId{
return
@
"来源名称"
;}
|