createWithAreaCode method
创建 RtcEngine 实例。
RtcEngine 类的所有接口函数,如无特殊说明,都是异步调用,对接口的调用建议在同一个线程进行。
Note
- 请确保在调用其他 API 前先调用该方法创建并初始化 RtcEngine。
- 调用该方法和 create 均能创建 RtcEngine 实例。
- 该方法与 create 的区别在于,createWithAreaCode 支持在创建 RtcEngine 实例时指定访问区域。
- 目前 Agora Flutter SDK 只支持每个 app 创建一个 RtcEngine 实例。
Parameter appId
Agora 为 app 开发者签发的 App ID,详见获取 App ID。
使用同一个 App ID 的 app 才能进入同一个频道进行通话或直播。一个 App ID 只能用于创建一个 RtcEngine。
如需更换 App ID,必须先调用 destroy 销毁当前 RtcEngine,再调用 create
重新创建 RtcEngine。
Parameter areaCode
服务器的访问区域。该功能为高级设置,适用于有访问安全限制的场景。
支持的区域详见 AreaCode
。
指定访问区域后,集成了 Agora SDK 的 app 会连接指定区域内的 Agora 服务器。
Returns
- 方法调用成功,则返回一个 RtcEngine 对象。
- 方法调用失败,则返回错误码。
Implementation
static Future<RtcEngine> createWithAreaCode(
String appId, AreaCode areaCode) async {
if (_engine != null) return _engine;
await _methodChannel.invokeMethod('create', {
'appId': appId,
'areaCode': AreaCodeConverter(areaCode).value(),
'appType': 4
});
_engine = RtcEngine._();
return _engine;
}