# 初始化配置项API

GrowingIO初始化配置项均在AppDelegate.m文件中的didFinishLaunchingWithOptions方法中 SDK 初始化代码块中设置，下面将分类并描述含义。

**代码示例**

```swift
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // Override point for customization after application launch.
    [Growing startWithAccountId:@"0a1b4118dd954ec3bcc69da5138bdb96"];
    //输出调试日志
    [Growing setEnableLog:YES];
    // 设置为 YES, 将启用 HashTag
    [Growing enableHybridHashTag:YES];
    return YES；
}
```

## 基础配置API

<table data-header-hidden><thead><tr><th width="172">API</th><th width="150">默认值</th><th width="150">说明</th><th width="178">无埋点SDK版本支持</th><th>埋点SDK版本支持</th></tr></thead><tbody><tr><td>API</td><td>默认值</td><td>说明</td><td>无埋点SDK版本支持</td><td>埋点SDK版本支持</td></tr><tr><td>startWithAccountId:<em><strong>AccountId</strong></em></td><td>无</td><td>初始化方法，<em><strong>AccountID</strong></em>为项目，默认采样率为100%</td><td>✔️</td><td>✔️</td></tr><tr><td>startWithAccountId:<em><strong>AccountId</strong></em> withSampling:<em><strong>sampling</strong></em></td><td>无</td><td>初始化方法，<em><strong>AccountID</strong></em>为项目id；<em><strong>sampling</strong></em>为采样率</td><td>✔️</td><td>✔️</td></tr><tr><td>handleUrl</td><td>无</td><td>URL Scheme处理方法，通过参数不同区分圈选、MobileDebugger、DeepLink、用户运营预览弹窗等</td><td>✔️</td><td>✔️</td></tr></tbody></table>

## SDK功能API

<table data-header-hidden><thead><tr><th>API</th><th width="150">默认值</th><th>说明</th><th width="150">无埋点SDK版本支持</th><th>埋点SDK版本支持</th></tr></thead><tbody><tr><td>API</td><td>默认值</td><td>说明</td><td>无埋点SDK版本支持</td><td>埋点SDK版本支持</td></tr><tr><td>sdkVersion</td><td>无</td><td>获取当前GrowingIO SDK版本号</td><td>>=2.0.0</td><td>-</td></tr><tr><td>setEnableLog</td><td>YES</td><td>采集日志开关，setEnableLog=YES时，会输出调试日志</td><td>✔️</td><td>✔️</td></tr><tr><td>getEnableLog</td><td>无</td><td>获取采集日志开关的当前状态</td><td>✔️</td><td>✔️</td></tr><tr><td>setTrackerHost</td><td>无</td><td>设置数据收集平台服务器地址；调用需在SDK初始化之前</td><td>✔️</td><td>✔️</td></tr><tr><td>setReportHost</td><td>无</td><td>设置设备报活服务器地址；调用需在SDK初始化之前</td><td>✔️</td><td>✔️</td></tr><tr><td>setDataHost</td><td>无</td><td>设置数据查看平台服务器地址；调用需在SDK初始化之前</td><td>✔️</td><td>✔️</td></tr><tr><td>setGtaHost</td><td>无</td><td>设置数据后台服务器地址；调用需在SDK初始化之前</td><td>✔️</td><td>✔️</td></tr><tr><td>setWsHost</td><td>无</td><td>设置数据后台服务器地址；调用需在SDK初始化之前</td><td>✔️</td><td>✔️</td></tr><tr><td><p>setHybridJSSDK</p><p>UrlPrefix</p></td><td>无</td><td>设置数据后台服务器地址；调用需在SDK初始化之前</td><td>✔️</td><td>-</td></tr><tr><td>setZone</td><td>无</td><td>设置 zone 信息，即时区信息</td><td>✔️</td><td>✔️</td></tr><tr><td>getDeviceId</td><td>无</td><td>获取当前设备 ID</td><td>✔️</td><td>✔️</td></tr><tr><td>getVisitUserId</td><td>无</td><td>获取当前访问用户ID</td><td>✔️</td><td>✔️</td></tr><tr><td>getSessionId</td><td>无</td><td>获取当前访问ID</td><td>✔️</td><td>✔️</td></tr><tr><td>growingAttributesDonotTrackImp</td><td>NO</td><td>设置是否采集view及页面元素的<code>imp</code>事件</td><td>>=2.6.7</td><td>-</td></tr></tbody></table>

