8 Commits

Author SHA1 Message Date
W.W
cccfaf7cd9 新增enterHotRoomOrCreateMyRoom和enterPkRoomOrCreateMyRoom 2026-04-01 11:34:57 +08:00
zhulixiao
d34ebc84ab 钻石充值,半屏 2026-03-31 18:19:25 +08:00
LoveYao
19ee5746f4 添加新交互 2026-03-30 16:23:03 +08:00
lwb
4b7635c939 添加进入房间和创建房间的方法 2026-03-27 16:54:09 +08:00
zhugy781
de0e8b80d7 add 2026-03-27 16:06:11 +08:00
zhugy781
8bacf63388 添加交互 2026-03-27 13:59:10 +08:00
zhugy781
27e4b9b46a add 2026-02-10 15:50:50 +08:00
zhugy781
38e182bbda 补全新增的方法 2026-02-10 15:48:12 +08:00
3 changed files with 89 additions and 22 deletions

View File

@@ -309,6 +309,10 @@ class _WebToolsExamplePageState extends State<WebToolsExamplePage> {
bridge.sendToFlutter( bridge.sendToFlutter(
ToFlutterAppEnum.lovingDayChooseFriend.code, {}); ToFlutterAppEnum.lovingDayChooseFriend.code, {});
}), }),
_buildMethodTile("恩爱节我的邀请页面", "恩爱节我的邀请页面", () {
bridge
.sendToFlutter(ToFlutterAppEnum.lovingDayMyInvite.code, {});
}),
ListTile( ListTile(
title: const Text('跳转到网页', title: const Text('跳转到网页',
style: TextStyle(fontWeight: FontWeight.bold)), style: TextStyle(fontWeight: FontWeight.bold)),
@@ -645,6 +649,11 @@ class _WebToolsExamplePageState extends State<WebToolsExamplePage> {
"updateType": "1" // 1 刷新整个挂件数据2刷新观时礼的宝箱列表数据 "updateType": "1" // 1 刷新整个挂件数据2刷新观时礼的宝箱列表数据
}), }),
), ),
_buildMethodTile(
'刷新当前网页',
'刷新当前网页',
() => bridge.sendToFlutter(ToFlutterAppEnum.reload.code, {}),
),
_buildMethodTile( _buildMethodTile(
'翻译', '翻译',
'多语言翻译', '多语言翻译',

View File

@@ -19,6 +19,7 @@ enum ToFlutterAppEnum {
toRecharge('toRecharge'), toRecharge('toRecharge'),
playing('playing'), playing('playing'),
toRedDiamond('toRedDiamond'), toRedDiamond('toRedDiamond'),
toHalfRecharge('toHalfRecharge'),
gameType('gameType'), gameType('gameType'),
jumpToH5('jumpToH5'), jumpToH5('jumpToH5'),
toHomepage('toHomepage'), toHomepage('toHomepage'),
@@ -52,6 +53,8 @@ enum ToFlutterAppEnum {
shouldSendPrivateMessage('shouldSendPrivateMessage'), shouldSendPrivateMessage('shouldSendPrivateMessage'),
//发布n条动态 //发布n条动态
shouldPostFeed('shouldPostFeed'), shouldPostFeed('shouldPostFeed'),
// 发布动态页面
shouldPublishDynamic('shouldPublishDynamic'),
//分享n次直播间或聊天室至任意平台 //分享n次直播间或聊天室至任意平台
shouldShareRoom('shouldShareRoom'), shouldShareRoom('shouldShareRoom'),
//佩戴任意装扮 //佩戴任意装扮
@@ -75,8 +78,25 @@ enum ToFlutterAppEnum {
//跳转至网页 //跳转至网页
showToWebViewPage('toWebViewPage'), showToWebViewPage('toWebViewPage'),
// 保存图片到相册
saveMediaToGallery('saveMediaToGallery'),
// 进入指定房间
enterRoom('enterRoom'),
// 进入我的房间(创建房间)
createMyRoom('createMyRoom'),
// 发泼水节胜利消息
sendWaterFestVictoryMessage('sendWaterFestVictoryMessage'),
///通用交互 别往这下面加,👆🏻加 ///通用交互 别往这下面加,👆🏻加
commonInteraction('commonInteraction'), commonInteraction('commonInteraction'),
/// 已在房则回当前房;否则进热门开播房;无房或失败则走创建房间(同 createMyRoom
enterHotRoomOrCreateMyRoom('enterHotRoomOrCreateMyRoom'),
/// 已在房则回当前房;否则热门推荐里随机进 PK 中房间;
/// 无 PK 房或失败则走创建房间(同 createMyRoom
enterPkRoomOrCreateMyRoom('enterPkRoomOrCreateMyRoom'),
defaultCode(''); defaultCode('');
const ToFlutterAppEnum(this.code); const ToFlutterAppEnum(this.code);
@@ -133,6 +153,10 @@ enum FromFlutterAppEnum {
//送戒指后回调,传入type参数 //送戒指后回调,传入type参数
// type 1 cp戒指赠送成功2恩爱节告白礼物赠送成功 // type 1 cp戒指赠送成功2恩爱节告白礼物赠送成功
cpSendRingCallBack('cp_send_ring_callback'), cpSendRingCallBack('cp_send_ring_callback'),
// 动态发布成功
publishDynamicSuccess("publishDynamicSuccess"),
defaultCode(''); defaultCode('');
const FromFlutterAppEnum(this.code); const FromFlutterAppEnum(this.code);
@@ -254,7 +278,7 @@ class FlutterBridge {
print("All listeners for '$type' have been removed."); print("All listeners for '$type' have been removed.");
} }
} }
// ========================================================= // =========================================================
// 👇 🆕 [新增] 核心通用请求方法 (替代了旧的 requestTranslate) // 👇 🆕 [新增] 核心通用请求方法 (替代了旧的 requestTranslate)
// ========================================================= // =========================================================
@@ -277,11 +301,9 @@ class FlutterBridge {
} }
// 2. 入队 // 2. 入队
_requestQueues[responseKey]!.add(_RequestTask( _requestQueues[responseKey]!.add(
sendType.code, _RequestTask(sendType.code, params, onSuccess),
params, );
onSuccess,
));
// 3. 调度执行 // 3. 调度执行
_processRequestQueue(responseKey); _processRequestQueue(responseKey);
@@ -331,7 +353,7 @@ class FlutterBridge {
// 发送消息给 App通过 WebView 调用 JS 方法) // 发送消息给 App通过 WebView 调用 JS 方法)
void sendToFlutter(String type, Map<String, dynamic> data) { void sendToFlutter(String type, Map<String, dynamic> data) {
final dataStr = jsonEncode({'type': type, 'data': data}); final dataStr = jsonEncode({'type': type, 'data': data});
print('$dataStr'); print(dataStr);
sendMessageToNative(dataStr); sendMessageToNative(dataStr);
} }
@@ -431,35 +453,71 @@ class FlutterBridge {
sendToFlutter(ToFlutterAppEnum.toApplyAdmissionPage.code, {}); sendToFlutter(ToFlutterAppEnum.toApplyAdmissionPage.code, {});
void shouLiveBookingPicker() => void shouLiveBookingPicker() =>
sendToFlutter(ToFlutterAppEnum.shouLiveBookingPicker.code, {}); sendToFlutter(ToFlutterAppEnum.shouLiveBookingPicker.code, {});
/** 完善个人信息 */
/// 完善个人信息
void shouldCompleteProfile() => void shouldCompleteProfile() =>
sendToFlutter(ToFlutterAppEnum.shouldCompleteProfile.code, {}); sendToFlutter(ToFlutterAppEnum.shouldCompleteProfile.code, {});
/** 在直播间或聊天室停留观看n分钟 */
/// 在直播间或聊天室停留观看n分钟
void shouldWatchDuration() => void shouldWatchDuration() =>
sendToFlutter(ToFlutterAppEnum.shouldWatchDuration.code, {}); sendToFlutter(ToFlutterAppEnum.shouldWatchDuration.code, {});
/** 在直播间或聊天室发送n条公屏消息 */
/// 在直播间或聊天室发送n条公屏消息
void shouldSendPublicMessage() => void shouldSendPublicMessage() =>
sendToFlutter(ToFlutterAppEnum.shouldSendPublicMessage.code, {}); sendToFlutter(ToFlutterAppEnum.shouldSendPublicMessage.code, {});
/** 在直播间或聊天室上麦互动n分钟 */
/// 在直播间或聊天室上麦互动n分钟
void shouldMicInteraction() => void shouldMicInteraction() =>
sendToFlutter(ToFlutterAppEnum.shouldMicInteraction.code, {}); sendToFlutter(ToFlutterAppEnum.shouldMicInteraction.code, {});
/** 向任意用户发送n条信息*/
/// 向任意用户发送n条信息
void shouldSendPrivateMessage() => void shouldSendPrivateMessage() =>
sendToFlutter(ToFlutterAppEnum.shouldSendPrivateMessage.code, {}); sendToFlutter(ToFlutterAppEnum.shouldSendPrivateMessage.code, {});
/** 发布n条动态*/
/// 发布n条动态
void shouldPostFeed() => void shouldPostFeed() =>
sendToFlutter(ToFlutterAppEnum.shouldPostFeed.code, {}); sendToFlutter(ToFlutterAppEnum.shouldPostFeed.code, {});
/** 分享n次直播间或聊天室至任意平台 */
/// param activityNum: 用于区分不同页面进入发布页之后对应的各自操作 默认值0 不做任何操作, 比如 柬埔寨 为1其他活动参考 s1 项目 PublishFromType
/// 发布动态
void shouldPublishDynamic({int activityNum = 0}) => sendToFlutter(
ToFlutterAppEnum.shouldPublishDynamic.code,
{"activityNum": activityNum},
);
/// 分享n次直播间或聊天室至任意平台
void shouldShareRoom() => void shouldShareRoom() =>
sendToFlutter(ToFlutterAppEnum.shouldShareRoom.code, {}); sendToFlutter(ToFlutterAppEnum.shouldShareRoom.code, {});
/** 佩戴任意装扮 */
/// 佩戴任意装扮
void shouldWearDecoration() => void shouldWearDecoration() =>
sendToFlutter(ToFlutterAppEnum.shouldWearDecoration.code, {}); sendToFlutter(ToFlutterAppEnum.shouldWearDecoration.code, {});
/** 前往语音房 */
/// 前往语音房
void shouldGoToVoiceRoom() => void shouldGoToVoiceRoom() =>
sendToFlutter(ToFlutterAppEnum.shouldGoToVoiceRoom.code, {}); sendToFlutter(ToFlutterAppEnum.shouldGoToVoiceRoom.code, {});
/** 通用封装方法 无需传参可直接调用需要传参需要调用sendToFlutter*/ /// 保存图片到相册
void saveMediaToGallery({required String mediaUrl, bool isVideo = false}) =>
sendToFlutter(ToFlutterAppEnum.saveMediaToGallery.code, {
"isVideo": isVideo,
"mediaUrl": mediaUrl,
});
/// 进入指定房间
void enterRoom(String roomId) =>
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) => void commonInteraction(Map<String, dynamic> data) =>
sendToFlutter(ToFlutterAppEnum.commonInteraction.code, data); sendToFlutter(ToFlutterAppEnum.commonInteraction.code, data);
} }

View File

@@ -1,6 +1,6 @@
name: web_tools name: web_tools
description: "A new Flutter package project." description: "A new Flutter package project."
version: 0.0.5 version: 0.0.9
publish_to: 'none' # 不发布到pub.dev publish_to: 'none' # 不发布到pub.dev
homepage: https://gitea.sdws.shop/xim/web_tools.git homepage: https://gitea.sdws.shop/xim/web_tools.git