sendInstancePropertiesGet method
Future<ReturnParams>
sendInstancePropertiesGet(
- dynamic instanceOrId,
- String serviceName,
- dynamic nativeClass
override
Warning: IOS暂不支持正向调用,sendInstancePropertiesGet和member set之间未做强制同步,只能依赖于消息顺序。
场景1: newInstance 之后不能立即调用 sendInstancePropertiesGet。IOS Member Set 和 sendInstancePropertiesGet在时序上属于异步
场景1例子:
$p.UserInfo userInfo = $p.UserInfo(extraInfo: "111", uid: "111");
print("YEMOMO TEST: ${await (userInfo.$instance as $p_i.ByteRTCUserInfo).sendInstancePropertiesGet(userInfo.$instance)}");
Implementation
@override
Future<ReturnParams> sendInstancePropertiesGet(
dynamic instanceOrId,
String serviceName,
dynamic nativeClass,
) async {
try {
final params = CallParams(
callType: CallType.instancePropertiesGet,
serviceName: serviceName,
instanceId: instanceOrId is String
? instanceOrId
: proto.encodeArg(instanceOrId)['_instanceId'],
);
await nativeClass.ready;
return await _bridge.callApi(params);
} catch (e) {
logger.error('[message-sender] Properties get failed:', [e]);
rethrow;
}
}