@beppla/tapas-ui 1.2.19 → 1.2.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,187 @@
1
+ # WebViewBridge 组件优化总结
2
+
3
+ ## 优化时间
4
+ 2025-01-XX
5
+
6
+ ## 优化依据
7
+ 基于验证通过的 `webview-communication-demo` 实现,确保监听器注册和消息通信的正确性。
8
+
9
+ ---
10
+
11
+ ## 主要优化内容
12
+
13
+ ### 1. 简化监听器注册逻辑 ✅
14
+
15
+ **优化前**:
16
+ - 复杂的条件判断(iframe/webview/web)
17
+ - 不同环境使用不同的注册方式
18
+ - 代码重复,难以维护
19
+
20
+ **优化后**:
21
+ - 统一注册逻辑:所有环境都注册 `webviewmessage` 和 `message` 事件监听器
22
+ - 清晰的代码结构,易于理解和维护
23
+ - 双重保障机制,确保消息不丢失
24
+
25
+ ### 2. 优化消息接收处理 ✅
26
+
27
+ **优化前**:
28
+ - 不同环境使用不同的消息提取方式
29
+ - 消息格式处理不统一
30
+
31
+ **优化后**:
32
+ - 统一处理 `event.data`(字符串格式,tapas-sys 发送的格式)
33
+ - 正确处理 `webviewmessage` 自定义事件(`event.detail` 是消息对象)
34
+ - 支持 iframe 环境的特殊格式 `{ source, target, payload }`
35
+
36
+ ### 3. 改进日志记录 ✅
37
+
38
+ **优化前**:
39
+ - 日志记录不完整
40
+ - 难以追踪消息接收流程
41
+
42
+ **优化后**:
43
+ - 完整的日志记录(监听器注册、消息接收、消息处理)
44
+ - 清晰的日志级别(info/debug/error)
45
+ - 便于调试和问题排查
46
+
47
+ ---
48
+
49
+ ## 关键改进点
50
+
51
+ ### ✅ 监听器注册(双重保障)
52
+
53
+ ```typescript
54
+ // 1. webviewmessage 自定义事件(Bridgeless 兼容,tapas-sys 优先使用)
55
+ window.addEventListener('webviewmessage', customEventHandler);
56
+
57
+ // 2. message 标准事件(官方标准方式)
58
+ window.addEventListener('message', messageHandler);
59
+ ```
60
+
61
+ **优势**:
62
+ - ✅ 双重保障,确保消息不丢失
63
+ - ✅ 兼容 Bridgeless 模式(CustomEvent)
64
+ - ✅ 兼容标准方式(window.postMessage)
65
+
66
+ ### ✅ 消息接收处理
67
+
68
+ ```typescript
69
+ // webviewmessage 事件:event.detail 是消息对象
70
+ handleMessage(event.detail, window.location.origin);
71
+
72
+ // message 事件:event.data 是字符串(JSON.stringify 后的结果)
73
+ if (event.data && typeof event.data === 'string') {
74
+ handleMessage(event.data, event.origin);
75
+ }
76
+ ```
77
+
78
+ **优势**:
79
+ - ✅ 正确处理两种消息格式
80
+ - ✅ 自动提取和解析消息
81
+ - ✅ 支持 iframe 环境的特殊格式
82
+
83
+ ### ✅ 平台特定处理
84
+
85
+ ```typescript
86
+ // iOS: window.addEventListener("message")
87
+ // Android: window.document.addEventListener("message") + window.addEventListener("message")
88
+ ```
89
+
90
+ **优势**:
91
+ - ✅ 根据平台使用最合适的注册方式
92
+ - ✅ Android 双重保障(document + window)
93
+ - ✅ 兼容不同的实现方式
94
+
95
+ ---
96
+
97
+ ## 与 Demo 的一致性
98
+
99
+ ### ✅ 监听器注册时机
100
+ - Demo: 组件挂载时立即注册
101
+ - WebViewBridge: ✅ 组件挂载时立即注册(useEffect)
102
+
103
+ ### ✅ 监听器类型
104
+ - Demo: `webviewmessage` + `message`
105
+ - WebViewBridge: ✅ `webviewmessage` + `message`
106
+
107
+ ### ✅ 消息接收处理
108
+ - Demo: 提取 `event.data`(字符串)或 `event.detail`(对象)
109
+ - WebViewBridge: ✅ 正确处理两种格式
110
+
111
+ ### ✅ 错误处理
112
+ - Demo: try-catch + 日志记录
113
+ - WebViewBridge: ✅ try-catch + 日志记录
114
+
115
+ ---
116
+
117
+ ## 测试建议
118
+
119
+ ### 1. 监听器注册验证
120
+
121
+ **预期日志**:
122
+ ```
123
+ 🔧 [WebViewBridge] 开始注册消息监听器
124
+ ✅ [WebViewBridge] webviewmessage 事件监听器已注册
125
+ ✅ [WebViewBridge] iOS/Android message 事件监听器已注册
126
+ ✅ [WebViewBridge] 所有消息监听器已注册完成
127
+ ```
128
+
129
+ ### 2. 消息接收验证
130
+
131
+ **tapas-sys 发送消息时**:
132
+ - ✅ 应该看到 `🔔 [WebViewBridge] 收到 webviewmessage 自定义事件`
133
+ - ✅ 或 `🔔 [WebViewBridge] 收到 message 事件`
134
+
135
+ **消息处理验证**:
136
+ - ✅ 消息应该被正确解析和处理
137
+ - ✅ `onMessage` 回调应该被触发
138
+
139
+ ### 3. 双向通信验证
140
+
141
+ **WebView → Native**:
142
+ - ✅ 使用 `window.ReactNativeWebView.postMessage` 发送
143
+ - ✅ Native 端 `onMessage` 应该收到消息
144
+
145
+ **Native → WebView**:
146
+ - ✅ tapas-sys 使用 `injectJavaScript` + `CustomEvent` 发送
147
+ - ✅ WebViewBridge 应该收到并处理消息
148
+
149
+ ---
150
+
151
+ ## 兼容性
152
+
153
+ ### ✅ 环境支持
154
+ - ✅ iframe 环境
155
+ - ✅ WebView 环境(iOS/Android)
156
+ - ✅ Bridgeless 模式
157
+
158
+ ### ✅ 消息格式支持
159
+ - ✅ tapas-sys 格式:`{ operate, action, data, from }`
160
+ - ✅ WebViewMessage 格式:`{ type, payload, from }`
161
+ - ✅ Base64 编码/解码(可选)
162
+
163
+ ---
164
+
165
+ ## 总结
166
+
167
+ ### ✅ 优化成果
168
+
169
+ 1. **监听器注册**: 简化逻辑,双重保障,确保消息不丢失
170
+ 2. **消息接收**: 统一处理,支持多种格式
171
+ 3. **日志记录**: 完整详细,便于调试
172
+ 4. **兼容性**: 支持所有环境和消息格式
173
+
174
+ ### 📋 下一步
175
+
176
+ 1. 在 tapas-sys 中添加 `injectedJavaScriptBeforeContentLoaded`(双重保障)
177
+ 2. 在 tapas-sys 中添加 `onConsoleMessage`(便于调试)
178
+ 3. 测试验证优化后的实现
179
+
180
+ ---
181
+
182
+ ## 相关文档
183
+
184
+ - `WEBVIEW_IMPLEMENTATION_COMPARISON.md` - 详细对比分析
185
+ - `WEBVIEW_FIX_RECOMMENDATIONS.md` - 修复建议
186
+ - `WEBVIEW_DEMO_CONNECTION_VERIFICATION.md` - Demo 验证结果
187
+
@@ -365,6 +365,13 @@ const WebViewBridge = exports.WebViewBridge = /*#__PURE__*/(0, _react.forwardRef
365
365
  const normalizeMessage = (0, _react.useCallback)(rawMessage => {
366
366
  let data = null;
367
367
 
368
+ // 🔧 修复:优先检查是否是 tapas-sys 格式({ operate, action, data })
369
+ // 这对于 webviewmessage 事件特别重要,因为 event.detail 直接是 tapas-sys 格式
370
+ if (rawMessage && typeof rawMessage === 'object' && rawMessage.operate !== undefined) {
371
+ loggerRef.current.debug('检测到 tapas-sys 格式消息,直接转换:', rawMessage);
372
+ return convertFromTapasSysFormat(rawMessage);
373
+ }
374
+
368
375
  // WebView 环境:消息通常在 data 字段中
369
376
  if (environmentRef.current === 'webview') {
370
377
  if (typeof rawMessage === 'string') {
@@ -374,10 +381,7 @@ const WebViewBridge = exports.WebViewBridge = /*#__PURE__*/(0, _react.forwardRef
374
381
  } else if (rawMessage?.data) {
375
382
  data = rawMessage.data;
376
383
  } else {
377
- // 直接是对象:检查是 tapas-sys 格式还是 WebViewMessage 格式
378
- if (rawMessage?.operate !== undefined) {
379
- return convertFromTapasSysFormat(rawMessage);
380
- }
384
+ // 直接是对象:检查是 WebViewMessage 格式
381
385
  return {
382
386
  type: rawMessage?.type || 'unknown',
383
387
  payload: rawMessage?.payload || rawMessage,
@@ -398,10 +402,7 @@ const WebViewBridge = exports.WebViewBridge = /*#__PURE__*/(0, _react.forwardRef
398
402
  // 降级:直接使用 event.data
399
403
  data = rawMessage.data;
400
404
  } else {
401
- // 直接是对象:检查是 tapas-sys 格式还是 WebViewMessage 格式
402
- if (rawMessage?.operate !== undefined) {
403
- return convertFromTapasSysFormat(rawMessage);
404
- }
405
+ // 直接是对象:检查是 WebViewMessage 格式
405
406
  return {
406
407
  type: rawMessage?.type || 'unknown',
407
408
  payload: rawMessage?.payload || rawMessage,
@@ -412,9 +413,6 @@ const WebViewBridge = exports.WebViewBridge = /*#__PURE__*/(0, _react.forwardRef
412
413
  }
413
414
  } else {
414
415
  // 未知环境:尝试通用解析
415
- if (rawMessage?.operate !== undefined) {
416
- return convertFromTapasSysFormat(rawMessage);
417
- }
418
416
  return {
419
417
  type: rawMessage?.type || 'unknown',
420
418
  payload: rawMessage?.payload || rawMessage,
@@ -640,154 +638,137 @@ const WebViewBridge = exports.WebViewBridge = /*#__PURE__*/(0, _react.forwardRef
640
638
  messageHandlersRef.current.clear();
641
639
  }, []);
642
640
 
643
- // 注册消息监听
641
+ // 注册消息监听(优化:基于验证通过的 demo 实现)
644
642
  (0, _react.useEffect)(() => {
645
643
  loggerRef.current.info('🔧 [WebViewBridge] 开始注册消息监听器', {
646
644
  environment: environmentRef.current,
647
645
  hasWindow: typeof window !== 'undefined',
648
646
  hasReactNativeWebView: typeof window !== 'undefined' && !!window.ReactNativeWebView
649
647
  });
650
- let cleanupFn;
651
- if (environmentRef.current === 'iframe') {
652
- // iframe 环境:监听 window message 事件
653
- loggerRef.current.info('🔧 [WebViewBridge] iframe 环境:注册 window message 监听器');
654
- const messageHandler = event => {
655
- loggerRef.current.info('🔔 [WebViewBridge] 收到 iframe message 事件', event);
656
-
657
- // 🔧 修复:处理 iframe 环境的特殊消息格式 { source, target, payload }
658
- // 参考:tapas-orderly-client 发送的消息格式
659
- if (event.data && typeof event.data === 'object') {
660
- // 检查是否是 tapas-sys 返回的消息(target 应该是 btoa("tapas-orderly-client"))
661
- const expectedTarget = typeof btoa !== 'undefined' ? btoa('tapas-orderly-client') : 'tapas-orderly-client';
662
- if (event.data.target === expectedTarget && event.data.payload) {
663
- // 提取 payload(JSON 字符串)并传递给 handleMessage
664
- loggerRef.current.debug('🔔 [WebViewBridge] 检测到 tapas-sys 返回消息,提取 payload', event.data.payload);
665
- handleMessage(event.data.payload, event.origin);
666
- return;
667
- }
668
- }
648
+ if (typeof window === 'undefined') {
649
+ loggerRef.current.warn('⚠️ [WebViewBridge] window 不存在,无法注册监听器');
650
+ return;
651
+ }
652
+ const cleanupFunctions = [];
653
+
654
+ // ✅ 优化:基于验证通过的 demo,所有环境都需要注册以下监听器
655
+ // 1. webviewmessage 自定义事件(Bridgeless 兼容,tapas-sys 优先使用)
656
+ // 2. message 标准事件(官方标准方式)
657
+
658
+ // 1. 监听 webviewmessage 自定义事件(优先方式,Bridgeless 兼容)
659
+ const customEventHandler = event => {
660
+ loggerRef.current.info('🔔 [WebViewBridge] 收到 webviewmessage 自定义事件', {
661
+ detail: event.detail,
662
+ type: typeof event.detail
663
+ });
669
664
 
670
- // 降级:如果格式不匹配,尝试直接处理 event.data
665
+ // event.detail 是消息对象(tapas-sys 发送的格式)
666
+ // 直接传递给 handleMessage,normalizeMessage 会处理格式转换
667
+ try {
668
+ handleMessage(event.detail, window.location.origin);
669
+ } catch (e) {
670
+ loggerRef.current.error('处理 webviewmessage 事件失败', e);
671
+ }
672
+ };
673
+ window.addEventListener('webviewmessage', customEventHandler);
674
+ cleanupFunctions.push(() => {
675
+ window.removeEventListener('webviewmessage', customEventHandler);
676
+ });
677
+ loggerRef.current.info('✅ [WebViewBridge] webviewmessage 事件监听器已注册');
678
+
679
+ // 2. 监听 message 标准事件(官方标准方式)
680
+ const messageHandler = event => {
681
+ loggerRef.current.info('🔔 [WebViewBridge] 收到 message 事件', {
682
+ data: event.data,
683
+ type: typeof event.data,
684
+ origin: event.origin
685
+ });
686
+ try {
687
+ // ✅ 优化:根据 demo 验证,event.data 是字符串(JSON.stringify 后的结果)
688
+ // tapas-sys 使用 window.postMessage(JSON.stringify(message), '*') 发送
671
689
  if (event.data && typeof event.data === 'string') {
690
+ // 直接传递字符串给 handleMessage,parseMessage 会处理解析
691
+ loggerRef.current.debug('🔔 [WebViewBridge] 提取 event.data(字符串)', event.data);
672
692
  handleMessage(event.data, event.origin);
693
+ } else if (event.data && typeof event.data === 'object') {
694
+ // iframe 环境可能收到对象格式 { source, target, payload }
695
+ if (environmentRef.current === 'iframe' && event.data.payload) {
696
+ loggerRef.current.debug('🔔 [WebViewBridge] iframe 环境:提取 payload', event.data.payload);
697
+ handleMessage(event.data.payload, event.origin);
698
+ } else {
699
+ // 降级:传递整个 event.data
700
+ handleMessage(event.data, event.origin);
701
+ }
673
702
  } else {
703
+ // 降级:传递整个 event
674
704
  handleMessage(event, event.origin);
675
705
  }
676
- };
677
- if (typeof window !== 'undefined') {
678
- window.addEventListener('message', messageHandler);
679
- cleanupFn = () => {
680
- window.removeEventListener('message', messageHandler);
681
- };
682
- loggerRef.current.info('✅ [WebViewBridge] iframe message 事件监听器已注册');
706
+ } catch (e) {
707
+ loggerRef.current.error('处理 message 事件失败', e);
683
708
  }
709
+ };
710
+
711
+ // 根据环境注册 message 事件监听器
712
+ if (environmentRef.current === 'iframe') {
713
+ // iframe 环境:使用 window.addEventListener("message")
714
+ window.addEventListener('message', messageHandler);
715
+ cleanupFunctions.push(() => {
716
+ window.removeEventListener('message', messageHandler);
717
+ });
718
+ loggerRef.current.info('✅ [WebViewBridge] iframe message 事件监听器已注册 (window)');
684
719
  } else if (environmentRef.current === 'webview') {
685
- // WebView 环境:监听消息
686
- if (_reactNative.Platform.OS === 'web') {
687
- // Web 环境下的 WebView:监听 window message
688
- const messageHandler = event => {
689
- handleMessage(event, event.origin);
690
- };
691
- if (typeof window !== 'undefined') {
692
- window.addEventListener('message', messageHandler);
693
- cleanupFn = () => {
694
- window.removeEventListener('message', messageHandler);
695
- };
696
- }
720
+ // WebView 环境:根据平台注册
721
+ const isIOS = /iPad|iPhone|iPod/.test(navigator.platform) || navigator.userAgent.includes('Mac') && 'ontouchend' in document;
722
+ if (isIOS) {
723
+ // iOS: 使用 window.addEventListener("message")
724
+ window.addEventListener('message', messageHandler);
725
+ cleanupFunctions.push(() => {
726
+ window.removeEventListener('message', messageHandler);
727
+ });
728
+ loggerRef.current.info('✅ [WebViewBridge] iOS message 事件监听器已注册 (window)');
697
729
  } else {
698
- // 原生环境:监听 React Native WebView 的消息
699
- // 注意:在原生环境中,消息需要通过 WebView 组件的 onMessage prop 传递
700
- // 这里我们提供一个通用的监听机制,通过全局事件总线
701
- const messageHandler = event => {
702
- handleMessage(event);
703
- };
704
-
705
- // 使用自定义事件系统(如果存在)
706
- if (typeof global !== 'undefined' && global.__WebViewBridgeEventBus) {
707
- const eventBus = global.__WebViewBridgeEventBus;
708
- eventBus.on('message', messageHandler);
709
- cleanupFn = () => {
710
- eventBus.off('message', messageHandler);
711
- };
712
- } else if (typeof window !== 'undefined') {
713
- // 🔧 修复:根据之前的生效逻辑,WebView 环境需要:
714
- // 1. 监听 webviewmessage 自定义事件(tapas-orderly-client 使用)
715
- // tapas-sys 通过 injectJavaScript 调用 window.handleWebViewMessage(message)
716
- // 该函数会触发 webviewmessage 自定义事件
717
- // 2. 根据平台注册 message 事件监听器:
718
- // - iOS: window.addEventListener("message")
719
- // - Android: window.document.addEventListener("message")
720
-
721
- loggerRef.current.info('🔧 [WebViewBridge] WebView 环境:开始注册监听器');
722
-
723
- // 1. 监听 webviewmessage 自定义事件
724
- const customEventHandler = event => {
725
- loggerRef.current.info('🔔 [WebViewBridge] 收到 webviewmessage 自定义事件', event.detail);
726
- // 直接传递消息对象给 handleMessage(normalizeMessage 会处理格式转换)
727
- handleMessage(event.detail, window.location.origin);
728
- };
729
- window.addEventListener('webviewmessage', customEventHandler);
730
- loggerRef.current.info('✅ [WebViewBridge] webviewmessage 事件监听器已注册');
731
-
732
- // 2. 根据平台注册 message 事件监听器
733
- // 判断是否运行在 iOS 下
734
- const isIOS = /iPad|iPhone|iPod/.test(navigator.platform) || navigator.userAgent.includes('Mac') && 'ontouchend' in document;
735
- const messageHandler = event => {
736
- loggerRef.current.info('🔔 [WebViewBridge] 收到 message 事件', event);
737
-
738
- // 🔧 修复:webview 环境接收的消息是字符串(JSON.stringify 后的结果)
739
- // 需要提取 event.data(字符串)并传递给 handleMessage
740
- if (event && event.data) {
741
- // event.data 是字符串,直接传递
742
- loggerRef.current.debug('🔔 [WebViewBridge] 提取 event.data(字符串)', event.data);
743
- handleMessage(event.data, event.origin || window.location.origin);
744
- } else {
745
- // 降级:传递整个 event
746
- handleMessage(event, event.origin || window.location.origin);
747
- }
748
- };
749
- if (isIOS) {
750
- // iOS: 使用 window.addEventListener("message")
751
- window.addEventListener('message', messageHandler);
752
- loggerRef.current.info('✅ [WebViewBridge] iOS message 事件监听器已注册 (window)');
753
- cleanupFn = () => {
754
- window.removeEventListener('webviewmessage', customEventHandler);
755
- window.removeEventListener('message', messageHandler);
756
- };
757
- } else {
758
- // Android: 同时监听 window 和 document 的 message 事件
759
- // 因为不同的实现可能使用不同的方式
760
- // 1. 优先使用 window.document.addEventListener("message")(tapas-sys 使用)
761
- // 2. 同时监听 window.addEventListener("message")(React Native WebView 标准方式)
762
-
763
- let documentHandler = null;
764
- let windowHandler = null;
765
- if (window.document && typeof window.document.addEventListener === 'function') {
766
- documentHandler = messageHandler;
767
- window.document.addEventListener('message', documentHandler);
768
- loggerRef.current.info('✅ [WebViewBridge] Android message 事件监听器已注册 (document)');
730
+ // Android: 同时监听 window document(双重保障)
731
+ // 1. window.document.addEventListener("message") - tapas-sys 可能使用
732
+ // 2. window.addEventListener("message") - React Native WebView 标准方式
733
+
734
+ if (window.document && typeof window.document.addEventListener === 'function') {
735
+ window.document.addEventListener('message', messageHandler);
736
+ cleanupFunctions.push(() => {
737
+ if (window.document && typeof window.document.removeEventListener === 'function') {
738
+ window.document.removeEventListener('message', messageHandler);
769
739
  }
770
-
771
- // 同时监听 window.addEventListener("message") 作为备用
772
- windowHandler = messageHandler;
773
- window.addEventListener('message', windowHandler);
774
- loggerRef.current.info('✅ [WebViewBridge] Android message 事件监听器已注册 (window, 备用)');
775
- cleanupFn = () => {
776
- window.removeEventListener('webviewmessage', customEventHandler);
777
- if (documentHandler && window.document && typeof window.document.removeEventListener === 'function') {
778
- window.document.removeEventListener('message', documentHandler);
779
- }
780
- if (windowHandler) {
781
- window.removeEventListener('message', windowHandler);
782
- }
783
- };
784
- }
740
+ });
741
+ loggerRef.current.info('✅ [WebViewBridge] Android message 事件监听器已注册 (document)');
785
742
  }
743
+
744
+ // 同时监听 window(备用)
745
+ window.addEventListener('message', messageHandler);
746
+ cleanupFunctions.push(() => {
747
+ window.removeEventListener('message', messageHandler);
748
+ });
749
+ loggerRef.current.info('✅ [WebViewBridge] Android message 事件监听器已注册 (window, 备用)');
786
750
  }
751
+ } else {
752
+ // 未知环境:使用 window.addEventListener("message") 作为降级
753
+ window.addEventListener('message', messageHandler);
754
+ cleanupFunctions.push(() => {
755
+ window.removeEventListener('message', messageHandler);
756
+ });
757
+ loggerRef.current.info('✅ [WebViewBridge] 未知环境 message 事件监听器已注册 (window, 降级)');
787
758
  }
788
- if (cleanupFn) {
789
- cleanupFunctionsRef.current.push(cleanupFn);
790
- }
759
+
760
+ // 保存清理函数
761
+ const cleanupFn = () => {
762
+ cleanupFunctions.forEach(fn => {
763
+ try {
764
+ fn();
765
+ } catch (e) {
766
+ loggerRef.current.error('清理监听器失败', e);
767
+ }
768
+ });
769
+ };
770
+ cleanupFunctionsRef.current.push(cleanupFn);
771
+ loggerRef.current.info('✅ [WebViewBridge] 所有消息监听器已注册完成');
791
772
  return cleanupFn;
792
773
  }, [handleMessage]);
793
774
 
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","detectEnvironment","window","isIframe","self","top","isWebView","test","navigator","userAgent","Platform","OS","encodeBase64","str","btoa","unescape","encodeURIComponent","Buffer","from","toString","Error","console","warn","decodeBase64","decodeURIComponent","escape","atob","createLogger","debug","logLevel","levels","currentLevelIndex","indexOf","shouldLog","level","levelIndex","error","args","info","log","validateOrigin","origin","allowedOrigins","strictOriginCheck","logger","length","isAllowed","some","allowed","includes","pattern","replace","regex","RegExp","validateFrom","messageFrom","allowedFrom","WebViewBridge","exports","forwardRef","onMessage","onError","initPayload","autoInit","initMessageType","enableBase64","showPlaceholder","style","testID","messageFilter","ref","environmentRef","useRef","messageIdCounterRef","initSentRef","messageHandlersRef","Map","loggerRef","cleanupFunctionsRef","useEffect","current","environment","hasWindow","hasReactNativeWebView","ReactNativeWebView","generateMessageId","useCallback","Date","now","convertToTapasSysFormat","message","tapasMessage","operate","type","payload","undefined","Array","isArray","action","_action","rest","data","keys","convertFromTapasSysFormat","parseMessage","decodedData","parsed","JSON","parse","timestamp","id","String","normalizeMessage","rawMessage","nativeEvent","sendMessage","messageJson","stringify","messageToSend","sent","postMessage","parent","handleMessage","eventOrigin","isValidOrigin","normalizedMessage","forEach","handler","cleanup","cleanupFn","clear","messageHandler","event","expectedTarget","target","addEventListener","removeEventListener","global","__WebViewBridgeEventBus","eventBus","on","off","customEventHandler","detail","location","isIOS","platform","document","documentHandler","windowHandler","push","sendInitMessage","isReactNativeWebView","setTimeout","readyState","handleLoad","handleDOMContentLoaded","useImperativeHandle","getEnvironment","jsx","View","styles","container","pointerEvents","displayName","createWebViewInjectedScript","handleNativeWebViewMessage","StyleSheet","create","width","height","position","opacity","_default"],"sourceRoot":"../../../components","sources":["WebViewBridge/WebViewBridge.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","detectEnvironment","window","isIframe","self","top","isWebView","test","navigator","userAgent","Platform","OS","encodeBase64","str","btoa","unescape","encodeURIComponent","Buffer","from","toString","Error","console","warn","decodeBase64","decodeURIComponent","escape","atob","createLogger","debug","logLevel","levels","currentLevelIndex","indexOf","shouldLog","level","levelIndex","error","args","info","log","validateOrigin","origin","allowedOrigins","strictOriginCheck","logger","length","isAllowed","some","allowed","includes","pattern","replace","regex","RegExp","validateFrom","messageFrom","allowedFrom","WebViewBridge","exports","forwardRef","onMessage","onError","initPayload","autoInit","initMessageType","enableBase64","showPlaceholder","style","testID","messageFilter","ref","environmentRef","useRef","messageIdCounterRef","initSentRef","messageHandlersRef","Map","loggerRef","cleanupFunctionsRef","useEffect","current","environment","hasWindow","hasReactNativeWebView","ReactNativeWebView","generateMessageId","useCallback","Date","now","convertToTapasSysFormat","message","tapasMessage","operate","type","payload","undefined","Array","isArray","action","_action","rest","data","keys","convertFromTapasSysFormat","parseMessage","decodedData","parsed","JSON","parse","timestamp","id","String","normalizeMessage","rawMessage","nativeEvent","sendMessage","messageJson","stringify","messageToSend","sent","postMessage","parent","handleMessage","eventOrigin","isValidOrigin","normalizedMessage","forEach","handler","cleanup","cleanupFn","clear","cleanupFunctions","customEventHandler","event","detail","location","addEventListener","push","removeEventListener","messageHandler","isIOS","platform","document","fn","sendInitMessage","isReactNativeWebView","setTimeout","readyState","handleLoad","handleDOMContentLoaded","useImperativeHandle","getEnvironment","jsx","View","styles","container","pointerEvents","displayName","createWebViewInjectedScript","handleNativeWebViewMessage","StyleSheet","create","width","height","position","opacity","_default"],"sourceRoot":"../../../components","sources":["WebViewBridge/WebViewBridge.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,187 @@
1
+ # WebViewBridge 组件优化总结
2
+
3
+ ## 优化时间
4
+ 2025-01-XX
5
+
6
+ ## 优化依据
7
+ 基于验证通过的 `webview-communication-demo` 实现,确保监听器注册和消息通信的正确性。
8
+
9
+ ---
10
+
11
+ ## 主要优化内容
12
+
13
+ ### 1. 简化监听器注册逻辑 ✅
14
+
15
+ **优化前**:
16
+ - 复杂的条件判断(iframe/webview/web)
17
+ - 不同环境使用不同的注册方式
18
+ - 代码重复,难以维护
19
+
20
+ **优化后**:
21
+ - 统一注册逻辑:所有环境都注册 `webviewmessage` 和 `message` 事件监听器
22
+ - 清晰的代码结构,易于理解和维护
23
+ - 双重保障机制,确保消息不丢失
24
+
25
+ ### 2. 优化消息接收处理 ✅
26
+
27
+ **优化前**:
28
+ - 不同环境使用不同的消息提取方式
29
+ - 消息格式处理不统一
30
+
31
+ **优化后**:
32
+ - 统一处理 `event.data`(字符串格式,tapas-sys 发送的格式)
33
+ - 正确处理 `webviewmessage` 自定义事件(`event.detail` 是消息对象)
34
+ - 支持 iframe 环境的特殊格式 `{ source, target, payload }`
35
+
36
+ ### 3. 改进日志记录 ✅
37
+
38
+ **优化前**:
39
+ - 日志记录不完整
40
+ - 难以追踪消息接收流程
41
+
42
+ **优化后**:
43
+ - 完整的日志记录(监听器注册、消息接收、消息处理)
44
+ - 清晰的日志级别(info/debug/error)
45
+ - 便于调试和问题排查
46
+
47
+ ---
48
+
49
+ ## 关键改进点
50
+
51
+ ### ✅ 监听器注册(双重保障)
52
+
53
+ ```typescript
54
+ // 1. webviewmessage 自定义事件(Bridgeless 兼容,tapas-sys 优先使用)
55
+ window.addEventListener('webviewmessage', customEventHandler);
56
+
57
+ // 2. message 标准事件(官方标准方式)
58
+ window.addEventListener('message', messageHandler);
59
+ ```
60
+
61
+ **优势**:
62
+ - ✅ 双重保障,确保消息不丢失
63
+ - ✅ 兼容 Bridgeless 模式(CustomEvent)
64
+ - ✅ 兼容标准方式(window.postMessage)
65
+
66
+ ### ✅ 消息接收处理
67
+
68
+ ```typescript
69
+ // webviewmessage 事件:event.detail 是消息对象
70
+ handleMessage(event.detail, window.location.origin);
71
+
72
+ // message 事件:event.data 是字符串(JSON.stringify 后的结果)
73
+ if (event.data && typeof event.data === 'string') {
74
+ handleMessage(event.data, event.origin);
75
+ }
76
+ ```
77
+
78
+ **优势**:
79
+ - ✅ 正确处理两种消息格式
80
+ - ✅ 自动提取和解析消息
81
+ - ✅ 支持 iframe 环境的特殊格式
82
+
83
+ ### ✅ 平台特定处理
84
+
85
+ ```typescript
86
+ // iOS: window.addEventListener("message")
87
+ // Android: window.document.addEventListener("message") + window.addEventListener("message")
88
+ ```
89
+
90
+ **优势**:
91
+ - ✅ 根据平台使用最合适的注册方式
92
+ - ✅ Android 双重保障(document + window)
93
+ - ✅ 兼容不同的实现方式
94
+
95
+ ---
96
+
97
+ ## 与 Demo 的一致性
98
+
99
+ ### ✅ 监听器注册时机
100
+ - Demo: 组件挂载时立即注册
101
+ - WebViewBridge: ✅ 组件挂载时立即注册(useEffect)
102
+
103
+ ### ✅ 监听器类型
104
+ - Demo: `webviewmessage` + `message`
105
+ - WebViewBridge: ✅ `webviewmessage` + `message`
106
+
107
+ ### ✅ 消息接收处理
108
+ - Demo: 提取 `event.data`(字符串)或 `event.detail`(对象)
109
+ - WebViewBridge: ✅ 正确处理两种格式
110
+
111
+ ### ✅ 错误处理
112
+ - Demo: try-catch + 日志记录
113
+ - WebViewBridge: ✅ try-catch + 日志记录
114
+
115
+ ---
116
+
117
+ ## 测试建议
118
+
119
+ ### 1. 监听器注册验证
120
+
121
+ **预期日志**:
122
+ ```
123
+ 🔧 [WebViewBridge] 开始注册消息监听器
124
+ ✅ [WebViewBridge] webviewmessage 事件监听器已注册
125
+ ✅ [WebViewBridge] iOS/Android message 事件监听器已注册
126
+ ✅ [WebViewBridge] 所有消息监听器已注册完成
127
+ ```
128
+
129
+ ### 2. 消息接收验证
130
+
131
+ **tapas-sys 发送消息时**:
132
+ - ✅ 应该看到 `🔔 [WebViewBridge] 收到 webviewmessage 自定义事件`
133
+ - ✅ 或 `🔔 [WebViewBridge] 收到 message 事件`
134
+
135
+ **消息处理验证**:
136
+ - ✅ 消息应该被正确解析和处理
137
+ - ✅ `onMessage` 回调应该被触发
138
+
139
+ ### 3. 双向通信验证
140
+
141
+ **WebView → Native**:
142
+ - ✅ 使用 `window.ReactNativeWebView.postMessage` 发送
143
+ - ✅ Native 端 `onMessage` 应该收到消息
144
+
145
+ **Native → WebView**:
146
+ - ✅ tapas-sys 使用 `injectJavaScript` + `CustomEvent` 发送
147
+ - ✅ WebViewBridge 应该收到并处理消息
148
+
149
+ ---
150
+
151
+ ## 兼容性
152
+
153
+ ### ✅ 环境支持
154
+ - ✅ iframe 环境
155
+ - ✅ WebView 环境(iOS/Android)
156
+ - ✅ Bridgeless 模式
157
+
158
+ ### ✅ 消息格式支持
159
+ - ✅ tapas-sys 格式:`{ operate, action, data, from }`
160
+ - ✅ WebViewMessage 格式:`{ type, payload, from }`
161
+ - ✅ Base64 编码/解码(可选)
162
+
163
+ ---
164
+
165
+ ## 总结
166
+
167
+ ### ✅ 优化成果
168
+
169
+ 1. **监听器注册**: 简化逻辑,双重保障,确保消息不丢失
170
+ 2. **消息接收**: 统一处理,支持多种格式
171
+ 3. **日志记录**: 完整详细,便于调试
172
+ 4. **兼容性**: 支持所有环境和消息格式
173
+
174
+ ### 📋 下一步
175
+
176
+ 1. 在 tapas-sys 中添加 `injectedJavaScriptBeforeContentLoaded`(双重保障)
177
+ 2. 在 tapas-sys 中添加 `onConsoleMessage`(便于调试)
178
+ 3. 测试验证优化后的实现
179
+
180
+ ---
181
+
182
+ ## 相关文档
183
+
184
+ - `WEBVIEW_IMPLEMENTATION_COMPARISON.md` - 详细对比分析
185
+ - `WEBVIEW_FIX_RECOMMENDATIONS.md` - 修复建议
186
+ - `WEBVIEW_DEMO_CONNECTION_VERIFICATION.md` - Demo 验证结果
187
+
@@ -359,6 +359,13 @@ export const WebViewBridge = /*#__PURE__*/forwardRef(({
359
359
  const normalizeMessage = useCallback(rawMessage => {
360
360
  let data = null;
361
361
 
362
+ // 🔧 修复:优先检查是否是 tapas-sys 格式({ operate, action, data })
363
+ // 这对于 webviewmessage 事件特别重要,因为 event.detail 直接是 tapas-sys 格式
364
+ if (rawMessage && typeof rawMessage === 'object' && rawMessage.operate !== undefined) {
365
+ loggerRef.current.debug('检测到 tapas-sys 格式消息,直接转换:', rawMessage);
366
+ return convertFromTapasSysFormat(rawMessage);
367
+ }
368
+
362
369
  // WebView 环境:消息通常在 data 字段中
363
370
  if (environmentRef.current === 'webview') {
364
371
  if (typeof rawMessage === 'string') {
@@ -368,10 +375,7 @@ export const WebViewBridge = /*#__PURE__*/forwardRef(({
368
375
  } else if (rawMessage?.data) {
369
376
  data = rawMessage.data;
370
377
  } else {
371
- // 直接是对象:检查是 tapas-sys 格式还是 WebViewMessage 格式
372
- if (rawMessage?.operate !== undefined) {
373
- return convertFromTapasSysFormat(rawMessage);
374
- }
378
+ // 直接是对象:检查是 WebViewMessage 格式
375
379
  return {
376
380
  type: rawMessage?.type || 'unknown',
377
381
  payload: rawMessage?.payload || rawMessage,
@@ -392,10 +396,7 @@ export const WebViewBridge = /*#__PURE__*/forwardRef(({
392
396
  // 降级:直接使用 event.data
393
397
  data = rawMessage.data;
394
398
  } else {
395
- // 直接是对象:检查是 tapas-sys 格式还是 WebViewMessage 格式
396
- if (rawMessage?.operate !== undefined) {
397
- return convertFromTapasSysFormat(rawMessage);
398
- }
399
+ // 直接是对象:检查是 WebViewMessage 格式
399
400
  return {
400
401
  type: rawMessage?.type || 'unknown',
401
402
  payload: rawMessage?.payload || rawMessage,
@@ -406,9 +407,6 @@ export const WebViewBridge = /*#__PURE__*/forwardRef(({
406
407
  }
407
408
  } else {
408
409
  // 未知环境:尝试通用解析
409
- if (rawMessage?.operate !== undefined) {
410
- return convertFromTapasSysFormat(rawMessage);
411
- }
412
410
  return {
413
411
  type: rawMessage?.type || 'unknown',
414
412
  payload: rawMessage?.payload || rawMessage,
@@ -634,154 +632,137 @@ export const WebViewBridge = /*#__PURE__*/forwardRef(({
634
632
  messageHandlersRef.current.clear();
635
633
  }, []);
636
634
 
637
- // 注册消息监听
635
+ // 注册消息监听(优化:基于验证通过的 demo 实现)
638
636
  useEffect(() => {
639
637
  loggerRef.current.info('🔧 [WebViewBridge] 开始注册消息监听器', {
640
638
  environment: environmentRef.current,
641
639
  hasWindow: typeof window !== 'undefined',
642
640
  hasReactNativeWebView: typeof window !== 'undefined' && !!window.ReactNativeWebView
643
641
  });
644
- let cleanupFn;
645
- if (environmentRef.current === 'iframe') {
646
- // iframe 环境:监听 window message 事件
647
- loggerRef.current.info('🔧 [WebViewBridge] iframe 环境:注册 window message 监听器');
648
- const messageHandler = event => {
649
- loggerRef.current.info('🔔 [WebViewBridge] 收到 iframe message 事件', event);
650
-
651
- // 🔧 修复:处理 iframe 环境的特殊消息格式 { source, target, payload }
652
- // 参考:tapas-orderly-client 发送的消息格式
653
- if (event.data && typeof event.data === 'object') {
654
- // 检查是否是 tapas-sys 返回的消息(target 应该是 btoa("tapas-orderly-client"))
655
- const expectedTarget = typeof btoa !== 'undefined' ? btoa('tapas-orderly-client') : 'tapas-orderly-client';
656
- if (event.data.target === expectedTarget && event.data.payload) {
657
- // 提取 payload(JSON 字符串)并传递给 handleMessage
658
- loggerRef.current.debug('🔔 [WebViewBridge] 检测到 tapas-sys 返回消息,提取 payload', event.data.payload);
659
- handleMessage(event.data.payload, event.origin);
660
- return;
661
- }
662
- }
642
+ if (typeof window === 'undefined') {
643
+ loggerRef.current.warn('⚠️ [WebViewBridge] window 不存在,无法注册监听器');
644
+ return;
645
+ }
646
+ const cleanupFunctions = [];
647
+
648
+ // ✅ 优化:基于验证通过的 demo,所有环境都需要注册以下监听器
649
+ // 1. webviewmessage 自定义事件(Bridgeless 兼容,tapas-sys 优先使用)
650
+ // 2. message 标准事件(官方标准方式)
651
+
652
+ // 1. 监听 webviewmessage 自定义事件(优先方式,Bridgeless 兼容)
653
+ const customEventHandler = event => {
654
+ loggerRef.current.info('🔔 [WebViewBridge] 收到 webviewmessage 自定义事件', {
655
+ detail: event.detail,
656
+ type: typeof event.detail
657
+ });
663
658
 
664
- // 降级:如果格式不匹配,尝试直接处理 event.data
659
+ // event.detail 是消息对象(tapas-sys 发送的格式)
660
+ // 直接传递给 handleMessage,normalizeMessage 会处理格式转换
661
+ try {
662
+ handleMessage(event.detail, window.location.origin);
663
+ } catch (e) {
664
+ loggerRef.current.error('处理 webviewmessage 事件失败', e);
665
+ }
666
+ };
667
+ window.addEventListener('webviewmessage', customEventHandler);
668
+ cleanupFunctions.push(() => {
669
+ window.removeEventListener('webviewmessage', customEventHandler);
670
+ });
671
+ loggerRef.current.info('✅ [WebViewBridge] webviewmessage 事件监听器已注册');
672
+
673
+ // 2. 监听 message 标准事件(官方标准方式)
674
+ const messageHandler = event => {
675
+ loggerRef.current.info('🔔 [WebViewBridge] 收到 message 事件', {
676
+ data: event.data,
677
+ type: typeof event.data,
678
+ origin: event.origin
679
+ });
680
+ try {
681
+ // ✅ 优化:根据 demo 验证,event.data 是字符串(JSON.stringify 后的结果)
682
+ // tapas-sys 使用 window.postMessage(JSON.stringify(message), '*') 发送
665
683
  if (event.data && typeof event.data === 'string') {
684
+ // 直接传递字符串给 handleMessage,parseMessage 会处理解析
685
+ loggerRef.current.debug('🔔 [WebViewBridge] 提取 event.data(字符串)', event.data);
666
686
  handleMessage(event.data, event.origin);
687
+ } else if (event.data && typeof event.data === 'object') {
688
+ // iframe 环境可能收到对象格式 { source, target, payload }
689
+ if (environmentRef.current === 'iframe' && event.data.payload) {
690
+ loggerRef.current.debug('🔔 [WebViewBridge] iframe 环境:提取 payload', event.data.payload);
691
+ handleMessage(event.data.payload, event.origin);
692
+ } else {
693
+ // 降级:传递整个 event.data
694
+ handleMessage(event.data, event.origin);
695
+ }
667
696
  } else {
697
+ // 降级:传递整个 event
668
698
  handleMessage(event, event.origin);
669
699
  }
670
- };
671
- if (typeof window !== 'undefined') {
672
- window.addEventListener('message', messageHandler);
673
- cleanupFn = () => {
674
- window.removeEventListener('message', messageHandler);
675
- };
676
- loggerRef.current.info('✅ [WebViewBridge] iframe message 事件监听器已注册');
700
+ } catch (e) {
701
+ loggerRef.current.error('处理 message 事件失败', e);
677
702
  }
703
+ };
704
+
705
+ // 根据环境注册 message 事件监听器
706
+ if (environmentRef.current === 'iframe') {
707
+ // iframe 环境:使用 window.addEventListener("message")
708
+ window.addEventListener('message', messageHandler);
709
+ cleanupFunctions.push(() => {
710
+ window.removeEventListener('message', messageHandler);
711
+ });
712
+ loggerRef.current.info('✅ [WebViewBridge] iframe message 事件监听器已注册 (window)');
678
713
  } else if (environmentRef.current === 'webview') {
679
- // WebView 环境:监听消息
680
- if (Platform.OS === 'web') {
681
- // Web 环境下的 WebView:监听 window message
682
- const messageHandler = event => {
683
- handleMessage(event, event.origin);
684
- };
685
- if (typeof window !== 'undefined') {
686
- window.addEventListener('message', messageHandler);
687
- cleanupFn = () => {
688
- window.removeEventListener('message', messageHandler);
689
- };
690
- }
714
+ // WebView 环境:根据平台注册
715
+ const isIOS = /iPad|iPhone|iPod/.test(navigator.platform) || navigator.userAgent.includes('Mac') && 'ontouchend' in document;
716
+ if (isIOS) {
717
+ // iOS: 使用 window.addEventListener("message")
718
+ window.addEventListener('message', messageHandler);
719
+ cleanupFunctions.push(() => {
720
+ window.removeEventListener('message', messageHandler);
721
+ });
722
+ loggerRef.current.info('✅ [WebViewBridge] iOS message 事件监听器已注册 (window)');
691
723
  } else {
692
- // 原生环境:监听 React Native WebView 的消息
693
- // 注意:在原生环境中,消息需要通过 WebView 组件的 onMessage prop 传递
694
- // 这里我们提供一个通用的监听机制,通过全局事件总线
695
- const messageHandler = event => {
696
- handleMessage(event);
697
- };
698
-
699
- // 使用自定义事件系统(如果存在)
700
- if (typeof global !== 'undefined' && global.__WebViewBridgeEventBus) {
701
- const eventBus = global.__WebViewBridgeEventBus;
702
- eventBus.on('message', messageHandler);
703
- cleanupFn = () => {
704
- eventBus.off('message', messageHandler);
705
- };
706
- } else if (typeof window !== 'undefined') {
707
- // 🔧 修复:根据之前的生效逻辑,WebView 环境需要:
708
- // 1. 监听 webviewmessage 自定义事件(tapas-orderly-client 使用)
709
- // tapas-sys 通过 injectJavaScript 调用 window.handleWebViewMessage(message)
710
- // 该函数会触发 webviewmessage 自定义事件
711
- // 2. 根据平台注册 message 事件监听器:
712
- // - iOS: window.addEventListener("message")
713
- // - Android: window.document.addEventListener("message")
714
-
715
- loggerRef.current.info('🔧 [WebViewBridge] WebView 环境:开始注册监听器');
716
-
717
- // 1. 监听 webviewmessage 自定义事件
718
- const customEventHandler = event => {
719
- loggerRef.current.info('🔔 [WebViewBridge] 收到 webviewmessage 自定义事件', event.detail);
720
- // 直接传递消息对象给 handleMessage(normalizeMessage 会处理格式转换)
721
- handleMessage(event.detail, window.location.origin);
722
- };
723
- window.addEventListener('webviewmessage', customEventHandler);
724
- loggerRef.current.info('✅ [WebViewBridge] webviewmessage 事件监听器已注册');
725
-
726
- // 2. 根据平台注册 message 事件监听器
727
- // 判断是否运行在 iOS 下
728
- const isIOS = /iPad|iPhone|iPod/.test(navigator.platform) || navigator.userAgent.includes('Mac') && 'ontouchend' in document;
729
- const messageHandler = event => {
730
- loggerRef.current.info('🔔 [WebViewBridge] 收到 message 事件', event);
731
-
732
- // 🔧 修复:webview 环境接收的消息是字符串(JSON.stringify 后的结果)
733
- // 需要提取 event.data(字符串)并传递给 handleMessage
734
- if (event && event.data) {
735
- // event.data 是字符串,直接传递
736
- loggerRef.current.debug('🔔 [WebViewBridge] 提取 event.data(字符串)', event.data);
737
- handleMessage(event.data, event.origin || window.location.origin);
738
- } else {
739
- // 降级:传递整个 event
740
- handleMessage(event, event.origin || window.location.origin);
741
- }
742
- };
743
- if (isIOS) {
744
- // iOS: 使用 window.addEventListener("message")
745
- window.addEventListener('message', messageHandler);
746
- loggerRef.current.info('✅ [WebViewBridge] iOS message 事件监听器已注册 (window)');
747
- cleanupFn = () => {
748
- window.removeEventListener('webviewmessage', customEventHandler);
749
- window.removeEventListener('message', messageHandler);
750
- };
751
- } else {
752
- // Android: 同时监听 window 和 document 的 message 事件
753
- // 因为不同的实现可能使用不同的方式
754
- // 1. 优先使用 window.document.addEventListener("message")(tapas-sys 使用)
755
- // 2. 同时监听 window.addEventListener("message")(React Native WebView 标准方式)
756
-
757
- let documentHandler = null;
758
- let windowHandler = null;
759
- if (window.document && typeof window.document.addEventListener === 'function') {
760
- documentHandler = messageHandler;
761
- window.document.addEventListener('message', documentHandler);
762
- loggerRef.current.info('✅ [WebViewBridge] Android message 事件监听器已注册 (document)');
724
+ // Android: 同时监听 window document(双重保障)
725
+ // 1. window.document.addEventListener("message") - tapas-sys 可能使用
726
+ // 2. window.addEventListener("message") - React Native WebView 标准方式
727
+
728
+ if (window.document && typeof window.document.addEventListener === 'function') {
729
+ window.document.addEventListener('message', messageHandler);
730
+ cleanupFunctions.push(() => {
731
+ if (window.document && typeof window.document.removeEventListener === 'function') {
732
+ window.document.removeEventListener('message', messageHandler);
763
733
  }
764
-
765
- // 同时监听 window.addEventListener("message") 作为备用
766
- windowHandler = messageHandler;
767
- window.addEventListener('message', windowHandler);
768
- loggerRef.current.info('✅ [WebViewBridge] Android message 事件监听器已注册 (window, 备用)');
769
- cleanupFn = () => {
770
- window.removeEventListener('webviewmessage', customEventHandler);
771
- if (documentHandler && window.document && typeof window.document.removeEventListener === 'function') {
772
- window.document.removeEventListener('message', documentHandler);
773
- }
774
- if (windowHandler) {
775
- window.removeEventListener('message', windowHandler);
776
- }
777
- };
778
- }
734
+ });
735
+ loggerRef.current.info('✅ [WebViewBridge] Android message 事件监听器已注册 (document)');
779
736
  }
737
+
738
+ // 同时监听 window(备用)
739
+ window.addEventListener('message', messageHandler);
740
+ cleanupFunctions.push(() => {
741
+ window.removeEventListener('message', messageHandler);
742
+ });
743
+ loggerRef.current.info('✅ [WebViewBridge] Android message 事件监听器已注册 (window, 备用)');
780
744
  }
745
+ } else {
746
+ // 未知环境:使用 window.addEventListener("message") 作为降级
747
+ window.addEventListener('message', messageHandler);
748
+ cleanupFunctions.push(() => {
749
+ window.removeEventListener('message', messageHandler);
750
+ });
751
+ loggerRef.current.info('✅ [WebViewBridge] 未知环境 message 事件监听器已注册 (window, 降级)');
781
752
  }
782
- if (cleanupFn) {
783
- cleanupFunctionsRef.current.push(cleanupFn);
784
- }
753
+
754
+ // 保存清理函数
755
+ const cleanupFn = () => {
756
+ cleanupFunctions.forEach(fn => {
757
+ try {
758
+ fn();
759
+ } catch (e) {
760
+ loggerRef.current.error('清理监听器失败', e);
761
+ }
762
+ });
763
+ };
764
+ cleanupFunctionsRef.current.push(cleanupFn);
765
+ loggerRef.current.info('✅ [WebViewBridge] 所有消息监听器已注册完成');
785
766
  return cleanupFn;
786
767
  }, [handleMessage]);
787
768
 
@@ -1 +1 @@
1
- {"version":3,"names":["React","useEffect","useRef","useCallback","useImperativeHandle","forwardRef","Platform","View","StyleSheet","jsx","_jsx","detectEnvironment","window","isIframe","self","top","isWebView","test","navigator","userAgent","OS","e","encodeBase64","str","btoa","unescape","encodeURIComponent","Buffer","from","toString","Error","console","warn","decodeBase64","decodeURIComponent","escape","atob","createLogger","debug","logLevel","levels","currentLevelIndex","indexOf","shouldLog","level","levelIndex","error","args","info","log","validateOrigin","origin","allowedOrigins","strictOriginCheck","logger","length","isAllowed","some","allowed","includes","pattern","replace","regex","RegExp","validateFrom","messageFrom","allowedFrom","WebViewBridge","onMessage","onError","initPayload","autoInit","initMessageType","enableBase64","showPlaceholder","style","testID","messageFilter","ref","environmentRef","messageIdCounterRef","initSentRef","messageHandlersRef","Map","loggerRef","cleanupFunctionsRef","current","environment","hasWindow","hasReactNativeWebView","ReactNativeWebView","generateMessageId","Date","now","convertToTapasSysFormat","message","tapasMessage","operate","type","payload","undefined","Array","isArray","action","_action","rest","data","Object","keys","convertFromTapasSysFormat","parseMessage","decodedData","parsed","JSON","parse","timestamp","id","String","normalizeMessage","rawMessage","nativeEvent","sendMessage","messageJson","stringify","messageToSend","sent","postMessage","parent","handleMessage","eventOrigin","isValidOrigin","normalizedMessage","forEach","handler","cleanup","cleanupFn","clear","messageHandler","event","expectedTarget","target","addEventListener","removeEventListener","global","__WebViewBridgeEventBus","eventBus","on","off","customEventHandler","detail","location","isIOS","platform","document","documentHandler","windowHandler","push","sendInitMessage","isReactNativeWebView","setTimeout","readyState","handleLoad","handleDOMContentLoaded","getEnvironment","styles","container","pointerEvents","displayName","createWebViewInjectedScript","handleNativeWebViewMessage","create","width","height","position","opacity"],"sourceRoot":"../../../components","sources":["WebViewBridge/WebViewBridge.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useEffect","useRef","useCallback","useImperativeHandle","forwardRef","Platform","View","StyleSheet","jsx","_jsx","detectEnvironment","window","isIframe","self","top","isWebView","test","navigator","userAgent","OS","e","encodeBase64","str","btoa","unescape","encodeURIComponent","Buffer","from","toString","Error","console","warn","decodeBase64","decodeURIComponent","escape","atob","createLogger","debug","logLevel","levels","currentLevelIndex","indexOf","shouldLog","level","levelIndex","error","args","info","log","validateOrigin","origin","allowedOrigins","strictOriginCheck","logger","length","isAllowed","some","allowed","includes","pattern","replace","regex","RegExp","validateFrom","messageFrom","allowedFrom","WebViewBridge","onMessage","onError","initPayload","autoInit","initMessageType","enableBase64","showPlaceholder","style","testID","messageFilter","ref","environmentRef","messageIdCounterRef","initSentRef","messageHandlersRef","Map","loggerRef","cleanupFunctionsRef","current","environment","hasWindow","hasReactNativeWebView","ReactNativeWebView","generateMessageId","Date","now","convertToTapasSysFormat","message","tapasMessage","operate","type","payload","undefined","Array","isArray","action","_action","rest","data","Object","keys","convertFromTapasSysFormat","parseMessage","decodedData","parsed","JSON","parse","timestamp","id","String","normalizeMessage","rawMessage","nativeEvent","sendMessage","messageJson","stringify","messageToSend","sent","postMessage","parent","handleMessage","eventOrigin","isValidOrigin","normalizedMessage","forEach","handler","cleanup","cleanupFn","clear","cleanupFunctions","customEventHandler","event","detail","location","addEventListener","push","removeEventListener","messageHandler","isIOS","platform","document","fn","sendInitMessage","isReactNativeWebView","setTimeout","readyState","handleLoad","handleDOMContentLoaded","getEnvironment","styles","container","pointerEvents","displayName","createWebViewInjectedScript","handleNativeWebViewMessage","create","width","height","position","opacity"],"sourceRoot":"../../../components","sources":["WebViewBridge/WebViewBridge.tsx"],"mappings":"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rB,CAAC;AAEN,CACF,CAAC;AAED5F,aAAa,CAAC6F,WAAW,GAAG,eAAe;;AAE3C;AACA;AACA;AACA;AACA,OAAO,MAAMC,2BAA2B,GAAGA,CAAA,KAAM;EAC/C,OAAO;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,CAAC;;AAED;AACA;AACA;AACA;AACA,OAAO,MAAMC,0BAA0B,GAAGA,CACxCvB,KAAU,EACVvE,SAA4C,KACzC;EACH,IAAI;IACF,MAAMsC,IAAI,GAAGiC,KAAK,CAACnB,WAAW,EAAEd,IAAI,IAAIiC,KAAK,CAACjC,IAAI,IAAIiC,KAAK;IAC3D,MAAM5C,OAAuB,GAAG,OAAOW,IAAI,KAAK,QAAQ,GACpDO,IAAI,CAACC,KAAK,CAACR,IAAI,CAAC,GAChBA,IAAI;IAERtC,SAAS,CAAC2B,OAAO,CAAC;EACpB,CAAC,CAAC,OAAO1E,CAAC,EAAE;IACVU,OAAO,CAACe,KAAK,CAAC,yBAAyB,EAAEzB,CAAC,CAAC;EAC7C;AACF,CAAC;AAED,MAAMwI,MAAM,GAAGrJ,UAAU,CAAC2J,MAAM,CAAC;EAC/BL,SAAS,EAAE;IACTM,KAAK,EAAE,CAAC;IACRC,MAAM,EAAE,CAAC;IACTC,QAAQ,EAAE,UAAU;IACpBC,OAAO,EAAE,CAAC;IACVR,aAAa,EAAE;EACjB;AACF,CAAC,CAAC;AAEF,eAAe5F,aAAa","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@beppla/tapas-ui",
3
- "version": "1.2.19",
3
+ "version": "1.2.21",
4
4
  "description": "Tapas UI Component Library - A comprehensive React Native component library with Expo support",
5
5
  "main": "./commonjs/index.js",
6
6
  "module": "./module/index.js",
@@ -1 +1 @@
1
- {"version":3,"file":"WebViewBridge.d.ts","sourceRoot":"","sources":["../../../components/WebViewBridge/WebViewBridge.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAA0E,MAAM,OAAO,CAAC;AAG/F,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAEpE,MAAM,WAAW,kBAAkB;IACjC;;;;OAIG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,IAAI,CAAC;IAE9C;;;;OAIG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAA;KAAE,KAAK,IAAI,CAAC;IAE9F;;OAEG;IACH,WAAW,CAAC,EAAE,GAAG,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B;;OAEG;IACH,KAAK,CAAC,EAAE,GAAG,CAAC;IAEZ;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAE1B;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IAEvB;;;OAGG;IACH,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,OAAO,CAAC;IAErD;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B;;;;;OAKG;IACH,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC;IAEtD;;OAEG;IACH,cAAc,EAAE,MAAM,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;IAEvD;;OAEG;IACH,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAA;AA2MD,eAAO,MAAM,aAAa,6FAurBzB,CAAC;AAIF;;;GAGG;AACH,eAAO,MAAM,2BAA2B,cA4EvC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,0BAA0B,GACrC,OAAO,GAAG,EACV,WAAW,CAAC,OAAO,EAAE,cAAc,KAAK,IAAI,SAY7C,CAAC;AAYF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"WebViewBridge.d.ts","sourceRoot":"","sources":["../../../components/WebViewBridge/WebViewBridge.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAA0E,MAAM,OAAO,CAAC;AAG/F,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAEpE,MAAM,WAAW,kBAAkB;IACjC;;;;OAIG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,IAAI,CAAC;IAE9C;;;;OAIG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAA;KAAE,KAAK,IAAI,CAAC;IAE9F;;OAEG;IACH,WAAW,CAAC,EAAE,GAAG,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B;;OAEG;IACH,KAAK,CAAC,EAAE,GAAG,CAAC;IAEZ;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAE1B;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IAEvB;;;OAGG;IACH,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,OAAO,CAAC;IAErD;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B;;;;;OAKG;IACH,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC;IAEtD;;OAEG;IACH,cAAc,EAAE,MAAM,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;IAEvD;;OAEG;IACH,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAA;AA2MD,eAAO,MAAM,aAAa,6FA+pBzB,CAAC;AAIF;;;GAGG;AACH,eAAO,MAAM,2BAA2B,cA4EvC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,0BAA0B,GACrC,OAAO,GAAG,EACV,WAAW,CAAC,OAAO,EAAE,cAAc,KAAK,IAAI,SAY7C,CAAC;AAYF,eAAe,aAAa,CAAC"}