SDK会话分析模块提供了视频回放功能,您可以根据需求开启使用视频回放功能,具体步骤如下:

1. 引入视频插件库及SDK

若在「SDK部署」时已引入,则可以跳过该步骤

  • iOS

您可以通过在项目工程的 Podfile 文件中添加pod 'NBSReplayKit',然后执行pod install命令来引入插件库和 SDK。

  • Android

您可以通过 maven 仓库的方式来引入 2.17.4 及以上版本的 Android SDK,引入步骤见部署文档

2. 开启视频回放

您可以在平台「用户旅程」- 「设置」中开启「旅程回溯」开关并根据需要配置相应屏幕录制 config 信息,同时在项目工程中调用startVideoReplay 接口来开启屏幕录制。

注:需要平台「旅程回溯」开启且调用 `startVideoReplay` 接口,SDK才会开始进行屏幕录制。开启屏幕录制功能后 SDK 的性能消耗会增加。

3. 配置隐私策略

视频回放功能是对设备屏幕进行截图,所以会涉及到敏感信息问题;您可以通过调用 SDK 接口来对敏感信息进行遮罩处理「SDK 默认对密码输入框进行遮罩」。SDK提供「暂停录制」和「敏感信息遮罩」两种处理敏感信息方式。

SDK 敏感信息遮罩接口见 iOS接口Android接口

  • 暂停录制

若您不想对包含敏感信息的页面进行屏幕录制时,可以在进入到相应页面前调用pauseVideoReplay 接口暂停屏幕录制,待离开敏感信息页面后在调用resumeVideoReplay 接口来恢复屏幕录制。

  • 敏感信息遮罩

SDK 支持对控件、输入框、文本、图像、区域、页面、类进行定制化遮罩。

1. 遮罩所有输入框、文本、图像

若您想对所有输入框、文本、图像进行遮罩时,可以在平台「用户旅程」-「设置」-「UI遮罩」中将「遮罩输入框」、「遮罩文本」、「遮罩图像」开关开启,SDK 获取到该配置后会对其进行遮罩。

2. 遮罩指定区域

若您想对某页面的某个敏感区域进行遮罩,可以调用 maskSensitiveRegion 接口,传入敏感区域进行遮罩;由于遮罩区域接口整个会话内都会生效,所以为了避免遮罩其他页面相应区域,您可以在离开需要遮罩敏感区域的页面时调用 unmaskSensitiveRegion 来取消遮罩区域。

3. 遮罩指定页面

若您想要对指定页面进行遮罩时,可以在平台「用户旅程」-「设置」-「UI遮罩」-「遮罩指定页面」中配置对应页面名称,SDK 获取到配置后会对其进行遮罩;亦或者您可以通过调用 maskScreens 接口,传入页面名称进行遮罩。若平台和接口同时配置遮罩 viewId ,那么该配置为追加处理。

页面名称:iOS 填入 ViewController 名称;Android 填入 Activity 名称。

4. 遮罩指定控件

若您想要对指定控件进行遮罩时,可以在平台「用户旅程」-「设置」-「UI遮罩」-「遮罩指定控件ID」中配置对应控件ID,SDK 获取到配置后会对其进行遮罩;亦或者您可以通过调用 maskViewId 接口,传入 viewId 进行遮罩。若平台和接口同时配置遮罩 viewId ,那么该配置为追加处理。

viewId:iOS 填入控件 accessibilityIdentifier 属性的值;Android 填入 NBSAppAgent.setViewId 设置的 viewId。

5. 遮罩指定类

若您想要对指定的类进行遮罩时,可以通过调用 maskClasses 接口,传入对应类名进行遮罩;传入父类时,父类和子类都会进行遮罩。

指定类可以为包含敏感信息的自定义view。

性能消耗

开启屏幕录制后,性能消耗如下:

性能指标 性能消耗
CPU CPU增加约 5%
内存 内存增加约 10MB
流量 20张图片流量增加约 132KB「极低质量」、208KB「低质量」、386 KB「高质量」
© 2007-2024 北京基调网络股份有限公司 all right reserved,powered by Gitbook本文档更新于: 2023-12-18 17:49

results matching ""

    No results matching ""