菜单

数据存储与上报

概述

为保证数据采集的可靠性和设备性能优化,GravityEngine SDK 在 iOS 平台​上采用"先存储,后上报"的策略。所有事件触发后首先在本地持久化存储,待服务器确认上报成功后方才删除对应的本地数据。

上报触发条件

1. 网络类型控制

您可以根据业务需求设置数据上报的网络环境:
Objective-C
[[GravityEngineSDK sharedInstance] setNetworkType:GENetworkTypeALL];
Swift
[instance setNetworkType:GENetworkTypeALL];
可选配置:
  • GENetworkTypeALL/GENetworkTypeDefault:所有网络类型(移动网络、WiFi)下均上报
  • GENetworkTypeOnlyWIFI:仅在WiFi网络环境下上报(不推荐开启,可能会导致事件上报延迟或漏报

2. 手动立即上报

支持主动触发数据上报,适用于需要确保数据及时上报的场景:
Objective-C
[instance flush];

3. 关键事件触发上报

当以下重要业务事件发生时,SDK会自动触发全量数据上报:
应用生命周期事件:
  • 应用启动($AppStart
  • 应用进入后台($AppEnd
核心业务事件:
  • 付费事件($PayEvent
  • 用户提现($UserWithdraw
  • 广告展示($AdShow
  • 用户注册($AppRegister

4. 缓存数量触发上报

为防止本地数据积压,SDK会在缓存事件达到30条时自动触发上报:
上报限制:​ 单次API请求最多上传50条事件,超出的数据会自动分批上报。

5. 定时触发上报

每30秒自动检查一次,如存在缓存数据立即触发上报


数据存储管理

存储容量配置

SDK提供灵活的存储空间管理机制,防止本地数据过度占用设备存储。

默认配置

  • 最大存储事件数:10,000条
  • 最低保障存储:5,000条(防止设置过小影响数据可靠性)
存储清理策略:
当数据量超过上限时,系统会自动清理最早的100条历史数据。

自定义配置

注意:如设置值低于5,000,系统将自动调整为5000以保证基本功能

info.plist文件中配置:
<key>GEConfigInfo</key>
	<dict>
		<key>maxNumEvents</key>
		<string>1000</string>
	</dict>

数据有效期管理

为确保数据时效性,SDK会定期清理过期数据。

默认配置

  • 数据有效期:10天
  • 清理时机:每次应用启动时自动检测并清理

自定义配置

有效期设置范围:0-10天,超出范围的设置将自动调整为10天

info.plist文件中配置:
<key>GEConfigInfo</key>
	<dict>
		<key>expirationDays</key>
		<string>10</string>
	</dict>
 
上一个
绑定三方平台
下一个
时间校准
最近修改: 2025-11-13Powered by