从这个app开始用上了swift,最近又集成了友盟统计功能,根据友盟的文档一步一步来整体比较顺利,但是中间也遇到了收集不到错误信息和页面统计信息的问题,自定义事件和账号统计都正常,文中会分析问题原因并解决问题
一、在友盟后台创建应用
- 进入友盟官网http://www.umeng.com/analytics登录账号
- 点击 "产品" -> "移动统计(U-App)" -> "进入新版"
- "添加新应用" 填写应用名,选择平台选择语言和应用类型等信息
-
点击完成获取appKey
二、集成友盟基础统计
- 使用
cocoapods
输入pod 'UMengAnalytics-NO-IDFA'
- 代码中输入
在桥接文件中输入头文件#import <UMMobClick/MobClick.h> //友盟统计
然后在appdelegate的didFinishLaunchingWithOptions
方法中输入
let config = UMAnalyticsConfig.sharedInstance()
config?.appKey = "你的appkey"
config?.channelId = "统计平台" //enterprise App Store
MobClick.start(withConfigure: config)
- 统计不同的版本
let version = Bundle.main.infoDictionary?["CFBundleShortVersionString"] as! String
MobClick.setAppVersion(version)
- 运行app到手机或者模拟器就可以在友盟后台看到概况中的数据
三、集成友盟页面统计
在要统计的页面的viewWillAppear
和viewWillDisappear
方法中分别加入MobClick.beginLogPageView("页面标识")
和MobClick.endLogPageView("页面标识")
运行app进入该页面就可以看到统计数据(如果没有数据很有可能是因为没有导入libz.dylib下面会说到)
四、集成友盟自定义事件
-
在友盟添加自定义事件
然后点击添加事件,选择手工添加
输入事件ID和事件描述
- 在代码中输入
MobClick.event("事件ID")
,注意事件ID一定要一致 -
运行app然后稍等一会儿就可以看到数据了
五、遇到的问题
集成之后有的数据是需要第二天才能看到数据的,但是如果工程中没有导入libz.dylib包也是收集不到的,而swift默认不包括dylib了,所以我们需要 add other,直接上图
发现导入的是libz.1.dylib而不是libz.dylib,大概原因就是libz.dylib是一个快捷方式,指向的就是libz.1.dylib,到此基础功能集成完毕,友盟很强大,还有很多功能还要继续研究,比如非常有用的崩溃数据收集并分析等,与君共勉