yuzhilin

跳转

1 import { Action } from './Action'; 1 import { Action } from './Action';
2 interface dataObject { 2 interface dataObject {
  3 + // dataSource:
  4 + // 1、图文详情数据
  5 + // 2、英文端跳转推荐内容数据
  6 + // 3、显示图片预览
  7 + // 4、专题pageinfo数据
  8 + // 5、专题comp运营位点击跳转(传给App记录浏览历史)
  9 + // 6、图文详情引用内容跳转
  10 + // 7、专题分享海报图上的数据列表(H5可选第一页前5条运营位数据)
  11 + // 8、活动投稿 文章跳转
  12 + // 9、活动投稿 视频跳转
  13 + // 10、活动投稿 动态跳转
  14 + // 11、活动投稿 图集跳转
3 dataSource: number 15 dataSource: number
4 operateType?: string 16 operateType?: string
5 webViewHeight?: string 17 webViewHeight?: string
@@ -14,6 +14,7 @@ const TAG = 'JsBridgeBiz' @@ -14,6 +14,7 @@ const TAG = 'JsBridgeBiz'
14 */ 14 */
15 export function performJSCallNative(data: Message, call: Callback) { 15 export function performJSCallNative(data: Message, call: Callback) {
16 Logger.debug(TAG, 'performJSCallNative handlerName: ' + data.handlerName + ', data: ' + JSON.stringify(data.data)) 16 Logger.debug(TAG, 'performJSCallNative handlerName: ' + data.handlerName + ', data: ' + JSON.stringify(data.data))
  17 +
17 switch (data.handlerName) { 18 switch (data.handlerName) {
18 case H5CallNativeType.jsCall_currentPageOperate: 19 case H5CallNativeType.jsCall_currentPageOperate:
19 break; 20 break;
@@ -24,12 +25,13 @@ export function performJSCallNative(data: Message, call: Callback) { @@ -24,12 +25,13 @@ export function performJSCallNative(data: Message, call: Callback) {
24 case H5CallNativeType.jsCall_getArticleDetailBussinessData: 25 case H5CallNativeType.jsCall_getArticleDetailBussinessData:
25 break; 26 break;
26 case H5CallNativeType.jsCall_callAppService: 27 case H5CallNativeType.jsCall_callAppService:
  28 + handleJsCallCallAppService(data)
27 break; 29 break;
28 case H5CallNativeType.jsCall_receiveH5Data: 30 case H5CallNativeType.jsCall_receiveH5Data:
29 - if(data?.data?.dataSource === 5){  
30 - handleH5Data(JSON.parse(data?.data?.dataJson || '{}'))  
31 -  
32 - } 31 + handleJsCallReceiveH5Data(data)
  32 + break;
  33 + case H5CallNativeType.jsCall_appInnerLinkMethod:
  34 + handleJsCallAppInnerLinkMethod(data)
33 break; 35 break;
34 case 'changeNativeMessage': 36 case 'changeNativeMessage':
35 call("this is change Web Message") 37 call("this is change Web Message")
@@ -51,17 +53,35 @@ class AppInfo { @@ -51,17 +53,35 @@ class AppInfo {
51 * 获取App公共信息 53 * 获取App公共信息
52 */ 54 */
53 function getAppPublicInfo(): string { 55 function getAppPublicInfo(): string {
  56 +
54 let info = new AppInfo() 57 let info = new AppInfo()
55 info.plat = 'Phone' 58 info.plat = 'Phone'
56 // 直接用Android,后续适配再新增鸿蒙 59 // 直接用Android,后续适配再新增鸿蒙
57 info.system = 'Android' 60 info.system = 'Android'
58 info.networkStatus = 1 61 info.networkStatus = 1
59 let result = JSON.stringify(info) 62 let result = JSON.stringify(info)
  63 + Logger.debug(TAG, 'getAppPublicInfo: ' + JSON.stringify(info))
  64 +
60 return result; 65 return result;
61 } 66 }
62 67
63 -function handleH5Data(content:ContentDTO) {  
64 - Logger.debug(TAG, 'handleH5Data' + ', content: ' + JSON.stringify(content))  
65 - ProcessUtils.processPage(content) 68 +function handleJsCallReceiveH5Data(data: Message) {
  69 + switch (data?.data?.dataSource) {
  70 + case 5:
  71 + if (data?.data?.dataSource === 5) {
  72 + ProcessUtils.processPage(JSON.parse(data?.data?.dataJson || '{}'))
  73 + }
  74 + break;
  75 + default:
  76 +
  77 + break;
  78 + }
  79 +}
  80 +
  81 +function handleJsCallCallAppService(data: Message) {
  82 +
  83 +}
  84 +
  85 +function handleJsCallAppInnerLinkMethod(data: Message) {
66 } 86 }
67 87
@@ -14,9 +14,9 @@ @@ -14,9 +14,9 @@
14 <meta name="apple-mobile-web-app-capable" content="yes" /> 14 <meta name="apple-mobile-web-app-capable" content="yes" />
15 <!-- 设置苹果工具栏颜色 --> 15 <!-- 设置苹果工具栏颜色 -->
16 <meta name="apple-mobile-web-app-status-bar-style" content="black" /> 16 <meta name="apple-mobile-web-app-status-bar-style" content="black" />
17 - <script src="./js/plugin/vconsole.min.js"></script> 17 +<!-- <script src="./js/plugin/vconsole.min.js"></script>-->
18 <script> 18 <script>
19 - new VConsole() 19 + //new VConsole()
20 var hasDetails = false 20 var hasDetails = false
21 21
22 function getTime() { 22 function getTime() {