实时音视频
  • iOS
  • Android : Java
  • macOS
  • Windows
  • HarmonyOS
  • Linux
  • Web
  • 小程序
  • Flutter
  • Electron
  • Unreal Engine
  • Unity3D
  • uni-app
  • React Native
  • Cocos Creator
  • 产品简介
  • 下载
  • 体验 App
  • 快速开始
    • 跑通示例源码
    • 集成 SDK
    • 实现视频通话
    • 场景化音视频配置
  • 通信能力
  • 房间能力
  • 音频能力
  • 视频能力
  • 直播能力
  • 其他能力
  • 最佳实践
  • 客户端 API
  • 服务端 API
  • 常见错误码
  • 常见问题
  • 文档中心
  • 实时音视频
  • 通信能力
  • 地理围栏

地理围栏

更新时间:2024-01-02 18:48

功能简介

地理围栏指将音视频及信令数据传输限定在某一区域,用以满足地区数据隐私安全相关法规,即限定访问某一特定区域的音视频服务。例如,当指定的地理围栏区域为欧洲时,不区分 App 用户所在区域,SDK 实际访问的区域将为欧洲。

指定的地理围栏区域 App 用户所在区域 SDK 实际访问的区域 连接后的用户体验
欧洲
欧洲
欧洲
正常
欧洲
中国
欧洲
可能受到较大影响
  • 如果指定地理围栏区域的服务器都不可用,SDK 会直接报错。
  • 由于指定地理围栏区域与 App 用户所在区域之间存在跨区域公共互联网,公共互联网网络质量较差会导致音视频体验受到影响。

/Pics/Express/Geofencing_pic.jpeg

当前 SDK 支持配置地区如下:

如需支持更多区域,请联系 ZEGO 技术支持。

地区 枚举
中国大陆,不包含港澳台 CN
北美 NA
印度 IN
欧洲 EU
亚洲,不包括中国大陆和印度 AS

前提条件

在使用地理围栏功能之前,请确保:

实现流程

1 开通地理围栏权限

地理围栏能力在某些情况下需要进行收费,请联系 ZEGO 商务确认并开通地理围栏权限。

2 设置地理围栏

  • 地理围栏信息:包括地理围栏类型和地理围栏区域列表。
  • 地理围栏类型:包括联合(Include)和排除(Exclude)两种类型,地理围栏类型将作用于地理围栏区域列表。
    • 联合:表示区域列表内的所有区域都包含在地理围栏内。
    • 排除:表示区域列表内容所有区域都排除在地理围栏外。

在创建 SDK 之前,调用 setGeoFence 接口,设置地理围栏信息。

请在调用 createEngine 之前配置地理围栏信息,否则无效。

// 设置联合模式的示例
ZegoGeoFenceType geofence_type = ZegoGeoFenceType.INCLUDE;//设置联合模式
List<Integer> geofence_area_list = new ArrayList<>(); // 设置区域列表信息,最少设置 1 个,最多设置不得大于 SDK 所支持个数
geofence_area_list.add(2);// ZegoGeoFenceAreaCode.CN
geofence_area_list.add(3);// ZegoGeoFenceAreaCode.NA
ZegoExpressEngine.setGeoFence(geofence_type, geofence_area_list);// 这个接口是静态方法,在 createEngine 之前调用

// 设置排除模式的示例
ZegoGeoFenceType geofence_type = ZegoGeoFenceType.EXCLUDE;//设置排除模式
List<Integer> geofence_area_list = new ArrayList<>();// 设置区域列表信息,最少设置 1 个,最多设置不得大于等于 SDK 所支持个数
geofence_area_list.add(2);// ZegoGeoFenceAreaCode.CN
geofence_area_list.add(3);// ZegoGeoFenceAreaCode.NA
ZegoExpressEngine.setGeoFence(geofence_type, geofence_area_list);// 这个接口是静态方法,在 createEngine 之前调用

3 其他功能接入

完成地理围栏设置后,即可进行其他功能接入。

本篇目录