## 数据采集发送API

<table data-header-hidden><thead><tr><th width="269">API</th><th width="150">默认值</th><th width="198">说明</th><th width="150">无埋点SDK版本支持</th><th>埋点SDK版本支持</th></tr></thead><tbody><tr><td>API</td><td>默认值</td><td>说明</td><td>无埋点SDK版本支持</td><td>埋点SDK版本支持</td></tr><tr><td>setAspectMode</td><td>无</td><td>设置数据采集模式，有 GrowingAspectModeSubClass 和 GrowingAspectModeDynamicSwizzling 两种；请务必在 main 函数第一行调用</td><td>✔️</td><td>✔️</td></tr><tr><td>setEnableDiagnose</td><td>YES</td><td><p>是否允许发送基本性能诊断信息，默认为开。</p><p>基本性能指发送成功、失败、timeout等信息</p></td><td>✔️</td><td>✔️</td></tr><tr><td>disable</td><td>无</td><td>全局不发送统计信息</td><td>✔️</td><td>✔️</td></tr><tr><td>enableAllWebViews</td><td>YES</td><td>全局设置是否采集 WKWebView 信息</td><td>✔️</td><td>-</td></tr><tr><td>enableHybridHashTag</td><td>YES</td><td>设置是否启用 Hash Tag</td><td>✔️</td><td>-</td></tr><tr><td>isTrackingWebView</td><td>YES</td><td>返回是否全局采集 WKWebView 信息</td><td>✔️</td><td>-</td></tr><tr><td>setImp</td><td>NO</td><td>设置是否发送元素的展现次数（浏览量、曝光量）</td><td>✔️</td><td>-</td></tr><tr><td>setFlushInterval</td><td>15s</td><td>设置发送数据的时间间隔，默认值为15秒；调用需在SDK初始化之前</td><td>✔️</td><td>✔️</td></tr><tr><td>setDailyDataLimit</td><td>10MB</td><td>设置每天使用移动网络上传的数据量的上限（单位是 KB），默认值为 10 MB；调用需在SDK初始化之前</td><td>✔️</td><td>✔️</td></tr><tr><td>getDailyDataLimit</td><td>无</td><td>获取每天使用移动网络（上传的数据量的上限（单位是 KB），默认值为10 MB</td><td>✔️</td><td>✔️</td></tr><tr><td>disableDataCollect</td><td>无</td><td>设置 GDPR 生效</td><td>✔️</td><td>✔️</td></tr><tr><td>enableDataCollect</td><td>无</td><td>设置 GDPR 失效</td><td>✔️</td><td>✔️</td></tr><tr><td>disablePushTrack</td><td>YES</td><td>设置是否采集push推送点击，默认不采集</td><td>✔️</td><td>✔️</td></tr><tr><td>setEnableLocationTrack</td><td>YES</td><td>设置是否采集地理位置的统计信息，默认采集(前提：用户开启相应获取地理位置信息权限)；调用需在SDK初始化之前</td><td>>=2.8.6</td><td>>=2.8.6</td></tr><tr><td>getEnableLocationTrack</td><td>无</td><td>获取是否采集地理位置</td><td>>=2.8.6</td><td>>=2.8.6</td></tr><tr><td>setReadClipBoardEnable</td><td>YES</td><td>设置是否读取剪切板；调用需在SDK初始化之前</td><td>>=2.9.8</td><td>>=2.9.8</td></tr><tr><td>setAsaEnabled</td><td>NO</td><td>设置是否获取 Apple Search Ads 归因数据；调用需在SDK初始化之前</td><td>>=2.9.9</td><td>>=2.9.9</td></tr></tbody></table>

