常见问题
1、SDK 是否需要混淆?
由于 SDK
本身就是开源的, 如果你们没有对 SDK
的核心逻辑做修改,不建议混淆。再加上 SDK
中有部分类和接口会被 H5
中的 JavaScript
调用,如果混淆,这部分代码会被混淆掉。
2、DebugMode 中的 DEBUG_ONLY 与 DEBUG_AND_TRACK 有什么区别?
在 DEBUG_ONLY
模式下,同步数据时,服务端只做校验,不会真正的导入数据。 而在 DEBUG_AND_TRACK
模式下,服务端校验并且会导入数据。
3、事件名称和属性名称,是否可以直接用中文?
event
和 properties
的名称必须是合法的变量名,即不能以数字开头,且只包含:大小写字母、数字、下划线和 $。
事件属性的 value 支持的类型为:String 、Number、JSONArray 、Boolean 、Date 。
4、渠道信息应该放在哪里?
profile
里面的渠道使用用户第一次启动时带上的渠道信息,记录用户是从哪里来的,这样在以后的事件分析里就可以看到不同渠道来的用户的情况。不太建议每个事件中都放入当前渠道,因为在 app
中不像 web
一样渠道更新频繁
5、在发送事件的时候,某些情况下,有的属性值没有,是建议为空还是不带上这个属性?
不带上,或者为null,效果一样的。
6、使用 eclipse 集成时,报 SensorsDataContentProvider 找不到?
eclipse 不能 merge AndroidManifest.xml 文件,需要在 AndroidManifest <application>
标签中下加入以下配置:
7、$title 字段采集不对应 ?
如果没有使用到 ActionBar 可以在 Manifest 中给相应的 Activity 设置 label ,这样 $title 字段采集的内容 就会是你设置的 label 内容。
8、在 Application onCreate 中初始化 SDK 时,调用顺序
9、初始化 SDK 时出现 javax.net.ssl.SSLHandshakeException:Invalid input to toASCII
项目的数据接收地址包含了‘_’,在 https 中报错了
10、fragment 页面浏览事件 $title 的设置
Fragment 页面浏览事件 $title 属性默认与所在 Activity 的 $title 采集规则一致。
在 SDK 2.0.0 及以上的版本可使用 @SensorsDataFragmentTitle 注解设置 Fragment 的 $title 属性的值。
例:
11、神策插件与 SDK 适配版本
神策插件 android-gradle-plugin2 版本与 SDK 适配版本,如下:
插件版本
SDK 版本
1.X
1.X
2.X
2.X
3.X
3.X
12、启动事件与退出事件 session 机制的详细说明
神策 SDK 在 2.0.3 版本加入了 30 秒的 session 机制,用户退出 App 到后台 30 秒的时候,才会触发退出事件, 之后再启动 App,才会触发启动事件,用户如果在 30 秒内打开了 App,那么是没有对应的退出事件与启动事件的。
Last updated
Was this helpful?