添加新交互
This commit is contained in:
@@ -84,6 +84,8 @@ enum ToFlutterAppEnum {
|
||||
enterRoom('enterRoom'),
|
||||
// 进入我的房间(创建房间)
|
||||
createMyRoom('createMyRoom'),
|
||||
// 发泼水节胜利消息
|
||||
sendWaterFestVictoryMessage('sendWaterFestVictoryMessage'),
|
||||
|
||||
///通用交互 别往这下面加,👆🏻加
|
||||
commonInteraction('commonInteraction'),
|
||||
@@ -130,9 +132,9 @@ enum WebInteractionType {
|
||||
final String code; //服务端 key
|
||||
|
||||
factory WebInteractionType.fromCode(String? code) => values.firstWhere(
|
||||
(element) => element.code == code,
|
||||
orElse: () => WebInteractionType.unknown,
|
||||
);
|
||||
(element) => element.code == code,
|
||||
orElse: () => WebInteractionType.unknown,
|
||||
);
|
||||
}
|
||||
|
||||
// 原生交互通知 h5 {type:'enum',data:'所需参数 '}
|
||||
@@ -147,7 +149,6 @@ enum FromFlutterAppEnum {
|
||||
// 动态发布成功
|
||||
publishDynamicSuccess("publishDynamicSuccess"),
|
||||
|
||||
|
||||
defaultCode('');
|
||||
|
||||
const FromFlutterAppEnum(this.code);
|
||||
@@ -269,7 +270,7 @@ class FlutterBridge {
|
||||
print("All listeners for '$type' have been removed.");
|
||||
}
|
||||
}
|
||||
// =========================================================
|
||||
// =========================================================
|
||||
// 👇 🆕 [新增] 核心通用请求方法 (替代了旧的 requestTranslate)
|
||||
// =========================================================
|
||||
|
||||
@@ -292,11 +293,9 @@ class FlutterBridge {
|
||||
}
|
||||
|
||||
// 2. 入队
|
||||
_requestQueues[responseKey]!.add(_RequestTask(
|
||||
sendType.code,
|
||||
params,
|
||||
onSuccess,
|
||||
));
|
||||
_requestQueues[responseKey]!.add(
|
||||
_RequestTask(sendType.code, params, onSuccess),
|
||||
);
|
||||
|
||||
// 3. 调度执行
|
||||
_processRequestQueue(responseKey);
|
||||
@@ -381,36 +380,34 @@ class FlutterBridge {
|
||||
void toRecharge() => sendToFlutter(ToFlutterAppEnum.toRecharge.code, {});
|
||||
void toRedDiamond() => sendToFlutter(ToFlutterAppEnum.toRedDiamond.code, {});
|
||||
void jumpToH5(String path, String title) => sendToFlutter(
|
||||
ToFlutterAppEnum.jumpToH5.code,
|
||||
{'path': path, 'title': title},
|
||||
);
|
||||
ToFlutterAppEnum.jumpToH5.code,
|
||||
{'path': path, 'title': title},
|
||||
);
|
||||
void toHomepage(String userId) =>
|
||||
sendToFlutter(ToFlutterAppEnum.toHomepage.code, {'userId': userId});
|
||||
void toMonthCardPay(
|
||||
String googleProductId,
|
||||
String iosProductId, {
|
||||
otherUserId = '',
|
||||
}) =>
|
||||
sendToFlutter(ToFlutterAppEnum.toMonthCardPay.code, {
|
||||
'googleProductId': googleProductId,
|
||||
'iosProductId': iosProductId,
|
||||
'otherUserId': otherUserId,
|
||||
});
|
||||
}) => sendToFlutter(ToFlutterAppEnum.toMonthCardPay.code, {
|
||||
'googleProductId': googleProductId,
|
||||
'iosProductId': iosProductId,
|
||||
'otherUserId': otherUserId,
|
||||
});
|
||||
void checkGameState(String gameCode) => sendToFlutter(
|
||||
ToFlutterAppEnum.checkGameState.code,
|
||||
{'gameCode': gameCode},
|
||||
);
|
||||
ToFlutterAppEnum.checkGameState.code,
|
||||
{'gameCode': gameCode},
|
||||
);
|
||||
|
||||
void share({
|
||||
required String activityId, // 活动id
|
||||
required bool needShareReport, // 是否需要上报分享数据
|
||||
ShareCardModel? shareCardModel, // 分享上方卡片 数据,参考客户端参数
|
||||
}) =>
|
||||
sendToFlutter(ToFlutterAppEnum.share.code, {
|
||||
"activityId": activityId,
|
||||
"shareReportKey": needShareReport ? "ActivityShared" : "",
|
||||
...shareCardModel?.toJson() ?? {},
|
||||
});
|
||||
}) => sendToFlutter(ToFlutterAppEnum.share.code, {
|
||||
"activityId": activityId,
|
||||
"shareReportKey": needShareReport ? "ActivityShared" : "",
|
||||
...shareCardModel?.toJson() ?? {},
|
||||
});
|
||||
|
||||
//专属见面礼
|
||||
void taskInviteCodeGift() =>
|
||||
@@ -427,11 +424,10 @@ class FlutterBridge {
|
||||
void taskToWebViewPage({
|
||||
required String linkUrl,
|
||||
required String activityId,
|
||||
}) =>
|
||||
sendToFlutter(ToFlutterAppEnum.showToWebViewPage.code, {
|
||||
"linkUrl": linkUrl,
|
||||
"activityId": activityId,
|
||||
});
|
||||
}) => sendToFlutter(ToFlutterAppEnum.showToWebViewPage.code, {
|
||||
"linkUrl": linkUrl,
|
||||
"activityId": activityId,
|
||||
});
|
||||
|
||||
void checkStartBroadcaster() =>
|
||||
sendToFlutter(ToFlutterAppEnum.checkStartBroadcaster.code, {});
|
||||
@@ -467,10 +463,10 @@ class FlutterBridge {
|
||||
/**
|
||||
* param activityNum: 用于区分不同页面进入发布页之后对应的各自操作 默认值:0 不做任何操作, 比如 柬埔寨 为1,其他活动参考 s1 项目 PublishFromType
|
||||
* 发布动态*/
|
||||
void shouldPublishDynamic({int activityNum = 0}) =>
|
||||
sendToFlutter(ToFlutterAppEnum.shouldPublishDynamic.code, {
|
||||
"activityNum": activityNum,
|
||||
});
|
||||
void shouldPublishDynamic({int activityNum = 0}) => sendToFlutter(
|
||||
ToFlutterAppEnum.shouldPublishDynamic.code,
|
||||
{"activityNum": activityNum},
|
||||
);
|
||||
/** 分享n次直播间或聊天室至任意平台 */
|
||||
void shouldShareRoom() =>
|
||||
sendToFlutter(ToFlutterAppEnum.shouldShareRoom.code, {});
|
||||
@@ -493,6 +489,11 @@ class FlutterBridge {
|
||||
sendToFlutter(ToFlutterAppEnum.enterRoom.code, {'roomId': roomId});
|
||||
/** 进入我的房间(创建房间) */
|
||||
void createMyRoom() => sendToFlutter(ToFlutterAppEnum.createMyRoom.code, {});
|
||||
/** 发泼水节胜利消息 */
|
||||
void sendWaterFestVictoryMessage(String targetId) => sendToFlutter(
|
||||
ToFlutterAppEnum.sendWaterFestVictoryMessage.code,
|
||||
{'targetId': targetId},
|
||||
);
|
||||
|
||||
/** 通用封装方法 无需传参可直接调用,需要传参需要调用sendToFlutter*/
|
||||
void commonInteraction(Map<String, dynamic> data) =>
|
||||
|
||||
Reference in New Issue
Block a user