基于Android的移动应用数据采集组件的设计与实现
【摘要】:随着移动互联网的高速发展以及移动终端设备的爆发性增长,移动应用数量也呈爆发性增长的态势,苹果市场、谷歌市场以及其他应用分发渠道已经累计上百万的应用。想要在海量应用中获取一席之地,收集移动终端的用户数据并进行分析必不可少。而中小企业及个人开发者独自开发一套移动统计平台耗费的成本过高,选择第三方平台是一种效率最高成本最低的一种方式。
针对于目前第三方平台存在的数据安全性较低、网络传输效率不高、传输流量偏大、设置数据自由度不大等问题,本文阐述了移动应用数据采集组件的设计与实现,具体包括五方面的功能如下:
(1)数据采集模块,设计了一种新的架构用于统计数据。统计的数据包括设备相关数据,应用相关数据以及自定义事件
(2)数据加密功能,通过AES经典对称加密算法对数据内容加密,在存储到本地和数据发送之前就对内容加密,保证数据存储和数据传输的数据安全性;
(3)数据存储功能,通过Android的Shared Preference接口实现对采集数据的存储,并优化调用方式,保证数据存储的高效型和稳定性;设计实时缓存以及非实时缓存两种策略解决了在网络不通状态下数据丢失的问题,保证采集组件的可靠性和稳定性;
(4)网络传输功能,使用HTTP协议以及POST方法来传输数据,在保证安全性的前提下,保证了高效性;使用Protocol Buffers大大降低了数据流量的传输,提高了传输及解析的效率;
(5)云端控制功能,通过设计并实现了PUSH和PULL两种方式实现了设置数据的云端动态更改,提高组件的灵活性。
本文最后通过Android真机系统的多项功能以及性能测试,验证了各个模块的功能以及性能均符合设计需求及预期效率。