新書推薦:
《
传播的跃迁:人工智能如何革新人类的交流
》
售價:NT$
505.0
《
纯粹·古代中国的历史与制度
》
售價:NT$
286.0
《
生活来来往往 别等来日方长 新版(伍佰:“讲好了这一辈子,再度重相逢。”别等,别遗憾!珍惜当下才是最好的解药)
》
售價:NT$
265.0
《
一个英国军事顾问眼中的二战
》
售價:NT$
1265.0
《
就业、利息和货币通论(徐毓枬译本)(经济学名著译丛)
》
售價:NT$
306.0
《
瘦肝
》
售價:NT$
454.0
《
股票大作手回忆录
》
售價:NT$
254.0
《
秩序四千年:人类如何运用法律缔造文明
》
售價:NT$
704.0
|
編輯推薦: |
(1)神策数据官方出品,神策在全埋点和用户行为数据分析领域是国内的领头羊企业。
(2)本书是作者和神策数据团队在服务了1000余家企业客户后的经验总结。
(3)作者是神策数据合肥研发中心的负责人,有10年的Android和iOS开发经验,开发和维护着国内*个商用的开源 Android & iOS 数据埋点 SDK。
(4)本书不仅系统讲解了iOS系统本身的埋点技术和解决方案,而且还讲解了基于i
OS的用户标识、时间相关、数据存储、数据同步、采集崩溃、App与 H5 打通、App Extension ReactNative等场景的全埋点技术和解决方案
|
內容簡介: |
本书从实战角度全面讲解了iOS全埋点技术和解决方案,为基于iOS系统的各种数据采集场景提供详尽的指导。
本书由神策数据官方出品,总结了他们过去为1000余家企业客户提供服务的实践经验。执笔人是神策数据合肥研发中心负责人,在Android&iOS等领域有10年的研发经验,对各种数据采集技术和解决方案都有深入研究,开发和维护着国内*个商用的开源 Android & iOS 数据埋点 SDK。
全书一共14章:
第1~2章介绍了数据采集SDK框架的搭建,以及应用程序的退出和启动,这是实现iOS全埋点的基础;
第3~6章依次详细讲解了页面浏览事件、控件点击事件、UITableView和UICollection View点击事件、手势采集等场景的全埋点技术和解决方案;
第7~14章分别讲解了用户标识、时间相关、数据存储、数据同步、采集崩溃、App与 H5 打通、App Extension ReactNative等场景的全埋点技术和解决方案。
所有的解决方案都提供了完整的项目源代码,具有极强的实操性。
|
關於作者: |
王灼洲
资深移动开发技术专家,目前就职于神策网络科技(北京)有限公司,担任合肥研发中心负责人,是公司最早的核心骨干。
有10年的Android&iOS开发经验,是国内第一批Android研发工程师。对基于Android和iOS系统的各种客户端和服务端的数据采集技术和解决方案都有深入研究,开发和维护着国内第一个商用的开源 Android & iOS 数据埋点 SDK。
著有《Android全埋点解决方案》一书,在行业里引起了巨大的反响。
|
目錄:
|
推荐序
前言
第1章 数据采集SDK1
1.1 数据采集SDK简介1
1.2 搭建SDK框架3
1.2.1 新建Cocoa Touch Framework3
1.2.2 新建Workspace4
1.2.3 新建Demo工程7
1.2.4 添加依赖关系10
1.2.5 编写埋点SDK10
1.2.6 Demo集成埋点SDK18
第2章 应用程序退出和启动20
2.1 全埋点简介20
2.2 应用程序退出21
2.2.1 应用程序状态21
2.2.2 实现步骤22
2.3 应用程序启动24
2.3.1 实现步骤24
2.3.2 优化26
2.4 被动启动28
2.4.1 Background Modes29
2.4.2 实现步骤30
2.4.3 优化33
第3章 页面浏览事件36
3.1 UIViewController 生命周期36
3.2 Method Swizzling37
3.2.1 Method Swizzling基础37
3.2.2 实现Method Swizzling的相关函数39
3.2.3 实现Method Swizzling40
3.3 实现页面浏览事件全埋点42
3.3.1 实现步骤42
3.3.2 优化45
3.3.3 扩展48
3.3.4 遗留问题52
第4章 控件点击事件53
4.1 Target-Action53
4.2 方案一54
4.2.1 实现步骤55
4.2.2 优化$AppClick事件57
4.2.3 支持更多控件65
4.3 方案二70
4.3.1 实现步骤70
4.3.2 支持更多控件75
4.4 方案总结78
第5章 UITableView和UICollection-View点击事件80
5.1 支持UITableView控件80
5.1.1 方案一:方法交换80
5.1.2 方案二:动态子类86
5.1.3 方案三:消息转发93
5.1.4 三种方案的总结102
5.1.5 优化103
5.2 支持UICollectionView控件107
第6章 手势采集112
6.1 手势识别器112
6.2 手势全埋点114
6.2.1 UITapGestureRecognizer全埋点114
6.2.2 UILongPressGestureRecognizer全埋点118
第7章 用户标识121
7.1 登录之前122
7.1.1 UDID122
7.1.2 UUID125
7.1.3 MAC地址126
7.1.4 IDFA128
7.1.5 IDFV129
7.1.6 IMEI130
7.1.7 最佳实践130
7.2 登录之后140
第8章 时间相关144
8.1 事件发生的时间戳145
8.2 统计事件持续时长147
8.2.1 实现步骤147
8.2.2 事件的暂停和恢复152
8.2.3 后台状态下的事件时长155
8.3 全埋点事件时长158
8.3.1 $AppEnd事件时长158
8.3.2 $AppViewScreen 事件时长160
第9章 数据存储162
9.1 数据存储策略162
9.1.1 沙盒163
9.1.2 数据缓存165
9.2 文件缓存166
9.2.1 实现步骤166
9.2.2 优化174
9.2.3 总结179
9.3 数据库缓存179
9.3.1 实现步骤179
9.3.2 优化190
9.3.3 总结197
第10章 数据同步198
10.1 同步数据198
10.1.1 Foundation简介198
10.1.2 同步数据202
10.2 数据同步策略212
10.2.1 基本原则212
10.2.2 策略一214
10.2.3 策略二215
10.2.4 策略三220
第11章 采集崩溃223
11.1 NSException异常223
11.1.1 捕获NSException 异常224
11.1.2 传递UncaughtException-Handler227
11.2 捕获信号229
11.2.1 Mach 异常和Unix 信号230
11.2.2 捕获Unix信号异常231
11.3 采集应用程序异常时的$AppEnd事件235
第12章 App与H5打通238
12.1 App与H5打通原因238
12.2 方案一:拦截请求239
12.2.1 修改UserAgent239
12.2.2 是否拦截243
12.2.3 二次加工H5事件244
12.2.4 拦截246
12.2.5 测试验证247
12.3 方案二:JavaScript与WebView相互调用255
第13章 App Extension259
13.1 App Extension介绍259
13.1.1 App Extension类型259
13.1.2 App Extension 生命周期261
13.1.3 App Extension通信261
13.1.4 App Extension示例262
13.2 App Extension埋点270
第14章 React Native全埋点283
14.1 React Native 简介283
14.1.1 创建项目283
14.1.2 基础控件286
14.2 React Native全埋点293
14.2.1 事件响应293
14.2.2 $AppClick 事件295
|
內容試閱:
|
为何写作本书?
随着大数据行业的快速发展,数据采集也变得越来越重要。国内企业对全埋点技术需求迫切,但是这方面的学习资源一直比较缺乏。目前,国内外还没有系统讲解iOS全埋点技术的专著。同时,行业里存在对全埋点概念过度包装的现象,希望本书能够揭开iOS全埋点技术的神秘面纱,给企业带来价值,推动更多开发者参与大数据行业生态建设。
自第一本书《Android全埋点解决方案》出版以来,我收到了许多读者朋友的反馈,有的与我分享他们的阅读感悟,有的与我探讨具体的技术问题,有的说这本书改变了他们的职业生涯,也有人给我邮寄了锦旗不仅收获了好的口碑,而且获得了不错的销售成绩。这一切让我感觉到,这些年在埋点技术道路上付出的所有艰辛和努力都是值得的。
我目前就职于神策数据,是神策数据合肥研发中心负责人。神策数据是一家以重构中国互联网数据根基为愿景的公司,十分重视基础数据的采集与建模。神策数据的采集技术一直在不断革新,包括 Android SDK、iOS SDK、Web JS SDK 、C SDK、C# SDK、Java SDK、Python SDK、PHP SDK、Ruby SDK、Golang SDK、Node SDK、APICloud SDK等。神策数据愿意将一些成熟的技术与国内外开发者交流与共享,并已于2019年1月正式成立供 IT 开发者分享、使用与交流技术的开源社区神策数据开源社区(Sensors Data Open Source)。开源社区一方面能够帮助我们更好地服务客户,推动企业的数字化转型;另一方面能够造福同行,推动数据行业生态建设。同时,我们也期待在开源社区(http:opensource.sensorsdata.cn)能够就数据采集相关技术与读者有更多的交流和共享。
本书读者对象
本书适合各水平层次的iOS开发工程师、系统工程师、架构师,以及项目经理和技术经理等阅读。
本书内容特色
1.内容稀缺
数据埋点技术在互联网领域尤其是移动端使用非常普遍,全埋点被誉为最全、最便捷、界面友好、技术门槛低的数据采集方式。关注该技术的企业很多,但是图书市场目前还是空白。
2.实战经验总结
作者从事移动开发近10年,开发和维护着国内第一个商用的开源Android & iOS数据埋点SDK,在神策数据深度服务超过1000家企业客户,有比较丰富的技术沉淀与经验积累这些都毫无保留地写在了本书中。
3.理论与实操并重
本书全面、系统地讲解了基于iOS平台的数据埋点技术和解决方案,包括iOS应用程序启动和退出、页面浏览、控件点击、手势等全埋点的实现原理,并且都提供了完整的项目源码,具有极强的理论性和实操性。
如何阅读本书
本书系统地讲解了iOS全埋点的解决方案,同时涵盖了用户标识、时间相关、数据存储、数据同步、采集崩溃、App与H5打通、React Native全埋点等内容,建议大家按照书中的章节顺序阅读,由浅入深、循序渐进。
此外,本书还提供了完整的项目源码,建议一边阅读,一边实操。
勘误和支持
由于作者水平有限,且编写时间仓促,同时技术也在不断更新和迭代,书中难免会出现一些错误或者表述不准确的地方,恳请读者朋友批评和指正。
本书附赠源码的获取方式:关注微信公众号华章计算机,回复65362即可。
更多关于华章图书的信息和活动福利,请关注华章的官方新浪微博华章图书。
致谢
感谢神策数据的创始人桑文锋、曹犟、付力力、刘耀洲等在工作中的指导和帮助,感谢神策数据开源社区中每一位充满活力和共享精神的朋友们。
感谢机械工业出版社华章公司的编辑杨福川老师,在半年多的时间里始终支持我的写作,鼓励、帮助、引导我顺利完成全部书稿。同时,也非常感谢神策数据iOS工程师张敏超辅助完成本书写作。
谨以此书献给大数据行业的关注者和建设者!
王灼洲
2020年2月
|
|