From 5954f5170180f763d5854ed6a15fb198300f76ff Mon Sep 17 00:00:00 2001 From: XiuYun CHEN Date: Thu, 10 Jul 2025 08:57:32 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E4=BA=91=E4=BF=A1=E7=9B=B8?= =?UTF-8?q?=E5=85=B3=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .hvigor/outputs/build-logs/build.log | 27293 +++++++++++++++- build-profile.json5 | 50 +- chatkit/.gitignore | 6 + chatkit/BuildProfile.ets | 17 + chatkit/Index.ets | 78 + chatkit/build-profile.json5 | 31 + chatkit/consumer-rules.txt | 0 chatkit/hvigorfile.ts | 13 + chatkit/obfuscation-rules.txt | 23 + chatkit/oh-package-lock.json5 | 132 + chatkit/oh-package.json5 | 21 + chatkit/src/main/ets/ChatKitClient.ets | 185 + chatkit/src/main/ets/IMKitConfigCenter.ets | 13 + chatkit/src/main/ets/NEFriendUserCache.ets | 194 + .../src/main/ets/cache/TeamMemberCache.ets | 379 + chatkit/src/main/ets/constant/Constant.ets | 47 + chatkit/src/main/ets/logger/AppLogger.ets | 62 + chatkit/src/main/ets/logger/LoggerKitImpl.ets | 248 + chatkit/src/main/ets/logger/LoggerRequest.ets | 31 + .../ets/model/ConversationSelectModel.ets | 14 + .../ets/model/ConversationSelectParam.ets | 23 + .../ets/model/ConversationSelectedParam.ets | 20 + .../ets/model/CustomMessageAttachment.ets | 57 + .../src/main/ets/model/NEUserWithFriend.ets | 64 + .../src/main/ets/model/PersonSelectParam.ets | 21 + .../main/ets/model/RevokeMessageExtension.ets | 14 + .../src/main/ets/model/TeamMemberWithUser.ets | 131 + .../src/main/ets/model/TeamSettingParam.ets | 4 + .../main/ets/model/ait/AitAllPermission.ets | 14 + chatkit/src/main/ets/model/ait/AitMessage.ets | 63 + chatkit/src/main/ets/model/ait/AitModel.ets | 271 + chatkit/src/main/ets/model/ait/AitSegment.ets | 18 + chatkit/src/main/ets/repo/ChatRepo.ets | 514 + chatkit/src/main/ets/repo/ContactRepo.ets | 338 + .../src/main/ets/repo/ConversationRepo.ets | 282 + .../main/ets/repo/LocalConversationRepo.ets | 282 + chatkit/src/main/ets/repo/SettingRepo.ets | 103 + chatkit/src/main/ets/repo/StorageRepo.ets | 104 + chatkit/src/main/ets/repo/TeamRepo.ets | 649 + .../src/main/ets/utils/CustomMessageUtils.ets | 57 + chatkit/src/main/ets/utils/ErrorUtils.ets | 54 + chatkit/src/main/ets/utils/EventHubUtil.ets | 25 + chatkit/src/main/ets/utils/MessageUtils.ets | 53 + chatkit/src/main/ets/utils/Utils.ets | 18 + chatkit/src/main/module.json5 | 11 + .../main/resources/base/element/string.json | 76 + .../main/resources/en_US/element/string.json | 76 + .../main/resources/zh_CN/element/string.json | 76 + .../src/ohosTest/ets/test/Ability.test.ets | 42 + chatkit/src/ohosTest/ets/test/List.test.ets | 12 + chatkit/src/ohosTest/module.json5 | 13 + chatkit/src/test/List.test.ets | 12 + chatkit/src/test/LocalUnit.test.ets | 40 + chatkit_ui/.gitignore | 7 + chatkit_ui/BuildProfile.ets | 17 + chatkit_ui/Index.ets | 16 + chatkit_ui/build-profile.json5 | 28 + chatkit_ui/consumer-rules.txt | 0 chatkit_ui/hvigorfile.ts | 13 + chatkit_ui/obfuscation-rules.txt | 23 + chatkit_ui/oh-package.json5 | 19 + chatkit_ui/src/main/ets/ChatKitConfig.ets | 16 + chatkit_ui/src/main/ets/common/ChatUtils.ets | 365 + chatkit_ui/src/main/ets/common/DateUtils.ets | 57 + .../src/main/ets/common/DeviceUtils.ets | 23 + chatkit_ui/src/main/ets/common/FileUtils.ets | 63 + .../src/main/ets/common/MessageHelper.ets | 1236 + .../src/main/ets/constants/ChatConst.ets | 55 + .../src/main/ets/manager/AudioManager.ets | 150 + .../main/ets/manager/AudioPlayerManager.ets | 159 + .../main/ets/manager/AudioRecordManager.ets | 129 + .../main/ets/manager/NEAudioMetaManager.ets | 108 + .../src/main/ets/manager/NEEmojiManager.ets | 157 + .../src/main/ets/manager/ait/AitManager.ets | 121 + chatkit_ui/src/main/ets/model/ChatAitNode.ets | 17 + chatkit_ui/src/main/ets/model/ChatInfo.ets | 429 + .../src/main/ets/model/ChatTeamInfo.ets | 227 + .../src/main/ets/model/ChatUserInfo.ets | 205 + .../src/main/ets/model/MergeMessageInfo.ets | 30 + .../main/ets/model/MessageOperationItem.ets | 36 + .../ets/model/NEChatMoreOperationData.ets | 24 + chatkit_ui/src/main/ets/model/NERectData.ets | 17 + .../src/main/ets/model/NIMMessageInfo.ets | 358 + .../src/main/ets/model/TeamDataResult.ets | 14 + chatkit_ui/src/main/ets/pages/ChatP2PPage.ets | 1429 + .../main/ets/pages/ChatReadReceiptPage.ets | 164 + .../src/main/ets/pages/ChatTeamPage.ets | 1432 + .../main/ets/pages/MergeMessageDetailPage.ets | 203 + .../src/main/ets/pages/PinMessagePage.ets | 420 + .../src/main/ets/pages/QuickMessagePage.ets | 249 + .../src/main/ets/pages/TeamHistoryPage.ets | 166 + .../src/main/ets/pages/UserSettingPage.ets | 251 + .../src/main/ets/view/ChatAitDialog.ets | 209 + .../src/main/ets/view/ChatInputView.ets | 457 + .../main/ets/view/ChatMoreOperationLayout.ets | 38 + .../src/main/ets/view/ChatMultiSelectView.ets | 74 + .../main/ets/view/ForwardMessageDialog.ets | 160 + .../main/ets/view/MessageAudioItemView.ets | 113 + .../src/main/ets/view/MessageComponent.ets | 568 + .../main/ets/view/MessageComponentBuilder.ets | 972 + .../src/main/ets/view/MessageItemClick.ets | 28 + .../ets/view/MessageOperationItemView.ets | 27 + .../main/ets/view/MessageOperationView.ets | 61 + .../src/main/ets/view/NEAudioRecordView.ets | 290 + .../src/main/ets/view/NECameraSelectView.ets | 141 + .../src/main/ets/view/NEChatEmojiListItem.ets | 48 + .../src/main/ets/view/NEChatEmojiView.ets | 114 + .../src/main/ets/view/NEImageButton.ets | 37 + chatkit_ui/src/main/ets/view/NewWaDialog.ets | 38 + .../src/main/ets/view/OperationItemLayout.ets | 53 + .../src/main/ets/view/PinMessageComponent.ets | 134 + chatkit_ui/src/main/ets/view/TeachDialog.ets | 46 + .../main/ets/view/TeamExitWarningDialog.ets | 77 + .../main/ets/view/TeamLeftWarningDialog.ets | 49 + .../main/ets/view/TextMessageDetailDialog.ets | 59 + .../main/ets/viewmodel/ChatBaseViewModel.ets | 1142 + .../main/ets/viewmodel/ChatP2PViewModel.ets | 227 + .../main/ets/viewmodel/ChatPinViewModel.ets | 279 + .../viewmodel/ChatReadReceiptViewModel.ets | 76 + .../main/ets/viewmodel/ChatTeamViewModel.ets | 336 + .../viewmodel/MergeMessageDetailViewModel.ets | 96 + .../src/main/ets/viewmodel/TabBarItem.ets | 12 + .../src/main/ets/viewmodel/TabsViewModel.ets | 35 + .../ets/viewmodel/TeamHistoryViewModel.ets | 95 + .../ets/viewmodel/UserSettingViewModel.ets | 78 + chatkit_ui/src/main/module.json5 | 54 + .../main/resources/base/element/color.json | 68 + .../main/resources/base/element/float.json | 24 + .../main/resources/base/element/string.json | 425 + .../main/resources/base/media/add_drawle.png | Bin 0 -> 6432 bytes .../main/resources/base/media/green_bg.png | Bin 0 -> 1718 bytes .../base/media/ic_chat_audio_receive.svg | 15 + .../base/media/ic_chat_audio_send.svg | 15 + .../base/media/ic_chat_call_audio.png | Bin 0 -> 1036 bytes .../base/media/ic_chat_call_video.svg | 20 + .../base/media/ic_chat_file_excel.svg | 23 + .../base/media/ic_chat_file_image.svg | 16 + .../resources/base/media/ic_chat_file_mp3.svg | 23 + .../base/media/ic_chat_file_other.svg | 23 + .../resources/base/media/ic_chat_file_pdf.svg | 23 + .../resources/base/media/ic_chat_file_ppt.svg | 23 + .../resources/base/media/ic_chat_file_rar.svg | 43 + .../resources/base/media/ic_chat_file_txt.svg | 16 + .../base/media/ic_chat_file_unknown.svg | 23 + .../base/media/ic_chat_file_video.svg | 18 + .../base/media/ic_chat_file_word.svg | 23 + .../base/media/ic_chat_flle_keynote.svg | 23 + .../base/media/ic_chat_location_default.png | Bin 0 -> 4436 bytes .../base/media/ic_chat_menu_collection.svg | 14 + .../base/media/ic_chat_menu_copy.svg | 20 + .../base/media/ic_chat_menu_delete.svg | 37 + .../base/media/ic_chat_menu_multi_select.svg | 26 + .../resources/base/media/ic_chat_menu_pin.svg | 18 + .../base/media/ic_chat_menu_reply.svg | 14 + .../base/media/ic_chat_menu_revoke.svg | 20 + .../base/media/ic_chat_menu_translate.svg | 26 + .../base/media/ic_chat_message_pin.svg | 18 + .../base/media/ic_chat_message_sending.png | Bin 0 -> 1131 bytes .../media/ic_chat_message_status_fail.svg | 13 + .../base/media/ic_chat_message_video.svg | 26 + .../base/media/ic_chat_more_location.svg | 14 + .../base/media/ic_chat_read_status_read.svg | 13 + .../base/media/ic_chat_read_status_unread.svg | 9 + .../base/media/ic_chat_reply_close.svg | 14 + .../base/media/ic_chat_select_delete.svg | 35 + .../base/media/ic_chat_select_delete_dis.png | Bin 0 -> 2473 bytes .../base/media/ic_chat_select_forward.svg | 36 + .../base/media/ic_chat_select_forward_dis.svg | 19 + .../media/ic_chat_select_multi_forward.svg | 36 + .../ic_chat_select_multi_forward_dis.png | Bin 0 -> 3134 bytes .../main/resources/base/media/ic_down_arr.svg | 22 + .../resources/base/media/ic_member_all.svg | 21 + .../resources/base/media/ic_public_back.svg | 24 + .../base/media/ic_public_chat_emoji.png | Bin 0 -> 1648 bytes .../media/ic_public_chat_emoji_select.svg | 36 + .../base/media/ic_public_chat_file.svg | 20 + .../base/media/ic_public_chat_image.svg | 20 + .../base/media/ic_public_chat_more.png | Bin 0 -> 1109 bytes .../base/media/ic_public_chat_more_select.svg | 20 + .../base/media/ic_public_chat_photo.svg | 20 + .../base/media/ic_public_chat_speaker.png | Bin 0 -> 1842 bytes .../media/ic_public_chat_speaker_select.svg | 20 + .../base/media/ic_public_more_dot.svg | 27 + .../base/media/ic_public_record_speaker.svg | 20 + .../media/ic_public_record_speaker_press.svg | 20 + .../resources/base/media/ic_sound_from_1.svg | 12 + .../resources/base/media/ic_sound_from_2.svg | 12 + .../resources/base/media/ic_sound_from_3.svg | 15 + .../resources/base/media/ic_sound_to_1.svg | 12 + .../resources/base/media/ic_sound_to_2.svg | 12 + .../resources/base/media/ic_sound_to_3.svg | 15 + .../resources/base/media/ic_tabs_icon.png | Bin 0 -> 3495 bytes .../base/media/ic_tabs_icon_selected.png | Bin 0 -> 3207 bytes .../src/main/resources/base/media/icon.png | Bin 0 -> 14248 bytes .../base/media/icon_chatting_file.png | Bin 0 -> 11117 bytes .../resources/base/media/im_icon_camera.png | Bin 0 -> 3779 bytes .../resources/base/media/im_icon_images.png | Bin 0 -> 4388 bytes .../main/resources/base/media/mine_logo.png | Bin 0 -> 24460 bytes .../resources/base/media/outpatient_true.png | Bin 0 -> 2566 bytes .../base/media/patient_teach_call.png | Bin 0 -> 2703 bytes .../resources/base/media/quck_message.png | Bin 0 -> 2499 bytes .../base/media/ytx_chatting_hospital.png | Bin 0 -> 1801 bytes .../media/ytx_chattingfooter_shopping.png | Bin 0 -> 2602 bytes .../resources/base/profile/route_map.json | 68 + .../main/resources/en_US/element/string.json | 380 + .../main/resources/rawfile/emoji/emoji_00.png | Bin 0 -> 1889 bytes .../main/resources/rawfile/emoji/emoji_01.png | Bin 0 -> 1825 bytes .../main/resources/rawfile/emoji/emoji_02.png | Bin 0 -> 1954 bytes .../main/resources/rawfile/emoji/emoji_03.png | Bin 0 -> 1922 bytes .../main/resources/rawfile/emoji/emoji_04.png | Bin 0 -> 1835 bytes .../main/resources/rawfile/emoji/emoji_05.png | Bin 0 -> 2326 bytes .../main/resources/rawfile/emoji/emoji_06.png | Bin 0 -> 1864 bytes .../main/resources/rawfile/emoji/emoji_07.png | Bin 0 -> 1956 bytes .../main/resources/rawfile/emoji/emoji_08.png | Bin 0 -> 2072 bytes .../main/resources/rawfile/emoji/emoji_09.png | Bin 0 -> 2259 bytes .../main/resources/rawfile/emoji/emoji_10.png | Bin 0 -> 2050 bytes .../main/resources/rawfile/emoji/emoji_11.png | Bin 0 -> 1776 bytes .../main/resources/rawfile/emoji/emoji_12.png | Bin 0 -> 2216 bytes .../main/resources/rawfile/emoji/emoji_13.png | Bin 0 -> 1535 bytes .../main/resources/rawfile/emoji/emoji_14.png | Bin 0 -> 2139 bytes .../main/resources/rawfile/emoji/emoji_15.png | Bin 0 -> 2267 bytes .../main/resources/rawfile/emoji/emoji_16.png | Bin 0 -> 2342 bytes .../main/resources/rawfile/emoji/emoji_17.png | Bin 0 -> 2602 bytes .../main/resources/rawfile/emoji/emoji_18.png | Bin 0 -> 2479 bytes .../main/resources/rawfile/emoji/emoji_19.png | Bin 0 -> 2234 bytes .../main/resources/rawfile/emoji/emoji_20.png | Bin 0 -> 2338 bytes .../main/resources/rawfile/emoji/emoji_21.png | Bin 0 -> 2285 bytes .../main/resources/rawfile/emoji/emoji_22.png | Bin 0 -> 2440 bytes .../main/resources/rawfile/emoji/emoji_23.png | Bin 0 -> 2051 bytes .../main/resources/rawfile/emoji/emoji_24.png | Bin 0 -> 2504 bytes .../main/resources/rawfile/emoji/emoji_25.png | Bin 0 -> 2147 bytes .../main/resources/rawfile/emoji/emoji_26.png | Bin 0 -> 1900 bytes .../main/resources/rawfile/emoji/emoji_27.png | Bin 0 -> 1969 bytes .../main/resources/rawfile/emoji/emoji_28.png | Bin 0 -> 1466 bytes .../main/resources/rawfile/emoji/emoji_29.png | Bin 0 -> 1280 bytes .../main/resources/rawfile/emoji/emoji_30.png | Bin 0 -> 1912 bytes .../main/resources/rawfile/emoji/emoji_31.png | Bin 0 -> 1693 bytes .../main/resources/rawfile/emoji/emoji_32.png | Bin 0 -> 1567 bytes .../main/resources/rawfile/emoji/emoji_33.png | Bin 0 -> 2274 bytes .../main/resources/rawfile/emoji/emoji_34.png | Bin 0 -> 1805 bytes .../main/resources/rawfile/emoji/emoji_35.png | Bin 0 -> 2061 bytes .../main/resources/rawfile/emoji/emoji_36.png | Bin 0 -> 1739 bytes .../main/resources/rawfile/emoji/emoji_37.png | Bin 0 -> 2598 bytes .../main/resources/rawfile/emoji/emoji_38.png | Bin 0 -> 1572 bytes .../main/resources/rawfile/emoji/emoji_39.png | Bin 0 -> 1848 bytes .../main/resources/rawfile/emoji/emoji_40.png | Bin 0 -> 1595 bytes .../main/resources/rawfile/emoji/emoji_41.png | Bin 0 -> 1734 bytes .../main/resources/rawfile/emoji/emoji_42.png | Bin 0 -> 1781 bytes .../main/resources/rawfile/emoji/emoji_43.png | Bin 0 -> 1625 bytes .../main/resources/rawfile/emoji/emoji_44.png | Bin 0 -> 1712 bytes .../main/resources/rawfile/emoji/emoji_45.png | Bin 0 -> 2333 bytes .../main/resources/rawfile/emoji/emoji_46.png | Bin 0 -> 1636 bytes .../main/resources/rawfile/emoji/emoji_47.png | Bin 0 -> 1454 bytes .../main/resources/rawfile/emoji/emoji_48.png | Bin 0 -> 2263 bytes .../main/resources/rawfile/emoji/emoji_49.png | Bin 0 -> 2878 bytes .../main/resources/rawfile/emoji/emoji_50.png | Bin 0 -> 1495 bytes .../main/resources/rawfile/emoji/emoji_51.png | Bin 0 -> 1749 bytes .../main/resources/rawfile/emoji/emoji_52.png | Bin 0 -> 1225 bytes .../main/resources/rawfile/emoji/emoji_53.png | Bin 0 -> 1721 bytes .../main/resources/rawfile/emoji/emoji_54.png | Bin 0 -> 2080 bytes .../main/resources/rawfile/emoji/emoji_55.png | Bin 0 -> 2635 bytes .../main/resources/rawfile/emoji/emoji_56.png | Bin 0 -> 2572 bytes .../main/resources/rawfile/emoji/emoji_57.png | Bin 0 -> 2603 bytes .../main/resources/rawfile/emoji/emoji_58.png | Bin 0 -> 2681 bytes .../main/resources/rawfile/emoji/emoji_59.png | Bin 0 -> 2617 bytes .../main/resources/rawfile/emoji/emoji_60.png | Bin 0 -> 2824 bytes .../main/resources/rawfile/emoji/emoji_61.png | Bin 0 -> 2501 bytes .../main/resources/rawfile/emoji/emoji_62.png | Bin 0 -> 2261 bytes .../main/resources/rawfile/emoji/emoji_63.png | Bin 0 -> 1481 bytes .../main/resources/rawfile/emoji/emoji_64.png | Bin 0 -> 1193 bytes .../main/resources/rawfile/emoji/emoji_65.png | Bin 0 -> 1491 bytes .../main/resources/rawfile/emoji/emoji_66.png | Bin 0 -> 2389 bytes .../main/resources/rawfile/emoji/emoji_67.png | Bin 0 -> 2089 bytes .../main/resources/rawfile/emoji/emoji_68.png | Bin 0 -> 2241 bytes .../rawfile/emoji/emoji_del_normal.png | Bin 0 -> 1949 bytes .../rawfile/emoji/emoji_del_pressed.png | Bin 0 -> 1862 bytes .../src/main/resources/rawfile/emoji_en.json | 350 + .../main/resources/zh_CN/element/string.json | 380 + chatkit_ui/src/test/List.test.ets | 12 + chatkit_ui/src/test/LocalUnit.test.ets | 40 + common/BuildProfile.ets | 17 + common/Index.ets | 78 + common/build-profile.json5 | 28 + common/consumer-rules.txt | 0 common/hvigorfile.ts | 13 + common/obfuscation-rules.txt | 23 + common/oh-package-lock.json5 | 19 + common/oh-package.json5 | 11 + .../ets/ImageViewDialog/ImageItemView.ets | 248 + .../ets/ImageViewDialog/ImageViewDialog.ets | 41 + .../model/ImagesIndexModel.ets | 22 + .../ets/ImageViewDialog/model/OffsetModel.ets | 38 + .../ets/ImageViewDialog/model/ScaleModel.ets | 45 + .../ets/VideoViewDialog/VideoItemView.ets | 506 + .../ets/VideoViewDialog/VideoViewDialog.ets | 35 + .../main/ets/builder/CommonEmptyResult.ets | 36 + .../ets/builder/CommonLongLoadingProgress.ets | 45 + .../src/main/ets/builder/CommonTextInput.ets | 66 + .../ets/builder/CustomLoadMoreBuilder.ets | 29 + .../main/ets/builder/DoubleAlertDialog.ets | 71 + .../src/main/ets/builder/ListGroupHeader.ets | 21 + .../ets/builder/NavigationBackBuilder.ets | 124 + .../ets/builder/NavigationTitleBuilder.ets | 112 + .../main/ets/builder/NetworkBrokenBuilder.ets | 24 + .../src/main/ets/builder/ViewItemBuilder.ets | 69 + .../ets/constants/BreakpointConstants.ets | 39 + .../main/ets/constants/CommonConstants.ets | 66 + common/src/main/ets/constants/DateConst.ets | 45 + common/src/main/ets/extend/StringExtend.ets | 50 + common/src/main/ets/model/ViewItem.ets | 23 + common/src/main/ets/model/ViewItemArrow.ets | 12 + common/src/main/ets/model/ViewItemSwitch.ets | 14 + common/src/main/ets/pages/TextEditPage.ets | 105 + .../src/main/ets/utils/BreakpointSystem.ets | 81 + common/src/main/ets/utils/DateUtil.ets | 153 + common/src/main/ets/utils/FileUtil.ets | 73 + common/src/main/ets/utils/FuncUtils.ets | 21 + common/src/main/ets/utils/JSONUtil.ets | 213 + common/src/main/ets/utils/Logger.ets | 30 + common/src/main/ets/utils/MediaUtils.ets | 200 + common/src/main/ets/utils/NECommonUtils.ets | 34 + .../src/main/ets/utils/PermissionsUtils.ets | 53 + common/src/main/ets/utils/PreferencesUtil.ets | 251 + common/src/main/ets/utils/TimeUtils.ts | 30 + .../src/main/ets/utils/WindowSizeManagers.ets | 33 + .../src/main/ets/view/ChooseAvatarDialog.ets | 136 + common/src/main/ets/view/CommonAvatar.ets | 146 + .../src/main/ets/view/CommonChooseDialog.ets | 76 + .../src/main/ets/view/CommonConfirmDialog.ets | 61 + common/src/main/ets/view/MatchSearchText.ets | 37 + common/src/main/module.json5 | 12 + .../main/resources/base/element/color.json | 74 + .../main/resources/base/element/string.json | 160 + .../main/resources/base/media/arrow_right.svg | 14 + .../resources/base/media/empt1y_image.png | Bin 0 -> 24973 bytes .../main/resources/base/media/empty_image.png | Bin 0 -> 13631 bytes .../main/resources/base/media/input_clean.svg | 20 + .../media/media_full_screen_icon_large.svg | 22 + .../media/media_full_screen_icon_pause.svg | 22 + .../media/media_full_screen_icon_play.svg | 22 + .../src/main/resources/base/media/nav_add.svg | 30 + .../main/resources/base/media/nav_back.svg | 13 + .../main/resources/base/media/nav_search.svg | 26 + .../main/resources/base/media/no_history.png | Bin 0 -> 9198 bytes .../main/resources/base/media/select_no.svg | 14 + .../main/resources/base/media/select_yes.svg | 19 + .../main/resources/base/media/team_invite.svg | 24 + .../resources/base/media/text_input_icon.svg | 20 + .../main/resources/base/media/top_back.png | Bin 0 -> 282745 bytes .../resources/base/profile/route_map.json | 12 + .../main/resources/en_US/element/string.json | 156 + .../main/resources/zh_CN/element/string.json | 156 + common/src/test/List.test.ets | 12 + common/src/test/LocalUnit.test.ets | 40 + commons/basic/BuildProfile.ets | 4 +- commons/basic/Index.ets | 16 +- .../src/main/ets/Views/PerfactInputSheet.ets | 221 +- .../src/main/ets/Views/PhotoActionSheet.ets | 18 +- .../src/main/ets/Views/PreviewPhotos.ets | 232 + .../main/ets/components/ChangePhotoGrids.ets | 78 + .../basic/src/main/ets/components/HdList.ets | 7 + .../src/main/ets/components/PhotoGrids.ets | 48 + .../src/main/ets/constants/BasicConstant.ets | 57 +- .../src/main/ets/models/LoginInfoModel.ets | 5 + .../src/main/ets/models/ViewImageInfo.ets | 6 + .../basic/src/main/ets/utils/ChangeUtil.ets | 9 + .../basic/src/main/ets/utils/DateUtils.ets | 22 + .../src/main/ets/utils/PermissionsUtils.ets | 53 + .../main/resources/base/element/color.json | 8 + .../main/resources/base/element/string.json | 40 + .../resources/base/media/ic_topbar_save.png | Bin 0 -> 1714 bytes .../resources/base/media/iv_delete_new.png | Bin 0 -> 1206 bytes .../resources/base/media/new_selected.png | Bin 0 -> 1579 bytes conversationkit_ui/.gitignore | 7 + conversationkit_ui/BuildProfile.ets | 17 + conversationkit_ui/Index.ets | 8 + conversationkit_ui/build-profile.json5 | 28 + conversationkit_ui/consumer-rules.txt | 0 conversationkit_ui/hvigorfile.ts | 13 + conversationkit_ui/obfuscation-rules.txt | 23 + conversationkit_ui/oh-package.json5 | 13 + .../src/main/ets/loader/Constant.ets | 38 + .../src/main/ets/pages/ConversationPage.ets | 353 + .../ets/service/ait/AitDatabaseHelper.ets | 158 + .../src/main/ets/service/ait/AitService.ets | 190 + .../ets/view/ConversationOperationDialog.ets | 67 + .../main/ets/view/ConversationViewItem.ets | 216 + .../ets/viewmodel/ConversationListData.ets | 56 + .../ets/viewmodel/ConversationViewModel.ets | 245 + conversationkit_ui/src/main/module.json5 | 12 + .../main/resources/base/element/float.json | 48 + .../main/resources/base/element/string.json | 40 + .../src/main/resources/base/media/brand.png | Bin 0 -> 5263 bytes .../base/media/conversation_mute.svg | 39 + .../main/resources/base/media/friend_add.svg | 35 + .../resources/base/media/team_advance.svg | 35 + .../resources/base/media/team_discuss.svg | 45 + .../resources/base/profile/route_map.json | 12 + .../main/resources/en_US/element/string.json | 40 + .../main/resources/zh_CN/element/string.json | 40 + conversationkit_ui/src/test/List.test.ets | 12 + .../src/test/LocalUnit.test.ets | 40 + corekit/.gitignore | 6 + corekit/BuildProfile.ets | 17 + corekit/Index.ets | 7 + corekit/build-profile.json5 | 31 + corekit/consumer-rules.txt | 0 corekit/hvigorfile.ts | 13 + corekit/obfuscation-rules.txt | 23 + corekit/oh-package.json5 | 9 + corekit/src/main/ets/CoreKitClient.ets | 30 + corekit/src/main/ets/KitReport.ets | 46 + corekit/src/main/module.json5 | 23 + .../main/resources/base/element/string.json | 12 + .../main/resources/en_US/element/string.json | 12 + .../main/resources/zh_CN/element/string.json | 12 + .../src/ohosTest/ets/test/Ability.test.ets | 42 + corekit/src/ohosTest/ets/test/List.test.ets | 12 + corekit/src/ohosTest/module.json5 | 13 + corekit/src/test/List.test.ets | 12 + corekit/src/test/LocalUnit.test.ets | 40 + features/Home/BuildProfile.ets | 4 +- .../Home/src/main/ets/pages/VideoPage.ets | 6 +- features/mypage/BuildProfile.ets | 4 +- .../src/main/ets/view/EditUserDataComp.ets | 14 +- features/netease/.gitignore | 6 + features/netease/BuildProfile.ets | 17 + features/netease/Index.ets | 17 + features/netease/PERMISSION_README.md | 70 + features/netease/build-profile.json5 | 31 + features/netease/consumer-rules.txt | 0 features/netease/hvigorfile.ts | 6 + features/netease/obfuscation-rules.txt | 23 + features/netease/oh-package-lock.json5 | 225 + features/netease/oh-package.json5 | 18 + .../src/main/ets/components/ItemCompMany.ets | 84 + .../main/ets/components/ItemCompPublic.ets | 66 + .../ets/components/ListCompInterrogation.ets | 151 + .../src/main/ets/components/ListCompMany.ets | 151 + .../main/ets/components/ListCompPublic.ets | 222 + .../src/main/ets/components/MainPage.ets | 19 + .../src/main/ets/components/PreviewPhoto.ets | 263 + .../components/TabBarConsultationItems.ets | 13 + .../src/main/ets/components/TabBarItems.ets | 17 + .../src/main/ets/model/ConsulModel.ets | 149 + .../model/InterrogationPatientInfoBean.ets | 28 + .../src/main/ets/model/TabBarCompModel.ets | 5 + .../src/main/ets/view/BaseInfoComp.ets | 180 + .../main/ets/view/ConsultationDetailComp.ets | 200 + .../main/ets/view/InterrogationDetailComp.ets | 311 + .../src/main/ets/view/ManyForOneComp.ets | 27 + .../netease/src/main/ets/view/MessageComp.ets | 85 + .../src/main/ets/view/MyOpinionComp.ets | 91 + .../src/main/ets/view/PatientSimplyComp.ets | 88 + .../src/main/ets/view/QuictDoctorComp.ets | 27 + .../netease/src/main/ets/view/TabBarComp.ets | 56 + .../main/ets/view/TabBarConsultationComp.ets | 72 + .../src/main/ets/view/TabBarTopComp.ets | 97 + .../src/main/ets/view/medicalHistoryComp.ets | 176 + features/netease/src/main/module.json5 | 33 + .../main/resources/base/element/float.json | 8 + .../main/resources/base/element/string.json | 40 + .../base/media/complete_question.png | Bin 0 -> 1312 bytes .../base/media/consult_background.png | Bin 0 -> 27798 bytes .../resources/base/media/consult_zero.png | Bin 0 -> 2842 bytes .../main/resources/base/media/icon_down.png | Bin 0 -> 1113 bytes .../src/main/resources/base/media/icon_up.png | Bin 0 -> 1094 bytes .../main/resources/base/media/iv_zixun.png | Bin 0 -> 4690 bytes .../src/ohosTest/ets/test/Ability.test.ets | 35 + .../src/ohosTest/ets/test/List.test.ets | 5 + features/netease/src/ohosTest/module.json5 | 13 + features/netease/src/test/List.test.ets | 5 + features/netease/src/test/LocalUnit.test.ets | 33 + features/register/BuildProfile.ets | 4 +- .../register/src/main/ets/view/LoginComp.ets | 7 + .../src/main/ets/view/PerfectUserDataComp.ets | 14 +- localconversationkit_ui/.gitignore | 7 + localconversationkit_ui/BuildProfile.ets | 17 + localconversationkit_ui/Index.ets | 8 + localconversationkit_ui/build-profile.json5 | 28 + localconversationkit_ui/consumer-rules.txt | 0 localconversationkit_ui/hvigorfile.ts | 13 + localconversationkit_ui/obfuscation-rules.txt | 23 + localconversationkit_ui/oh-package.json5 | 13 + .../src/main/ets/loader/Constant.ets | 38 + .../main/ets/pages/LocalConversationPage.ets | 354 + .../ets/service/ait/AitDatabaseHelper.ets | 158 + .../src/main/ets/service/ait/AitService.ets | 190 + .../main/ets/view/ConversationViewItem.ets | 218 + .../view/LocalConversationOperationDialog.ets | 65 + .../viewmodel/LocalConversationListData.ets | 56 + .../viewmodel/LocalConversationViewModel.ets | 254 + localconversationkit_ui/src/main/module.json5 | 12 + .../main/resources/base/element/float.json | 48 + .../main/resources/base/element/string.json | 40 + .../src/main/resources/base/media/brand.png | Bin 0 -> 5263 bytes .../base/media/conversation_mute.svg | 39 + .../main/resources/base/media/friend_add.svg | 35 + .../resources/base/media/team_advance.svg | 35 + .../resources/base/media/team_discuss.svg | 45 + .../resources/base/profile/route_map.json | 12 + .../main/resources/en_US/element/string.json | 40 + .../main/resources/zh_CN/element/string.json | 40 + .../src/test/List.test.ets | 12 + .../src/test/LocalUnit.test.ets | 40 + oh-package.json5 | 3 +- products/expert/oh-package.json5 | 13 +- .../src/main/ets/constants/AppConfig.ets | 22 + .../main/ets/constants/IMBackgroundTask.ets | 70 + .../src/main/ets/constants/RouteConstants.ets | 24 + .../main/ets/entryability/NimRepository.ets | 150 + .../main/ets/manager/IMSDKConfigManager.ets | 62 + products/expert/src/main/ets/pages/Home.ets | 13 + .../main/ets/pages/LoginPage/LoginPage.ets | 22 +- .../pages/Netease/ConsultationDetailPage.ets | 17 + .../Netease/InterrogationDetailCompPage.ets | 15 + .../main/ets/pages/Netease/MyOpinionPage.ets | 15 + .../ets/pages/Netease/PatientSimplyPage.ets | 15 + .../ets/pages/Netease/PreviewPhotoPage.ets | 16 + .../pages/Netease/PublicConsultationPage.ets | 35 + .../src/main/ets/pages/Netease/imTabPage.ets | 37 + .../src/main/ets/pages/Tabbar/TabBarComp.ets | 1 + .../resources/base/profile/main_pages.json | 9 +- 523 files changed, 61549 insertions(+), 1491 deletions(-) create mode 100644 chatkit/.gitignore create mode 100644 chatkit/BuildProfile.ets create mode 100644 chatkit/Index.ets create mode 100644 chatkit/build-profile.json5 create mode 100644 chatkit/consumer-rules.txt create mode 100644 chatkit/hvigorfile.ts create mode 100644 chatkit/obfuscation-rules.txt create mode 100644 chatkit/oh-package-lock.json5 create mode 100644 chatkit/oh-package.json5 create mode 100644 chatkit/src/main/ets/ChatKitClient.ets create mode 100644 chatkit/src/main/ets/IMKitConfigCenter.ets create mode 100644 chatkit/src/main/ets/NEFriendUserCache.ets create mode 100644 chatkit/src/main/ets/cache/TeamMemberCache.ets create mode 100644 chatkit/src/main/ets/constant/Constant.ets create mode 100644 chatkit/src/main/ets/logger/AppLogger.ets create mode 100644 chatkit/src/main/ets/logger/LoggerKitImpl.ets create mode 100644 chatkit/src/main/ets/logger/LoggerRequest.ets create mode 100644 chatkit/src/main/ets/model/ConversationSelectModel.ets create mode 100644 chatkit/src/main/ets/model/ConversationSelectParam.ets create mode 100644 chatkit/src/main/ets/model/ConversationSelectedParam.ets create mode 100644 chatkit/src/main/ets/model/CustomMessageAttachment.ets create mode 100644 chatkit/src/main/ets/model/NEUserWithFriend.ets create mode 100644 chatkit/src/main/ets/model/PersonSelectParam.ets create mode 100644 chatkit/src/main/ets/model/RevokeMessageExtension.ets create mode 100644 chatkit/src/main/ets/model/TeamMemberWithUser.ets create mode 100644 chatkit/src/main/ets/model/TeamSettingParam.ets create mode 100644 chatkit/src/main/ets/model/ait/AitAllPermission.ets create mode 100644 chatkit/src/main/ets/model/ait/AitMessage.ets create mode 100644 chatkit/src/main/ets/model/ait/AitModel.ets create mode 100644 chatkit/src/main/ets/model/ait/AitSegment.ets create mode 100644 chatkit/src/main/ets/repo/ChatRepo.ets create mode 100644 chatkit/src/main/ets/repo/ContactRepo.ets create mode 100644 chatkit/src/main/ets/repo/ConversationRepo.ets create mode 100644 chatkit/src/main/ets/repo/LocalConversationRepo.ets create mode 100644 chatkit/src/main/ets/repo/SettingRepo.ets create mode 100644 chatkit/src/main/ets/repo/StorageRepo.ets create mode 100644 chatkit/src/main/ets/repo/TeamRepo.ets create mode 100644 chatkit/src/main/ets/utils/CustomMessageUtils.ets create mode 100644 chatkit/src/main/ets/utils/ErrorUtils.ets create mode 100644 chatkit/src/main/ets/utils/EventHubUtil.ets create mode 100644 chatkit/src/main/ets/utils/MessageUtils.ets create mode 100644 chatkit/src/main/ets/utils/Utils.ets create mode 100644 chatkit/src/main/module.json5 create mode 100644 chatkit/src/main/resources/base/element/string.json create mode 100644 chatkit/src/main/resources/en_US/element/string.json create mode 100644 chatkit/src/main/resources/zh_CN/element/string.json create mode 100644 chatkit/src/ohosTest/ets/test/Ability.test.ets create mode 100644 chatkit/src/ohosTest/ets/test/List.test.ets create mode 100644 chatkit/src/ohosTest/module.json5 create mode 100644 chatkit/src/test/List.test.ets create mode 100644 chatkit/src/test/LocalUnit.test.ets create mode 100644 chatkit_ui/.gitignore create mode 100644 chatkit_ui/BuildProfile.ets create mode 100644 chatkit_ui/Index.ets create mode 100644 chatkit_ui/build-profile.json5 create mode 100644 chatkit_ui/consumer-rules.txt create mode 100644 chatkit_ui/hvigorfile.ts create mode 100644 chatkit_ui/obfuscation-rules.txt create mode 100644 chatkit_ui/oh-package.json5 create mode 100644 chatkit_ui/src/main/ets/ChatKitConfig.ets create mode 100644 chatkit_ui/src/main/ets/common/ChatUtils.ets create mode 100644 chatkit_ui/src/main/ets/common/DateUtils.ets create mode 100644 chatkit_ui/src/main/ets/common/DeviceUtils.ets create mode 100644 chatkit_ui/src/main/ets/common/FileUtils.ets create mode 100644 chatkit_ui/src/main/ets/common/MessageHelper.ets create mode 100644 chatkit_ui/src/main/ets/constants/ChatConst.ets create mode 100644 chatkit_ui/src/main/ets/manager/AudioManager.ets create mode 100644 chatkit_ui/src/main/ets/manager/AudioPlayerManager.ets create mode 100644 chatkit_ui/src/main/ets/manager/AudioRecordManager.ets create mode 100644 chatkit_ui/src/main/ets/manager/NEAudioMetaManager.ets create mode 100644 chatkit_ui/src/main/ets/manager/NEEmojiManager.ets create mode 100644 chatkit_ui/src/main/ets/manager/ait/AitManager.ets create mode 100644 chatkit_ui/src/main/ets/model/ChatAitNode.ets create mode 100644 chatkit_ui/src/main/ets/model/ChatInfo.ets create mode 100644 chatkit_ui/src/main/ets/model/ChatTeamInfo.ets create mode 100644 chatkit_ui/src/main/ets/model/ChatUserInfo.ets create mode 100644 chatkit_ui/src/main/ets/model/MergeMessageInfo.ets create mode 100644 chatkit_ui/src/main/ets/model/MessageOperationItem.ets create mode 100644 chatkit_ui/src/main/ets/model/NEChatMoreOperationData.ets create mode 100644 chatkit_ui/src/main/ets/model/NERectData.ets create mode 100644 chatkit_ui/src/main/ets/model/NIMMessageInfo.ets create mode 100644 chatkit_ui/src/main/ets/model/TeamDataResult.ets create mode 100644 chatkit_ui/src/main/ets/pages/ChatP2PPage.ets create mode 100644 chatkit_ui/src/main/ets/pages/ChatReadReceiptPage.ets create mode 100644 chatkit_ui/src/main/ets/pages/ChatTeamPage.ets create mode 100644 chatkit_ui/src/main/ets/pages/MergeMessageDetailPage.ets create mode 100644 chatkit_ui/src/main/ets/pages/PinMessagePage.ets create mode 100644 chatkit_ui/src/main/ets/pages/QuickMessagePage.ets create mode 100644 chatkit_ui/src/main/ets/pages/TeamHistoryPage.ets create mode 100644 chatkit_ui/src/main/ets/pages/UserSettingPage.ets create mode 100644 chatkit_ui/src/main/ets/view/ChatAitDialog.ets create mode 100644 chatkit_ui/src/main/ets/view/ChatInputView.ets create mode 100644 chatkit_ui/src/main/ets/view/ChatMoreOperationLayout.ets create mode 100644 chatkit_ui/src/main/ets/view/ChatMultiSelectView.ets create mode 100644 chatkit_ui/src/main/ets/view/ForwardMessageDialog.ets create mode 100644 chatkit_ui/src/main/ets/view/MessageAudioItemView.ets create mode 100644 chatkit_ui/src/main/ets/view/MessageComponent.ets create mode 100644 chatkit_ui/src/main/ets/view/MessageComponentBuilder.ets create mode 100644 chatkit_ui/src/main/ets/view/MessageItemClick.ets create mode 100644 chatkit_ui/src/main/ets/view/MessageOperationItemView.ets create mode 100644 chatkit_ui/src/main/ets/view/MessageOperationView.ets create mode 100644 chatkit_ui/src/main/ets/view/NEAudioRecordView.ets create mode 100644 chatkit_ui/src/main/ets/view/NECameraSelectView.ets create mode 100644 chatkit_ui/src/main/ets/view/NEChatEmojiListItem.ets create mode 100644 chatkit_ui/src/main/ets/view/NEChatEmojiView.ets create mode 100644 chatkit_ui/src/main/ets/view/NEImageButton.ets create mode 100644 chatkit_ui/src/main/ets/view/NewWaDialog.ets create mode 100644 chatkit_ui/src/main/ets/view/OperationItemLayout.ets create mode 100644 chatkit_ui/src/main/ets/view/PinMessageComponent.ets create mode 100644 chatkit_ui/src/main/ets/view/TeachDialog.ets create mode 100644 chatkit_ui/src/main/ets/view/TeamExitWarningDialog.ets create mode 100644 chatkit_ui/src/main/ets/view/TeamLeftWarningDialog.ets create mode 100644 chatkit_ui/src/main/ets/view/TextMessageDetailDialog.ets create mode 100644 chatkit_ui/src/main/ets/viewmodel/ChatBaseViewModel.ets create mode 100644 chatkit_ui/src/main/ets/viewmodel/ChatP2PViewModel.ets create mode 100644 chatkit_ui/src/main/ets/viewmodel/ChatPinViewModel.ets create mode 100644 chatkit_ui/src/main/ets/viewmodel/ChatReadReceiptViewModel.ets create mode 100644 chatkit_ui/src/main/ets/viewmodel/ChatTeamViewModel.ets create mode 100644 chatkit_ui/src/main/ets/viewmodel/MergeMessageDetailViewModel.ets create mode 100644 chatkit_ui/src/main/ets/viewmodel/TabBarItem.ets create mode 100644 chatkit_ui/src/main/ets/viewmodel/TabsViewModel.ets create mode 100644 chatkit_ui/src/main/ets/viewmodel/TeamHistoryViewModel.ets create mode 100644 chatkit_ui/src/main/ets/viewmodel/UserSettingViewModel.ets create mode 100644 chatkit_ui/src/main/module.json5 create mode 100644 chatkit_ui/src/main/resources/base/element/color.json create mode 100644 chatkit_ui/src/main/resources/base/element/float.json create mode 100644 chatkit_ui/src/main/resources/base/element/string.json create mode 100644 chatkit_ui/src/main/resources/base/media/add_drawle.png create mode 100644 chatkit_ui/src/main/resources/base/media/green_bg.png create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_audio_receive.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_audio_send.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_call_audio.png create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_call_video.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_file_excel.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_file_image.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_file_mp3.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_file_other.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_file_pdf.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_file_ppt.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_file_rar.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_file_txt.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_file_unknown.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_file_video.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_file_word.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_flle_keynote.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_location_default.png create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_menu_collection.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_menu_copy.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_menu_delete.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_menu_multi_select.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_menu_pin.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_menu_reply.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_menu_revoke.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_menu_translate.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_message_pin.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_message_sending.png create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_message_status_fail.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_message_video.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_more_location.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_read_status_read.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_read_status_unread.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_reply_close.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_select_delete.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_select_delete_dis.png create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_select_forward.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_select_forward_dis.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_select_multi_forward.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_chat_select_multi_forward_dis.png create mode 100644 chatkit_ui/src/main/resources/base/media/ic_down_arr.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_member_all.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_public_back.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_public_chat_emoji.png create mode 100644 chatkit_ui/src/main/resources/base/media/ic_public_chat_emoji_select.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_public_chat_file.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_public_chat_image.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_public_chat_more.png create mode 100644 chatkit_ui/src/main/resources/base/media/ic_public_chat_more_select.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_public_chat_photo.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_public_chat_speaker.png create mode 100644 chatkit_ui/src/main/resources/base/media/ic_public_chat_speaker_select.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_public_more_dot.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_public_record_speaker.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_public_record_speaker_press.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_sound_from_1.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_sound_from_2.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_sound_from_3.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_sound_to_1.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_sound_to_2.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_sound_to_3.svg create mode 100644 chatkit_ui/src/main/resources/base/media/ic_tabs_icon.png create mode 100644 chatkit_ui/src/main/resources/base/media/ic_tabs_icon_selected.png create mode 100644 chatkit_ui/src/main/resources/base/media/icon.png create mode 100644 chatkit_ui/src/main/resources/base/media/icon_chatting_file.png create mode 100644 chatkit_ui/src/main/resources/base/media/im_icon_camera.png create mode 100644 chatkit_ui/src/main/resources/base/media/im_icon_images.png create mode 100644 chatkit_ui/src/main/resources/base/media/mine_logo.png create mode 100644 chatkit_ui/src/main/resources/base/media/outpatient_true.png create mode 100644 chatkit_ui/src/main/resources/base/media/patient_teach_call.png create mode 100644 chatkit_ui/src/main/resources/base/media/quck_message.png create mode 100644 chatkit_ui/src/main/resources/base/media/ytx_chatting_hospital.png create mode 100644 chatkit_ui/src/main/resources/base/media/ytx_chattingfooter_shopping.png create mode 100644 chatkit_ui/src/main/resources/base/profile/route_map.json create mode 100644 chatkit_ui/src/main/resources/en_US/element/string.json create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_00.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_01.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_02.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_03.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_04.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_05.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_06.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_07.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_08.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_09.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_10.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_11.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_12.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_13.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_14.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_15.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_16.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_17.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_18.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_19.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_20.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_21.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_22.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_23.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_24.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_25.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_26.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_27.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_28.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_29.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_30.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_31.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_32.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_33.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_34.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_35.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_36.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_37.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_38.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_39.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_40.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_41.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_42.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_43.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_44.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_45.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_46.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_47.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_48.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_49.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_50.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_51.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_52.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_53.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_54.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_55.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_56.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_57.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_58.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_59.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_60.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_61.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_62.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_63.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_64.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_65.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_66.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_67.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_68.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_del_normal.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji/emoji_del_pressed.png create mode 100644 chatkit_ui/src/main/resources/rawfile/emoji_en.json create mode 100644 chatkit_ui/src/main/resources/zh_CN/element/string.json create mode 100644 chatkit_ui/src/test/List.test.ets create mode 100644 chatkit_ui/src/test/LocalUnit.test.ets create mode 100644 common/BuildProfile.ets create mode 100644 common/Index.ets create mode 100644 common/build-profile.json5 create mode 100644 common/consumer-rules.txt create mode 100644 common/hvigorfile.ts create mode 100644 common/obfuscation-rules.txt create mode 100644 common/oh-package-lock.json5 create mode 100644 common/oh-package.json5 create mode 100644 common/src/main/ets/ImageViewDialog/ImageItemView.ets create mode 100644 common/src/main/ets/ImageViewDialog/ImageViewDialog.ets create mode 100644 common/src/main/ets/ImageViewDialog/model/ImagesIndexModel.ets create mode 100644 common/src/main/ets/ImageViewDialog/model/OffsetModel.ets create mode 100644 common/src/main/ets/ImageViewDialog/model/ScaleModel.ets create mode 100644 common/src/main/ets/VideoViewDialog/VideoItemView.ets create mode 100644 common/src/main/ets/VideoViewDialog/VideoViewDialog.ets create mode 100644 common/src/main/ets/builder/CommonEmptyResult.ets create mode 100644 common/src/main/ets/builder/CommonLongLoadingProgress.ets create mode 100644 common/src/main/ets/builder/CommonTextInput.ets create mode 100644 common/src/main/ets/builder/CustomLoadMoreBuilder.ets create mode 100644 common/src/main/ets/builder/DoubleAlertDialog.ets create mode 100644 common/src/main/ets/builder/ListGroupHeader.ets create mode 100644 common/src/main/ets/builder/NavigationBackBuilder.ets create mode 100644 common/src/main/ets/builder/NavigationTitleBuilder.ets create mode 100644 common/src/main/ets/builder/NetworkBrokenBuilder.ets create mode 100644 common/src/main/ets/builder/ViewItemBuilder.ets create mode 100644 common/src/main/ets/constants/BreakpointConstants.ets create mode 100644 common/src/main/ets/constants/CommonConstants.ets create mode 100644 common/src/main/ets/constants/DateConst.ets create mode 100644 common/src/main/ets/extend/StringExtend.ets create mode 100644 common/src/main/ets/model/ViewItem.ets create mode 100644 common/src/main/ets/model/ViewItemArrow.ets create mode 100644 common/src/main/ets/model/ViewItemSwitch.ets create mode 100644 common/src/main/ets/pages/TextEditPage.ets create mode 100644 common/src/main/ets/utils/BreakpointSystem.ets create mode 100644 common/src/main/ets/utils/DateUtil.ets create mode 100644 common/src/main/ets/utils/FileUtil.ets create mode 100644 common/src/main/ets/utils/FuncUtils.ets create mode 100644 common/src/main/ets/utils/JSONUtil.ets create mode 100644 common/src/main/ets/utils/Logger.ets create mode 100644 common/src/main/ets/utils/MediaUtils.ets create mode 100644 common/src/main/ets/utils/NECommonUtils.ets create mode 100644 common/src/main/ets/utils/PermissionsUtils.ets create mode 100644 common/src/main/ets/utils/PreferencesUtil.ets create mode 100644 common/src/main/ets/utils/TimeUtils.ts create mode 100644 common/src/main/ets/utils/WindowSizeManagers.ets create mode 100644 common/src/main/ets/view/ChooseAvatarDialog.ets create mode 100644 common/src/main/ets/view/CommonAvatar.ets create mode 100644 common/src/main/ets/view/CommonChooseDialog.ets create mode 100644 common/src/main/ets/view/CommonConfirmDialog.ets create mode 100644 common/src/main/ets/view/MatchSearchText.ets create mode 100644 common/src/main/module.json5 create mode 100644 common/src/main/resources/base/element/color.json create mode 100644 common/src/main/resources/base/element/string.json create mode 100644 common/src/main/resources/base/media/arrow_right.svg create mode 100644 common/src/main/resources/base/media/empt1y_image.png create mode 100644 common/src/main/resources/base/media/empty_image.png create mode 100644 common/src/main/resources/base/media/input_clean.svg create mode 100644 common/src/main/resources/base/media/media_full_screen_icon_large.svg create mode 100644 common/src/main/resources/base/media/media_full_screen_icon_pause.svg create mode 100644 common/src/main/resources/base/media/media_full_screen_icon_play.svg create mode 100644 common/src/main/resources/base/media/nav_add.svg create mode 100644 common/src/main/resources/base/media/nav_back.svg create mode 100644 common/src/main/resources/base/media/nav_search.svg create mode 100644 common/src/main/resources/base/media/no_history.png create mode 100644 common/src/main/resources/base/media/select_no.svg create mode 100644 common/src/main/resources/base/media/select_yes.svg create mode 100644 common/src/main/resources/base/media/team_invite.svg create mode 100644 common/src/main/resources/base/media/text_input_icon.svg create mode 100644 common/src/main/resources/base/media/top_back.png create mode 100644 common/src/main/resources/base/profile/route_map.json create mode 100644 common/src/main/resources/en_US/element/string.json create mode 100644 common/src/main/resources/zh_CN/element/string.json create mode 100644 common/src/test/List.test.ets create mode 100644 common/src/test/LocalUnit.test.ets create mode 100644 commons/basic/src/main/ets/Views/PreviewPhotos.ets create mode 100644 commons/basic/src/main/ets/components/ChangePhotoGrids.ets create mode 100644 commons/basic/src/main/ets/components/PhotoGrids.ets create mode 100644 commons/basic/src/main/ets/models/ViewImageInfo.ets create mode 100644 commons/basic/src/main/ets/utils/PermissionsUtils.ets create mode 100644 commons/basic/src/main/resources/base/media/ic_topbar_save.png create mode 100644 commons/basic/src/main/resources/base/media/iv_delete_new.png create mode 100644 commons/basic/src/main/resources/base/media/new_selected.png create mode 100644 conversationkit_ui/.gitignore create mode 100644 conversationkit_ui/BuildProfile.ets create mode 100644 conversationkit_ui/Index.ets create mode 100644 conversationkit_ui/build-profile.json5 create mode 100644 conversationkit_ui/consumer-rules.txt create mode 100644 conversationkit_ui/hvigorfile.ts create mode 100644 conversationkit_ui/obfuscation-rules.txt create mode 100644 conversationkit_ui/oh-package.json5 create mode 100644 conversationkit_ui/src/main/ets/loader/Constant.ets create mode 100644 conversationkit_ui/src/main/ets/pages/ConversationPage.ets create mode 100644 conversationkit_ui/src/main/ets/service/ait/AitDatabaseHelper.ets create mode 100644 conversationkit_ui/src/main/ets/service/ait/AitService.ets create mode 100644 conversationkit_ui/src/main/ets/view/ConversationOperationDialog.ets create mode 100644 conversationkit_ui/src/main/ets/view/ConversationViewItem.ets create mode 100644 conversationkit_ui/src/main/ets/viewmodel/ConversationListData.ets create mode 100644 conversationkit_ui/src/main/ets/viewmodel/ConversationViewModel.ets create mode 100644 conversationkit_ui/src/main/module.json5 create mode 100644 conversationkit_ui/src/main/resources/base/element/float.json create mode 100644 conversationkit_ui/src/main/resources/base/element/string.json create mode 100644 conversationkit_ui/src/main/resources/base/media/brand.png create mode 100644 conversationkit_ui/src/main/resources/base/media/conversation_mute.svg create mode 100644 conversationkit_ui/src/main/resources/base/media/friend_add.svg create mode 100644 conversationkit_ui/src/main/resources/base/media/team_advance.svg create mode 100644 conversationkit_ui/src/main/resources/base/media/team_discuss.svg create mode 100644 conversationkit_ui/src/main/resources/base/profile/route_map.json create mode 100644 conversationkit_ui/src/main/resources/en_US/element/string.json create mode 100644 conversationkit_ui/src/main/resources/zh_CN/element/string.json create mode 100644 conversationkit_ui/src/test/List.test.ets create mode 100644 conversationkit_ui/src/test/LocalUnit.test.ets create mode 100644 corekit/.gitignore create mode 100644 corekit/BuildProfile.ets create mode 100644 corekit/Index.ets create mode 100644 corekit/build-profile.json5 create mode 100644 corekit/consumer-rules.txt create mode 100644 corekit/hvigorfile.ts create mode 100644 corekit/obfuscation-rules.txt create mode 100644 corekit/oh-package.json5 create mode 100644 corekit/src/main/ets/CoreKitClient.ets create mode 100644 corekit/src/main/ets/KitReport.ets create mode 100644 corekit/src/main/module.json5 create mode 100644 corekit/src/main/resources/base/element/string.json create mode 100644 corekit/src/main/resources/en_US/element/string.json create mode 100644 corekit/src/main/resources/zh_CN/element/string.json create mode 100644 corekit/src/ohosTest/ets/test/Ability.test.ets create mode 100644 corekit/src/ohosTest/ets/test/List.test.ets create mode 100644 corekit/src/ohosTest/module.json5 create mode 100644 corekit/src/test/List.test.ets create mode 100644 corekit/src/test/LocalUnit.test.ets create mode 100644 features/netease/.gitignore create mode 100644 features/netease/BuildProfile.ets create mode 100644 features/netease/Index.ets create mode 100644 features/netease/PERMISSION_README.md create mode 100644 features/netease/build-profile.json5 create mode 100644 features/netease/consumer-rules.txt create mode 100644 features/netease/hvigorfile.ts create mode 100644 features/netease/obfuscation-rules.txt create mode 100644 features/netease/oh-package-lock.json5 create mode 100644 features/netease/oh-package.json5 create mode 100644 features/netease/src/main/ets/components/ItemCompMany.ets create mode 100644 features/netease/src/main/ets/components/ItemCompPublic.ets create mode 100644 features/netease/src/main/ets/components/ListCompInterrogation.ets create mode 100644 features/netease/src/main/ets/components/ListCompMany.ets create mode 100644 features/netease/src/main/ets/components/ListCompPublic.ets create mode 100644 features/netease/src/main/ets/components/MainPage.ets create mode 100644 features/netease/src/main/ets/components/PreviewPhoto.ets create mode 100644 features/netease/src/main/ets/components/TabBarConsultationItems.ets create mode 100644 features/netease/src/main/ets/components/TabBarItems.ets create mode 100644 features/netease/src/main/ets/model/ConsulModel.ets create mode 100644 features/netease/src/main/ets/model/InterrogationPatientInfoBean.ets create mode 100644 features/netease/src/main/ets/model/TabBarCompModel.ets create mode 100644 features/netease/src/main/ets/view/BaseInfoComp.ets create mode 100644 features/netease/src/main/ets/view/ConsultationDetailComp.ets create mode 100644 features/netease/src/main/ets/view/InterrogationDetailComp.ets create mode 100644 features/netease/src/main/ets/view/ManyForOneComp.ets create mode 100644 features/netease/src/main/ets/view/MessageComp.ets create mode 100644 features/netease/src/main/ets/view/MyOpinionComp.ets create mode 100644 features/netease/src/main/ets/view/PatientSimplyComp.ets create mode 100644 features/netease/src/main/ets/view/QuictDoctorComp.ets create mode 100644 features/netease/src/main/ets/view/TabBarComp.ets create mode 100644 features/netease/src/main/ets/view/TabBarConsultationComp.ets create mode 100644 features/netease/src/main/ets/view/TabBarTopComp.ets create mode 100644 features/netease/src/main/ets/view/medicalHistoryComp.ets create mode 100644 features/netease/src/main/module.json5 create mode 100644 features/netease/src/main/resources/base/element/float.json create mode 100644 features/netease/src/main/resources/base/element/string.json create mode 100644 features/netease/src/main/resources/base/media/complete_question.png create mode 100644 features/netease/src/main/resources/base/media/consult_background.png create mode 100644 features/netease/src/main/resources/base/media/consult_zero.png create mode 100644 features/netease/src/main/resources/base/media/icon_down.png create mode 100644 features/netease/src/main/resources/base/media/icon_up.png create mode 100644 features/netease/src/main/resources/base/media/iv_zixun.png create mode 100644 features/netease/src/ohosTest/ets/test/Ability.test.ets create mode 100644 features/netease/src/ohosTest/ets/test/List.test.ets create mode 100644 features/netease/src/ohosTest/module.json5 create mode 100644 features/netease/src/test/List.test.ets create mode 100644 features/netease/src/test/LocalUnit.test.ets create mode 100644 localconversationkit_ui/.gitignore create mode 100644 localconversationkit_ui/BuildProfile.ets create mode 100644 localconversationkit_ui/Index.ets create mode 100644 localconversationkit_ui/build-profile.json5 create mode 100644 localconversationkit_ui/consumer-rules.txt create mode 100644 localconversationkit_ui/hvigorfile.ts create mode 100644 localconversationkit_ui/obfuscation-rules.txt create mode 100644 localconversationkit_ui/oh-package.json5 create mode 100644 localconversationkit_ui/src/main/ets/loader/Constant.ets create mode 100644 localconversationkit_ui/src/main/ets/pages/LocalConversationPage.ets create mode 100644 localconversationkit_ui/src/main/ets/service/ait/AitDatabaseHelper.ets create mode 100644 localconversationkit_ui/src/main/ets/service/ait/AitService.ets create mode 100644 localconversationkit_ui/src/main/ets/view/ConversationViewItem.ets create mode 100644 localconversationkit_ui/src/main/ets/view/LocalConversationOperationDialog.ets create mode 100644 localconversationkit_ui/src/main/ets/viewmodel/LocalConversationListData.ets create mode 100644 localconversationkit_ui/src/main/ets/viewmodel/LocalConversationViewModel.ets create mode 100644 localconversationkit_ui/src/main/module.json5 create mode 100644 localconversationkit_ui/src/main/resources/base/element/float.json create mode 100644 localconversationkit_ui/src/main/resources/base/element/string.json create mode 100644 localconversationkit_ui/src/main/resources/base/media/brand.png create mode 100644 localconversationkit_ui/src/main/resources/base/media/conversation_mute.svg create mode 100644 localconversationkit_ui/src/main/resources/base/media/friend_add.svg create mode 100644 localconversationkit_ui/src/main/resources/base/media/team_advance.svg create mode 100644 localconversationkit_ui/src/main/resources/base/media/team_discuss.svg create mode 100644 localconversationkit_ui/src/main/resources/base/profile/route_map.json create mode 100644 localconversationkit_ui/src/main/resources/en_US/element/string.json create mode 100644 localconversationkit_ui/src/main/resources/zh_CN/element/string.json create mode 100644 localconversationkit_ui/src/test/List.test.ets create mode 100644 localconversationkit_ui/src/test/LocalUnit.test.ets create mode 100644 products/expert/src/main/ets/constants/AppConfig.ets create mode 100644 products/expert/src/main/ets/constants/IMBackgroundTask.ets create mode 100644 products/expert/src/main/ets/constants/RouteConstants.ets create mode 100644 products/expert/src/main/ets/entryability/NimRepository.ets create mode 100644 products/expert/src/main/ets/manager/IMSDKConfigManager.ets create mode 100644 products/expert/src/main/ets/pages/Netease/ConsultationDetailPage.ets create mode 100644 products/expert/src/main/ets/pages/Netease/InterrogationDetailCompPage.ets create mode 100644 products/expert/src/main/ets/pages/Netease/MyOpinionPage.ets create mode 100644 products/expert/src/main/ets/pages/Netease/PatientSimplyPage.ets create mode 100644 products/expert/src/main/ets/pages/Netease/PreviewPhotoPage.ets create mode 100644 products/expert/src/main/ets/pages/Netease/PublicConsultationPage.ets create mode 100644 products/expert/src/main/ets/pages/Netease/imTabPage.ets diff --git a/.hvigor/outputs/build-logs/build.log b/.hvigor/outputs/build-logs/build.log index 77e5401..b318d35 100644 --- a/.hvigor/outputs/build-logs/build.log +++ b/.hvigor/outputs/build-logs/build.log @@ -1,236 +1,839 @@ -[2025-05-12T14:15:12.341] [INFO] debug-file - UP-TO-DATE :default:default@ProcessLibs... -[2025-05-12T14:15:12.342] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:12.342] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:12.343] [DEBUG] debug-file - Executing task :default:default@DoNativeStrip -[2025-05-12T14:15:12.343] [DEBUG] debug-file - Task 'default:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms -[2025-05-12T14:15:12.343] [DEBUG] debug-file - Incremental task default:default@DoNativeStrip pre-execution cost: 1 ms . -[2025-05-12T14:15:12.343] [DEBUG] debug-file - default : default@DoNativeStrip cost memory 0.0580902099609375 -[2025-05-12T14:15:12.343] [INFO] debug-file - UP-TO-DATE :default:default@DoNativeStrip... -[2025-05-12T14:15:12.344] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:12.344] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:12.345] [DEBUG] debug-file - Executing task :default:default@CacheNativeLibs -[2025-05-12T14:15:12.345] [DEBUG] debug-file - Task 'default:default@CacheNativeLibs' cost while wrapping incremental declarations: 1 ms -[2025-05-12T14:15:12.346] [DEBUG] debug-file - Incremental task default:default@CacheNativeLibs pre-execution cost: 2 ms . -[2025-05-12T14:15:12.346] [DEBUG] debug-file - default : default@CacheNativeLibs cost memory 0.06604766845703125 -[2025-05-12T14:15:12.347] [INFO] debug-file - UP-TO-DATE :default:default@CacheNativeLibs... -[2025-05-12T14:15:12.635] [DEBUG] debug-file - worker[6] has one work done. -[2025-05-12T14:15:12.635] [DEBUG] debug-file - CopyResources is end, endTime: 20726070625958 -[2025-05-12T14:15:12.635] [DEBUG] debug-file - default@CompileArkTS work[99] done. -[2025-05-12T14:15:12.635] [DEBUG] debug-file - A work dispatched to worker[6] failed because unable to get work from ready queue. -[2025-05-12T14:15:12.989] [DEBUG] debug-file - worker[4] has one work done. -[2025-05-12T14:15:12.991] [DEBUG] debug-file - default@CompileArkTS work[98] done. -[2025-05-12T14:15:12.991] [DEBUG] debug-file - A work dispatched to worker[4] failed because unable to get work from ready queue. -[2025-05-12T14:15:12.991] [INFO] debug-file - Finished :default:default@CompileArkTS... after 669 ms -[2025-05-12T14:15:12.992] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:12.992] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:12.992] [DEBUG] debug-file - Executing task :default:default@GeneratePkgModuleJson -[2025-05-12T14:15:12.992] [DEBUG] debug-file - Task 'default:default@GeneratePkgModuleJson' cost while wrapping incremental declarations: 1 ms -[2025-05-12T14:15:12.992] [DEBUG] debug-file - default:default@GeneratePkgModuleJson is not up-to-date, since the input file '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/module.json' has been changed. -[2025-05-12T14:15:12.992] [DEBUG] debug-file - Incremental task default:default@GeneratePkgModuleJson pre-execution cost: 1 ms . -[2025-05-12T14:15:12.992] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:12.992] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:12.993] [DEBUG] debug-file - default : default@GeneratePkgModuleJson cost memory 0.106201171875 -[2025-05-12T14:15:12.993] [DEBUG] debug-file - runTaskFromQueue task cost before running: 934 ms -[2025-05-12T14:15:12.993] [INFO] debug-file - Finished :default:default@GeneratePkgModuleJson... after 1 ms -[2025-05-12T14:15:12.994] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:12.994] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:12.996] [DEBUG] debug-file - Executing task :default:default@PackageHap -[2025-05-12T14:15:12.997] [DEBUG] debug-file - default:default@PackageHap is not up-to-date, since the input file '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/module.json' has been changed. -[2025-05-12T14:15:12.997] [DEBUG] debug-file - Incremental task default:default@PackageHap pre-execution cost: 1 ms . -[2025-05-12T14:15:12.997] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:12.997] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:12.997] [DEBUG] debug-file - Use tool [/Applications/DevEco-Studio.app/Contents/sdk/default/openharmony/toolchains/lib/app_packing_tool.jar] - [ - 'java', - '-Dfile.encoding=utf-8', - '-jar', - '/Applications/DevEco-Studio.app/Contents/sdk/default/openharmony/toolchains/lib/app_packing_tool.jar', - '--mode', - 'hap', - '--force', - 'true', - '--lib-path', - '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/stripped_native_libs/default', - '--json-path', - '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/package/default/module.json', - '--resources-path', - '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/resources', - '--index-path', - '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/resources.index', - '--pack-info-path', - '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/outputs/default/pack.info', - '--out-path', - '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/outputs/default/default-default-unsigned.hap', - '--ets-path', - '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader_out/default/ets', - '--pkg-context-path', - '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader/default/pkgContextInfo.json' -] -[2025-05-12T14:15:12.998] [DEBUG] debug-file - default@PackageHap work[100] is submitted. -[2025-05-12T14:15:12.998] [DEBUG] debug-file - default@PackageHap work[100] is pushed to ready queue. -[2025-05-12T14:15:12.998] [DEBUG] debug-file - A work dispatched to worker[7] failed because unable to get work from ready queue. -[2025-05-12T14:15:12.998] [DEBUG] debug-file - default@PackageHap work[100] has been dispatched to worker[6]. -[2025-05-12T14:15:12.998] [DEBUG] debug-file - default@PackageHap work[100] is dispatched. -[2025-05-12T14:15:12.999] [DEBUG] debug-file - default : default@PackageHap cost memory 0.642120361328125 -[2025-05-12T14:15:13.021] [DEBUG] debug-file - current process memoryUsage: { - rss: 598949888, - heapTotal: 75808768, - heapUsed: 51527104, - external: 2644820, - arrayBuffers: 673931 -} os memoryUsage :15.883270263671875 -[2025-05-12T14:15:13.243] [DEBUG] debug-file - worker[6] has one work done. -[2025-05-12T14:15:13.243] [DEBUG] debug-file - default@PackageHap work[100] done. -[2025-05-12T14:15:13.243] [DEBUG] debug-file - A work dispatched to worker[6] failed because unable to get work from ready queue. -[2025-05-12T14:15:13.244] [INFO] debug-file - Finished :default:default@PackageHap... after 227 ms -[2025-05-12T14:15:13.245] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:13.245] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:13.245] [DEBUG] debug-file - Executing task :default:default@SignHap -[2025-05-12T14:15:13.246] [WARN] debug-file - Will skip sign 'hos_hap'. No signingConfigs profile is configured in current project. - If needed, configure the signingConfigs in /Users/gandanxiangzhao/Downloads/Expert/harmony/build-profile.json5. -[2025-05-12T14:15:13.246] [DEBUG] debug-file - default:default@SignHap is not up-to-date, since the input file '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/outputs/default/default-default-unsigned.hap' has been changed. -[2025-05-12T14:15:13.246] [DEBUG] debug-file - Incremental task default:default@SignHap pre-execution cost: 1 ms . -[2025-05-12T14:15:13.246] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:13.246] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:13.246] [DEBUG] debug-file - default : default@SignHap cost memory 0.11627960205078125 -[2025-05-12T14:15:13.246] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 187 ms -[2025-05-12T14:15:13.246] [INFO] debug-file - Finished :default:default@SignHap... after 1 ms -[2025-05-12T14:15:13.247] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:13.247] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:13.247] [DEBUG] debug-file - Executing task :default:default@CollectDebugSymbol -[2025-05-12T14:15:13.248] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:13.248] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:13.248] [DEBUG] debug-file - default : default@CollectDebugSymbol cost memory 0.21227264404296875 -[2025-05-12T14:15:13.248] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 189 ms -[2025-05-12T14:15:13.248] [INFO] debug-file - Finished :default:default@CollectDebugSymbol... after 2 ms -[2025-05-12T14:15:13.249] [DEBUG] debug-file - Executing task :default:assembleHap -[2025-05-12T14:15:13.249] [DEBUG] debug-file - default : assembleHap cost memory 0.01134490966796875 -[2025-05-12T14:15:13.249] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 190 ms -[2025-05-12T14:15:13.249] [INFO] debug-file - Finished :default:assembleHap... after 1 ms -[2025-05-12T14:15:13.250] [DEBUG] debug-file - BUILD SUCCESSFUL in 1 s 191 ms -[2025-05-12T14:15:13.250] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@PreBuild is up-to-date. -[2025-05-12T14:15:13.250] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@PreBuild is up-to-date. -[2025-05-12T14:15:13.250] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task utils:default@PreBuild is up-to-date. -[2025-05-12T14:15:13.250] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@PreBuild is up-to-date. -[2025-05-12T14:15:13.250] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@PreBuild is up-to-date. -[2025-05-12T14:15:13.250] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@PreBuild is up-to-date. -[2025-05-12T14:15:13.250] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@GenerateMetadata is up-to-date. -[2025-05-12T14:15:13.250] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@GeneratePkgContextInfo is up-to-date. -[2025-05-12T14:15:13.250] [DEBUG] debug-file - Update task default:default@ProcessIntegratedHsp output file:/Users/gandanxiangzhao/Downloads/Expert/harmony/build/cache/default/integrated_hsp/integratedHspCache.json cache. -[2025-05-12T14:15:13.250] [DEBUG] debug-file - Incremental task default:default@ProcessIntegratedHsp post-execution cost:1 ms . -[2025-05-12T14:15:13.250] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@CreateHarBuildProfile is up-to-date. -[2025-05-12T14:15:13.250] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@MergeProfile is up-to-date. -[2025-05-12T14:15:13.250] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task utils:default@CreateHarBuildProfile is up-to-date. -[2025-05-12T14:15:13.250] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task utils:default@MergeProfile is up-to-date. -[2025-05-12T14:15:13.250] [DEBUG] debug-file - Update task default:default@SyscapTransform input file:/Applications/DevEco-Studio.app/Contents/sdk/default/openharmony/toolchains/syscap_tool cache by regenerate. -[2025-05-12T14:15:13.250] [DEBUG] debug-file - Update task default:default@SyscapTransform input file:/Applications/DevEco-Studio.app/Contents/sdk/default/openharmony/ets/api/device-define cache by regenerate. -[2025-05-12T14:15:13.250] [DEBUG] debug-file - Update task default:default@SyscapTransform output file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/syscap/default/rpcid.sc cache. -[2025-05-12T14:15:13.250] [DEBUG] debug-file - Incremental task default:default@SyscapTransform post-execution cost:1 ms . -[2025-05-12T14:15:13.250] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessRouterMap is up-to-date. -[2025-05-12T14:15:13.250] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@CreateHarBuildProfile is up-to-date. -[2025-05-12T14:15:13.250] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@CreateHarBuildProfile is up-to-date. -[2025-05-12T14:15:13.250] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@CreateHarBuildProfile is up-to-date. -[2025-05-12T14:15:13.250] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@MergeProfile is up-to-date. -[2025-05-12T14:15:13.250] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@MergeProfile is up-to-date. -[2025-05-12T14:15:13.250] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@MergeProfile is up-to-date. -[2025-05-12T14:15:13.250] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@GenerateLoaderJson is up-to-date. -[2025-05-12T14:15:13.250] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@CreateBuildProfile is up-to-date. -[2025-05-12T14:15:13.250] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@MergeProfile is up-to-date. -[2025-05-12T14:15:13.251] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@ProcessLibs is up-to-date. -[2025-05-12T14:15:13.251] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@MakePackInfo is up-to-date. -[2025-05-12T14:15:13.251] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessProfile is up-to-date. -[2025-05-12T14:15:13.251] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task utils:default@ProcessLibs is up-to-date. -[2025-05-12T14:15:13.251] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@DoNativeStrip is up-to-date. -[2025-05-12T14:15:13.251] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessResource is up-to-date. -[2025-05-12T14:15:13.251] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task utils:default@DoNativeStrip is up-to-date. -[2025-05-12T14:15:13.251] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@CompileResource is up-to-date. -[2025-05-12T14:15:13.251] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@ProcessLibs is up-to-date. -[2025-05-12T14:15:13.251] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@ProcessLibs is up-to-date. -[2025-05-12T14:15:13.251] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@ProcessLibs is up-to-date. -[2025-05-12T14:15:13.251] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader/default cache by regenerate. -[2025-05-12T14:15:13.252] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/basic/Index.ets cache by regenerate. -[2025-05-12T14:15:13.252] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/utils/Index.ets cache by regenerate. -[2025-05-12T14:15:13.252] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/features/mypage/Index.ets cache by regenerate. -[2025-05-12T14:15:13.252] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/features/Home/Index.ets cache by regenerate. -[2025-05-12T14:15:13.252] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/features/register/Index.ets cache by regenerate. -[2025-05-12T14:15:13.252] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/oh_modules/.ohpm/@ohos+crypto-js@2.0.4/oh_modules/@ohos/crypto-js/index.ts cache by regenerate. -[2025-05-12T14:15:13.252] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/basic/src/main/ets cache by regenerate. -[2025-05-12T14:15:13.252] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/utils/src/main/ets cache by regenerate. -[2025-05-12T14:15:13.253] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/features/mypage/src/main/ets cache by regenerate. -[2025-05-12T14:15:13.253] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/features/Home/src/main/ets cache by regenerate. -[2025-05-12T14:15:13.254] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/features/register/src/main/ets cache by regenerate. -[2025-05-12T14:15:13.254] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/resources/rawfile cache by regenerate. -[2025-05-12T14:15:13.254] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/ResourceTable.txt cache by regenerate. -[2025-05-12T14:15:13.254] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/ark_module.json cache by regenerate. -[2025-05-12T14:15:13.254] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/resources/base/profile cache by regenerate. -[2025-05-12T14:15:13.254] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/src/main/ets cache by regenerate. -[2025-05-12T14:15:13.254] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader/default/pkgContextInfo.json cache by regenerate. -[2025-05-12T14:15:13.254] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/generated/profile/default/BuildProfile.ets cache by regenerate. -[2025-05-12T14:15:13.254] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/basic/BuildProfile.ets cache by regenerate. -[2025-05-12T14:15:13.255] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/utils/BuildProfile.ets cache by regenerate. -[2025-05-12T14:15:13.255] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/features/mypage/BuildProfile.ets cache by regenerate. -[2025-05-12T14:15:13.255] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/features/Home/BuildProfile.ets cache by regenerate. -[2025-05-12T14:15:13.255] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/features/register/BuildProfile.ets cache by regenerate. -[2025-05-12T14:15:13.255] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/src/mock/mock-config.json5 cache by regenerate. -[2025-05-12T14:15:13.255] [DEBUG] debug-file - Update task default:default@CompileArkTS output file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader_out/default/ets cache. -[2025-05-12T14:15:13.255] [DEBUG] debug-file - Incremental task default:default@CompileArkTS post-execution cost:5 ms . -[2025-05-12T14:15:13.255] [DEBUG] debug-file - Update task default:default@BuildJS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader/default cache by regenerate. -[2025-05-12T14:15:13.255] [DEBUG] debug-file - Update task default:default@BuildJS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/basic/Index.ets cache by regenerate. -[2025-05-12T14:15:13.255] [DEBUG] debug-file - Update task default:default@BuildJS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/utils/Index.ets cache by regenerate. -[2025-05-12T14:15:13.255] [DEBUG] debug-file - Update task default:default@BuildJS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/features/mypage/Index.ets cache by regenerate. -[2025-05-12T14:15:13.255] [DEBUG] debug-file - Update task default:default@BuildJS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/features/Home/Index.ets cache by regenerate. -[2025-05-12T14:15:13.255] [DEBUG] debug-file - Update task default:default@BuildJS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/features/register/Index.ets cache by regenerate. -[2025-05-12T14:15:13.255] [DEBUG] debug-file - Update task default:default@BuildJS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/oh_modules/.ohpm/@ohos+crypto-js@2.0.4/oh_modules/@ohos/crypto-js/index.ts cache by regenerate. -[2025-05-12T14:15:13.255] [DEBUG] debug-file - Update task default:default@BuildJS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/oh_modules/.ohpm/@ohos+crypto-js@2.0.4/oh_modules/@ohos/crypto-js/src/main/js cache by regenerate. -[2025-05-12T14:15:13.256] [DEBUG] debug-file - Update task default:default@BuildJS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/resources/rawfile cache by regenerate. -[2025-05-12T14:15:13.256] [DEBUG] debug-file - Update task default:default@BuildJS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/ResourceTable.txt cache by regenerate. -[2025-05-12T14:15:13.256] [DEBUG] debug-file - Update task default:default@BuildJS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/ark_module.json cache by regenerate. -[2025-05-12T14:15:13.256] [DEBUG] debug-file - Update task default:default@BuildJS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/resources/base/profile cache by regenerate. -[2025-05-12T14:15:13.256] [DEBUG] debug-file - Update task default:default@BuildJS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader/default/pkgContextInfo.json cache by regenerate. -[2025-05-12T14:15:13.256] [DEBUG] debug-file - Update task default:default@BuildJS output file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader_out/default/js cache. -[2025-05-12T14:15:13.256] [DEBUG] debug-file - Incremental task default:default@BuildJS post-execution cost:2 ms . -[2025-05-12T14:15:13.256] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@DoNativeStrip is up-to-date. -[2025-05-12T14:15:13.256] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@DoNativeStrip is up-to-date. -[2025-05-12T14:15:13.256] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@DoNativeStrip is up-to-date. -[2025-05-12T14:15:13.256] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessLibs is up-to-date. -[2025-05-12T14:15:13.256] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@DoNativeStrip is up-to-date. -[2025-05-12T14:15:13.256] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@CacheNativeLibs is up-to-date. -[2025-05-12T14:15:13.256] [DEBUG] debug-file - Update task default:default@GeneratePkgModuleJson input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/module.json cache from map. -[2025-05-12T14:15:13.256] [DEBUG] debug-file - Update task default:default@GeneratePkgModuleJson output file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/package/default/module.json cache. -[2025-05-12T14:15:13.256] [DEBUG] debug-file - Incremental task default:default@GeneratePkgModuleJson post-execution cost:1 ms . -[2025-05-12T14:15:13.256] [DEBUG] debug-file - Update task default:default@PackageHap input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/stripped_native_libs/default cache by regenerate. -[2025-05-12T14:15:13.256] [DEBUG] debug-file - Update task default:default@PackageHap input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/module.json cache from map. -[2025-05-12T14:15:13.256] [DEBUG] debug-file - Update task default:default@PackageHap input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/resources cache by regenerate. -[2025-05-12T14:15:13.257] [DEBUG] debug-file - Update task default:default@PackageHap input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/resources.index cache by regenerate. -[2025-05-12T14:15:13.257] [DEBUG] debug-file - Update task default:default@PackageHap input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/outputs/default/pack.info cache by regenerate. -[2025-05-12T14:15:13.257] [DEBUG] debug-file - Update task default:default@PackageHap input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader_out/default/ets cache by regenerate. -[2025-05-12T14:15:13.257] [DEBUG] debug-file - Update task default:default@PackageHap input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader/default/pkgContextInfo.json cache by regenerate. -[2025-05-12T14:15:13.257] [DEBUG] debug-file - Update task default:default@PackageHap input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader_out/default/ets/sourceMaps.map cache by regenerate. -[2025-05-12T14:15:13.257] [DEBUG] debug-file - Update task default:default@PackageHap input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/generated/profile/default/BuildProfile.ets cache by regenerate. -[2025-05-12T14:15:13.257] [DEBUG] debug-file - Update task default:default@PackageHap output file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/outputs/default/default-default-unsigned.hap cache. -[2025-05-12T14:15:13.257] [DEBUG] debug-file - Update task default:default@PackageHap output file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/source_map/default/sourceMaps.map cache. -[2025-05-12T14:15:13.257] [DEBUG] debug-file - Update task default:default@PackageHap output file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/outputs/default/mapping/sourceMaps.map cache. -[2025-05-12T14:15:13.258] [DEBUG] debug-file - Incremental task default:default@PackageHap post-execution cost:2 ms . -[2025-05-12T14:15:13.258] [DEBUG] debug-file - Update task default:default@SignHap input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/outputs/default/default-default-unsigned.hap cache from map. -[2025-05-12T14:15:13.258] [DEBUG] debug-file - Update task default:default@SignHap output file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/outputs/default/default-default-signed.hap cache. -[2025-05-12T14:15:13.258] [DEBUG] debug-file - Incremental task default:default@SignHap post-execution cost:1 ms . -[2025-05-12T14:15:13.258] [DEBUG] debug-file - Update task default:default@CollectDebugSymbol input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader_out/default/ets/sourceMaps.map cache by regenerate. -[2025-05-12T14:15:13.258] [DEBUG] debug-file - Update task default:default@CollectDebugSymbol input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/libs/default cache by regenerate. -[2025-05-12T14:15:13.258] [DEBUG] debug-file - Update task default:default@CollectDebugSymbol output file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/outputs/default/symbol cache. -[2025-05-12T14:15:13.258] [DEBUG] debug-file - Incremental task default:default@CollectDebugSymbol post-execution cost:1 ms . -[2025-05-12T14:15:13.269] [DEBUG] debug-file - Cleanup worker 6. -[2025-05-12T14:15:13.269] [DEBUG] debug-file - Worker 6 has been cleaned up. -[2025-05-12T14:15:13.269] [DEBUG] debug-file - Current idle worker size: 1. -[2025-05-12T14:15:13.269] [DEBUG] debug-file - Current resident worker size: 2. -[2025-05-12T14:15:13.270] [DEBUG] debug-file - hvigor build process will be closed. -[2025-05-12T14:15:13.272] [DEBUG] debug-file - session manager: send message to worker process. -[2025-05-12T14:15:13.272] [DEBUG] debug-file - session manager: send message to worker process. -[2025-05-12T14:15:13.272] [DEBUG] debug-file - watch worker: worker id should be larger than 0. Nothing will be sent to any worker thread. -[2025-05-12T14:15:13.273] [DEBUG] debug-file - watch worker: worker id should be larger than 0. Nothing will be sent to any worker thread. -[2025-05-12T14:15:13.274] [DEBUG] debug-file - worker[6] exits with exit code 1. -[2025-05-12T14:15:52.916] [DEBUG] debug-file - session manager: set active socket. socketId=YSTFzysHJXvzNWcHAABF -[2025-05-12T14:15:52.918] [DEBUG] debug-file - watch worker: worker id should be larger than 0. Nothing will be sent to any worker thread. -[2025-05-12T14:15:52.929] [DEBUG] debug-file - Hvigor init with startParameters:{ +[2025-07-09T18:48:45.186] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\pick.js cache by regenerate. +[2025-07-09T18:48:45.186] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\pickBy.d.ts cache by regenerate. +[2025-07-09T18:48:45.186] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\pickBy.js cache by regenerate. +[2025-07-09T18:48:45.186] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\plant.js cache by regenerate. +[2025-07-09T18:48:45.186] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\property.d.ts cache by regenerate. +[2025-07-09T18:48:45.186] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\property.js cache by regenerate. +[2025-07-09T18:48:45.187] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\propertyOf.d.ts cache by regenerate. +[2025-07-09T18:48:45.187] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\propertyOf.js cache by regenerate. +[2025-07-09T18:48:45.187] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\pull.d.ts cache by regenerate. +[2025-07-09T18:48:45.187] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\pull.js cache by regenerate. +[2025-07-09T18:48:45.189] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\pullAll.d.ts cache by regenerate. +[2025-07-09T18:48:45.189] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\pullAll.js cache by regenerate. +[2025-07-09T18:48:45.189] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\pullAllBy.d.ts cache by regenerate. +[2025-07-09T18:48:45.189] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\pullAllBy.js cache by regenerate. +[2025-07-09T18:48:45.189] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\pullAllWith.d.ts cache by regenerate. +[2025-07-09T18:48:45.189] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\pullAllWith.js cache by regenerate. +[2025-07-09T18:48:45.189] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\pullAt.d.ts cache by regenerate. +[2025-07-09T18:48:45.189] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\pullAt.js cache by regenerate. +[2025-07-09T18:48:45.189] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\random.d.ts cache by regenerate. +[2025-07-09T18:48:45.190] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\random.js cache by regenerate. +[2025-07-09T18:48:45.190] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\range.d.ts cache by regenerate. +[2025-07-09T18:48:45.190] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\range.js cache by regenerate. +[2025-07-09T18:48:45.190] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\rangeRight.d.ts cache by regenerate. +[2025-07-09T18:48:45.190] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\rangeRight.js cache by regenerate. +[2025-07-09T18:48:45.190] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\rearg.d.ts cache by regenerate. +[2025-07-09T18:48:45.190] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\rearg.js cache by regenerate. +[2025-07-09T18:48:45.190] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\reduce.d.ts cache by regenerate. +[2025-07-09T18:48:45.190] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\reduce.js cache by regenerate. +[2025-07-09T18:48:45.190] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\reduceRight.d.ts cache by regenerate. +[2025-07-09T18:48:45.190] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\reduceRight.js cache by regenerate. +[2025-07-09T18:48:45.191] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\reject.d.ts cache by regenerate. +[2025-07-09T18:48:45.191] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\reject.js cache by regenerate. +[2025-07-09T18:48:45.191] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\remove.d.ts cache by regenerate. +[2025-07-09T18:48:45.191] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\remove.js cache by regenerate. +[2025-07-09T18:48:45.191] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\repeat.d.ts cache by regenerate. +[2025-07-09T18:48:45.191] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\repeat.js cache by regenerate. +[2025-07-09T18:48:45.191] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\replace.d.ts cache by regenerate. +[2025-07-09T18:48:45.191] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\replace.js cache by regenerate. +[2025-07-09T18:48:45.191] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\rest.d.ts cache by regenerate. +[2025-07-09T18:48:45.191] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\rest.js cache by regenerate. +[2025-07-09T18:48:45.191] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\result.d.ts cache by regenerate. +[2025-07-09T18:48:45.191] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\result.js cache by regenerate. +[2025-07-09T18:48:45.192] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\reverse.d.ts cache by regenerate. +[2025-07-09T18:48:45.192] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\reverse.js cache by regenerate. +[2025-07-09T18:48:45.192] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\round.d.ts cache by regenerate. +[2025-07-09T18:48:45.192] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\round.js cache by regenerate. +[2025-07-09T18:48:45.192] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\sample.d.ts cache by regenerate. +[2025-07-09T18:48:45.192] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\sample.js cache by regenerate. +[2025-07-09T18:48:45.192] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\sampleSize.d.ts cache by regenerate. +[2025-07-09T18:48:45.192] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\sampleSize.js cache by regenerate. +[2025-07-09T18:48:45.192] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\seq.default.js cache by regenerate. +[2025-07-09T18:48:45.192] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\seq.js cache by regenerate. +[2025-07-09T18:48:45.193] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\set.d.ts cache by regenerate. +[2025-07-09T18:48:45.193] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\set.js cache by regenerate. +[2025-07-09T18:48:45.193] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\setWith.d.ts cache by regenerate. +[2025-07-09T18:48:45.193] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\setWith.js cache by regenerate. +[2025-07-09T18:48:45.193] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\shuffle.d.ts cache by regenerate. +[2025-07-09T18:48:45.193] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\shuffle.js cache by regenerate. +[2025-07-09T18:48:45.193] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\size.d.ts cache by regenerate. +[2025-07-09T18:48:45.193] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\size.js cache by regenerate. +[2025-07-09T18:48:45.193] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\slice.d.ts cache by regenerate. +[2025-07-09T18:48:45.193] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\slice.js cache by regenerate. +[2025-07-09T18:48:45.194] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\snakeCase.d.ts cache by regenerate. +[2025-07-09T18:48:45.194] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\snakeCase.js cache by regenerate. +[2025-07-09T18:48:45.194] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\some.d.ts cache by regenerate. +[2025-07-09T18:48:45.194] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\some.js cache by regenerate. +[2025-07-09T18:48:45.194] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\sortBy.d.ts cache by regenerate. +[2025-07-09T18:48:45.194] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\sortBy.js cache by regenerate. +[2025-07-09T18:48:45.194] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\sortedIndex.d.ts cache by regenerate. +[2025-07-09T18:48:45.194] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\sortedIndex.js cache by regenerate. +[2025-07-09T18:48:45.194] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\sortedIndexBy.d.ts cache by regenerate. +[2025-07-09T18:48:45.194] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\sortedIndexBy.js cache by regenerate. +[2025-07-09T18:48:45.195] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\sortedIndexOf.d.ts cache by regenerate. +[2025-07-09T18:48:45.195] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\sortedIndexOf.js cache by regenerate. +[2025-07-09T18:48:45.195] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\sortedLastIndex.d.ts cache by regenerate. +[2025-07-09T18:48:45.195] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\sortedLastIndex.js cache by regenerate. +[2025-07-09T18:48:45.195] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\sortedLastIndexBy.d.ts cache by regenerate. +[2025-07-09T18:48:45.195] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\sortedLastIndexBy.js cache by regenerate. +[2025-07-09T18:48:45.195] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\sortedLastIndexOf.d.ts cache by regenerate. +[2025-07-09T18:48:45.195] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\sortedLastIndexOf.js cache by regenerate. +[2025-07-09T18:48:45.195] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\sortedUniq.d.ts cache by regenerate. +[2025-07-09T18:48:45.195] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\sortedUniq.js cache by regenerate. +[2025-07-09T18:48:45.196] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\sortedUniqBy.d.ts cache by regenerate. +[2025-07-09T18:48:45.196] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\sortedUniqBy.js cache by regenerate. +[2025-07-09T18:48:45.196] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\split.d.ts cache by regenerate. +[2025-07-09T18:48:45.196] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\split.js cache by regenerate. +[2025-07-09T18:48:45.196] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\spread.d.ts cache by regenerate. +[2025-07-09T18:48:45.196] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\spread.js cache by regenerate. +[2025-07-09T18:48:45.196] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\startCase.d.ts cache by regenerate. +[2025-07-09T18:48:45.196] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\startCase.js cache by regenerate. +[2025-07-09T18:48:45.196] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\startsWith.d.ts cache by regenerate. +[2025-07-09T18:48:45.196] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\startsWith.js cache by regenerate. +[2025-07-09T18:48:45.197] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\string.d.ts cache by regenerate. +[2025-07-09T18:48:45.197] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\string.default.d.ts cache by regenerate. +[2025-07-09T18:48:45.197] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\string.default.js cache by regenerate. +[2025-07-09T18:48:45.197] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\string.js cache by regenerate. +[2025-07-09T18:48:45.197] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\stubArray.d.ts cache by regenerate. +[2025-07-09T18:48:45.197] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\stubArray.js cache by regenerate. +[2025-07-09T18:48:45.197] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\stubFalse.d.ts cache by regenerate. +[2025-07-09T18:48:45.197] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\stubFalse.js cache by regenerate. +[2025-07-09T18:48:45.197] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\stubObject.d.ts cache by regenerate. +[2025-07-09T18:48:45.197] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\stubObject.js cache by regenerate. +[2025-07-09T18:48:45.197] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\stubString.d.ts cache by regenerate. +[2025-07-09T18:48:45.198] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\stubString.js cache by regenerate. +[2025-07-09T18:48:45.198] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\stubTrue.d.ts cache by regenerate. +[2025-07-09T18:48:45.198] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\stubTrue.js cache by regenerate. +[2025-07-09T18:48:45.198] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\subtract.d.ts cache by regenerate. +[2025-07-09T18:48:45.198] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\subtract.js cache by regenerate. +[2025-07-09T18:48:45.198] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\sum.d.ts cache by regenerate. +[2025-07-09T18:48:45.198] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\sum.js cache by regenerate. +[2025-07-09T18:48:45.198] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\sumBy.d.ts cache by regenerate. +[2025-07-09T18:48:45.198] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\sumBy.js cache by regenerate. +[2025-07-09T18:48:45.198] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\tail.d.ts cache by regenerate. +[2025-07-09T18:48:45.198] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\tail.js cache by regenerate. +[2025-07-09T18:48:45.199] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\take.d.ts cache by regenerate. +[2025-07-09T18:48:45.199] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\take.js cache by regenerate. +[2025-07-09T18:48:45.199] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\takeRight.d.ts cache by regenerate. +[2025-07-09T18:48:45.199] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\takeRight.js cache by regenerate. +[2025-07-09T18:48:45.199] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\takeRightWhile.d.ts cache by regenerate. +[2025-07-09T18:48:45.199] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\takeRightWhile.js cache by regenerate. +[2025-07-09T18:48:45.199] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\takeWhile.d.ts cache by regenerate. +[2025-07-09T18:48:45.199] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\takeWhile.js cache by regenerate. +[2025-07-09T18:48:45.199] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\tap.d.ts cache by regenerate. +[2025-07-09T18:48:45.199] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\tap.js cache by regenerate. +[2025-07-09T18:48:45.200] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\template.d.ts cache by regenerate. +[2025-07-09T18:48:45.200] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\template.js cache by regenerate. +[2025-07-09T18:48:45.200] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\templateSettings.d.ts cache by regenerate. +[2025-07-09T18:48:45.200] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\templateSettings.js cache by regenerate. +[2025-07-09T18:48:45.200] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\throttle.d.ts cache by regenerate. +[2025-07-09T18:48:45.200] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\throttle.js cache by regenerate. +[2025-07-09T18:48:45.200] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\thru.js cache by regenerate. +[2025-07-09T18:48:45.200] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\times.d.ts cache by regenerate. +[2025-07-09T18:48:45.200] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\times.js cache by regenerate. +[2025-07-09T18:48:45.200] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toArray.d.ts cache by regenerate. +[2025-07-09T18:48:45.200] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toArray.js cache by regenerate. +[2025-07-09T18:48:45.201] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toFinite.d.ts cache by regenerate. +[2025-07-09T18:48:45.201] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toFinite.js cache by regenerate. +[2025-07-09T18:48:45.201] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toInteger.d.ts cache by regenerate. +[2025-07-09T18:48:45.201] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toInteger.js cache by regenerate. +[2025-07-09T18:48:45.201] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toIterator.js cache by regenerate. +[2025-07-09T18:48:45.201] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toJSON.js cache by regenerate. +[2025-07-09T18:48:45.201] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toLength.d.ts cache by regenerate. +[2025-07-09T18:48:45.201] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toLength.js cache by regenerate. +[2025-07-09T18:48:45.201] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toLower.d.ts cache by regenerate. +[2025-07-09T18:48:45.201] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toLower.js cache by regenerate. +[2025-07-09T18:48:45.201] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toNumber.d.ts cache by regenerate. +[2025-07-09T18:48:45.202] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toNumber.js cache by regenerate. +[2025-07-09T18:48:45.202] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toPairs.d.ts cache by regenerate. +[2025-07-09T18:48:45.202] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toPairs.js cache by regenerate. +[2025-07-09T18:48:45.202] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toPairsIn.d.ts cache by regenerate. +[2025-07-09T18:48:45.202] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toPairsIn.js cache by regenerate. +[2025-07-09T18:48:45.202] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toPath.d.ts cache by regenerate. +[2025-07-09T18:48:45.202] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toPath.js cache by regenerate. +[2025-07-09T18:48:45.202] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toPlainObject.d.ts cache by regenerate. +[2025-07-09T18:48:45.202] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toPlainObject.js cache by regenerate. +[2025-07-09T18:48:45.202] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toSafeInteger.d.ts cache by regenerate. +[2025-07-09T18:48:45.202] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toSafeInteger.js cache by regenerate. +[2025-07-09T18:48:45.203] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toString.d.ts cache by regenerate. +[2025-07-09T18:48:45.203] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toString.js cache by regenerate. +[2025-07-09T18:48:45.203] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toUpper.d.ts cache by regenerate. +[2025-07-09T18:48:45.203] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\toUpper.js cache by regenerate. +[2025-07-09T18:48:45.203] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\transform.d.ts cache by regenerate. +[2025-07-09T18:48:45.203] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\transform.js cache by regenerate. +[2025-07-09T18:48:45.203] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\trim.d.ts cache by regenerate. +[2025-07-09T18:48:45.203] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\trim.js cache by regenerate. +[2025-07-09T18:48:45.203] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\trimEnd.d.ts cache by regenerate. +[2025-07-09T18:48:45.203] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\trimEnd.js cache by regenerate. +[2025-07-09T18:48:45.203] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\trimStart.d.ts cache by regenerate. +[2025-07-09T18:48:45.204] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\trimStart.js cache by regenerate. +[2025-07-09T18:48:45.204] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\truncate.d.ts cache by regenerate. +[2025-07-09T18:48:45.204] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\truncate.js cache by regenerate. +[2025-07-09T18:48:45.204] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\unary.d.ts cache by regenerate. +[2025-07-09T18:48:45.204] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\unary.js cache by regenerate. +[2025-07-09T18:48:45.204] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\unescape.d.ts cache by regenerate. +[2025-07-09T18:48:45.204] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\unescape.js cache by regenerate. +[2025-07-09T18:48:45.204] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\union.d.ts cache by regenerate. +[2025-07-09T18:48:45.204] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\union.js cache by regenerate. +[2025-07-09T18:48:45.204] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\unionBy.d.ts cache by regenerate. +[2025-07-09T18:48:45.204] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\unionBy.js cache by regenerate. +[2025-07-09T18:48:45.205] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\unionWith.d.ts cache by regenerate. +[2025-07-09T18:48:45.205] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\unionWith.js cache by regenerate. +[2025-07-09T18:48:45.205] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\uniq.d.ts cache by regenerate. +[2025-07-09T18:48:45.205] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\uniq.js cache by regenerate. +[2025-07-09T18:48:45.205] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\uniqBy.d.ts cache by regenerate. +[2025-07-09T18:48:45.205] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\uniqBy.js cache by regenerate. +[2025-07-09T18:48:45.205] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\uniqueId.d.ts cache by regenerate. +[2025-07-09T18:48:45.205] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\uniqueId.js cache by regenerate. +[2025-07-09T18:48:45.205] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\uniqWith.d.ts cache by regenerate. +[2025-07-09T18:48:45.205] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\uniqWith.js cache by regenerate. +[2025-07-09T18:48:45.205] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\unset.d.ts cache by regenerate. +[2025-07-09T18:48:45.206] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\unset.js cache by regenerate. +[2025-07-09T18:48:45.206] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\unzip.d.ts cache by regenerate. +[2025-07-09T18:48:45.206] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\unzip.js cache by regenerate. +[2025-07-09T18:48:45.206] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\unzipWith.d.ts cache by regenerate. +[2025-07-09T18:48:45.206] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\unzipWith.js cache by regenerate. +[2025-07-09T18:48:45.206] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\update.d.ts cache by regenerate. +[2025-07-09T18:48:45.206] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\update.js cache by regenerate. +[2025-07-09T18:48:45.206] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\updateWith.d.ts cache by regenerate. +[2025-07-09T18:48:45.206] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\updateWith.js cache by regenerate. +[2025-07-09T18:48:45.206] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\upperCase.d.ts cache by regenerate. +[2025-07-09T18:48:45.206] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\upperCase.js cache by regenerate. +[2025-07-09T18:48:45.207] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\upperFirst.d.ts cache by regenerate. +[2025-07-09T18:48:45.207] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\upperFirst.js cache by regenerate. +[2025-07-09T18:48:45.207] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\util.d.ts cache by regenerate. +[2025-07-09T18:48:45.207] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\util.default.d.ts cache by regenerate. +[2025-07-09T18:48:45.207] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\util.default.js cache by regenerate. +[2025-07-09T18:48:45.207] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\util.js cache by regenerate. +[2025-07-09T18:48:45.207] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\value.js cache by regenerate. +[2025-07-09T18:48:45.207] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\valueOf.js cache by regenerate. +[2025-07-09T18:48:45.207] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\values.d.ts cache by regenerate. +[2025-07-09T18:48:45.207] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\values.js cache by regenerate. +[2025-07-09T18:48:45.207] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\valuesIn.d.ts cache by regenerate. +[2025-07-09T18:48:45.207] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\valuesIn.js cache by regenerate. +[2025-07-09T18:48:45.208] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\without.d.ts cache by regenerate. +[2025-07-09T18:48:45.208] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\without.js cache by regenerate. +[2025-07-09T18:48:45.208] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\words.d.ts cache by regenerate. +[2025-07-09T18:48:45.208] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\words.js cache by regenerate. +[2025-07-09T18:48:45.208] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\wrap.d.ts cache by regenerate. +[2025-07-09T18:48:45.208] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\wrap.js cache by regenerate. +[2025-07-09T18:48:45.208] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\wrapperAt.js cache by regenerate. +[2025-07-09T18:48:45.208] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\wrapperChain.js cache by regenerate. +[2025-07-09T18:48:45.208] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\wrapperLodash.js cache by regenerate. +[2025-07-09T18:48:45.208] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\wrapperReverse.js cache by regenerate. +[2025-07-09T18:48:45.208] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\wrapperValue.js cache by regenerate. +[2025-07-09T18:48:45.208] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\xor.d.ts cache by regenerate. +[2025-07-09T18:48:45.209] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\xor.js cache by regenerate. +[2025-07-09T18:48:45.209] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\xorBy.d.ts cache by regenerate. +[2025-07-09T18:48:45.209] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\xorBy.js cache by regenerate. +[2025-07-09T18:48:45.209] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\xorWith.d.ts cache by regenerate. +[2025-07-09T18:48:45.209] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\xorWith.js cache by regenerate. +[2025-07-09T18:48:45.209] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\zip.d.ts cache by regenerate. +[2025-07-09T18:48:45.209] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\zip.js cache by regenerate. +[2025-07-09T18:48:45.209] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\zipObject.d.ts cache by regenerate. +[2025-07-09T18:48:45.209] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\zipObject.js cache by regenerate. +[2025-07-09T18:48:45.209] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\zipObjectDeep.d.ts cache by regenerate. +[2025-07-09T18:48:45.210] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\zipObjectDeep.js cache by regenerate. +[2025-07-09T18:48:45.210] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\zipWith.d.ts cache by regenerate. +[2025-07-09T18:48:45.210] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\zipWith.js cache by regenerate. +[2025-07-09T18:48:45.210] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_addMapEntry.js cache by regenerate. +[2025-07-09T18:48:45.210] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_addSetEntry.js cache by regenerate. +[2025-07-09T18:48:45.210] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_apply.js cache by regenerate. +[2025-07-09T18:48:45.210] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_arrayAggregator.js cache by regenerate. +[2025-07-09T18:48:45.210] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_arrayEach.js cache by regenerate. +[2025-07-09T18:48:45.210] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_arrayEachRight.js cache by regenerate. +[2025-07-09T18:48:45.211] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_arrayEvery.js cache by regenerate. +[2025-07-09T18:48:45.211] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_arrayFilter.js cache by regenerate. +[2025-07-09T18:48:45.211] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_arrayIncludes.js cache by regenerate. +[2025-07-09T18:48:45.211] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_arrayIncludesWith.js cache by regenerate. +[2025-07-09T18:48:45.211] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_arrayLikeKeys.js cache by regenerate. +[2025-07-09T18:48:45.211] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_arrayMap.js cache by regenerate. +[2025-07-09T18:48:45.211] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_arrayPush.js cache by regenerate. +[2025-07-09T18:48:45.211] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_arrayReduce.js cache by regenerate. +[2025-07-09T18:48:45.211] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_arrayReduceRight.js cache by regenerate. +[2025-07-09T18:48:45.211] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_arraySample.js cache by regenerate. +[2025-07-09T18:48:45.211] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_arraySampleSize.js cache by regenerate. +[2025-07-09T18:48:45.212] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_arrayShuffle.js cache by regenerate. +[2025-07-09T18:48:45.212] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_arraySome.js cache by regenerate. +[2025-07-09T18:48:45.212] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_asciiSize.js cache by regenerate. +[2025-07-09T18:48:45.212] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_asciiToArray.js cache by regenerate. +[2025-07-09T18:48:45.212] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_asciiWords.js cache by regenerate. +[2025-07-09T18:48:45.212] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_assignMergeValue.js cache by regenerate. +[2025-07-09T18:48:45.212] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_assignValue.js cache by regenerate. +[2025-07-09T18:48:45.212] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_assocIndexOf.js cache by regenerate. +[2025-07-09T18:48:45.212] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseAggregator.js cache by regenerate. +[2025-07-09T18:48:45.212] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseAssign.js cache by regenerate. +[2025-07-09T18:48:45.212] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseAssignIn.js cache by regenerate. +[2025-07-09T18:48:45.212] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseAssignValue.js cache by regenerate. +[2025-07-09T18:48:45.213] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseAt.js cache by regenerate. +[2025-07-09T18:48:45.213] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseClamp.js cache by regenerate. +[2025-07-09T18:48:45.213] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseClone.js cache by regenerate. +[2025-07-09T18:48:45.213] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseConforms.js cache by regenerate. +[2025-07-09T18:48:45.213] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseConformsTo.js cache by regenerate. +[2025-07-09T18:48:45.213] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseCreate.js cache by regenerate. +[2025-07-09T18:48:45.213] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseDelay.js cache by regenerate. +[2025-07-09T18:48:45.213] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseDifference.js cache by regenerate. +[2025-07-09T18:48:45.213] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseEach.js cache by regenerate. +[2025-07-09T18:48:45.213] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseEachRight.js cache by regenerate. +[2025-07-09T18:48:45.213] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseEvery.js cache by regenerate. +[2025-07-09T18:48:45.214] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseExtremum.js cache by regenerate. +[2025-07-09T18:48:45.214] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseFill.js cache by regenerate. +[2025-07-09T18:48:45.214] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseFilter.js cache by regenerate. +[2025-07-09T18:48:45.214] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseFindIndex.js cache by regenerate. +[2025-07-09T18:48:45.214] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseFindKey.js cache by regenerate. +[2025-07-09T18:48:45.214] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseFlatten.js cache by regenerate. +[2025-07-09T18:48:45.214] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseFor.js cache by regenerate. +[2025-07-09T18:48:45.214] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseForOwn.js cache by regenerate. +[2025-07-09T18:48:45.214] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseForOwnRight.js cache by regenerate. +[2025-07-09T18:48:45.214] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseForRight.js cache by regenerate. +[2025-07-09T18:48:45.214] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseFunctions.js cache by regenerate. +[2025-07-09T18:48:45.214] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseGet.js cache by regenerate. +[2025-07-09T18:48:45.215] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseGetAllKeys.js cache by regenerate. +[2025-07-09T18:48:45.215] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseGetTag.js cache by regenerate. +[2025-07-09T18:48:45.215] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseGt.js cache by regenerate. +[2025-07-09T18:48:45.215] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseHas.js cache by regenerate. +[2025-07-09T18:48:45.215] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseHasIn.js cache by regenerate. +[2025-07-09T18:48:45.215] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseIndexOf.js cache by regenerate. +[2025-07-09T18:48:45.215] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseIndexOfWith.js cache by regenerate. +[2025-07-09T18:48:45.215] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseInRange.js cache by regenerate. +[2025-07-09T18:48:45.215] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseIntersection.js cache by regenerate. +[2025-07-09T18:48:45.215] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseInverter.js cache by regenerate. +[2025-07-09T18:48:45.215] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseInvoke.js cache by regenerate. +[2025-07-09T18:48:45.216] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseIsArguments.js cache by regenerate. +[2025-07-09T18:48:45.216] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseIsArrayBuffer.js cache by regenerate. +[2025-07-09T18:48:45.216] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseIsDate.js cache by regenerate. +[2025-07-09T18:48:45.216] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseIsEqual.js cache by regenerate. +[2025-07-09T18:48:45.216] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseIsEqualDeep.js cache by regenerate. +[2025-07-09T18:48:45.216] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseIsMap.js cache by regenerate. +[2025-07-09T18:48:45.216] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseIsMatch.js cache by regenerate. +[2025-07-09T18:48:45.216] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseIsNaN.js cache by regenerate. +[2025-07-09T18:48:45.216] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseIsNative.js cache by regenerate. +[2025-07-09T18:48:45.216] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseIsRegExp.js cache by regenerate. +[2025-07-09T18:48:45.216] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseIsSet.js cache by regenerate. +[2025-07-09T18:48:45.217] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseIsTypedArray.js cache by regenerate. +[2025-07-09T18:48:45.217] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseIteratee.js cache by regenerate. +[2025-07-09T18:48:45.217] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseKeys.js cache by regenerate. +[2025-07-09T18:48:45.217] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseKeysIn.js cache by regenerate. +[2025-07-09T18:48:45.217] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseLodash.js cache by regenerate. +[2025-07-09T18:48:45.217] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseLt.js cache by regenerate. +[2025-07-09T18:48:45.217] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseMap.js cache by regenerate. +[2025-07-09T18:48:45.217] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseMatches.js cache by regenerate. +[2025-07-09T18:48:45.217] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseMatchesProperty.js cache by regenerate. +[2025-07-09T18:48:45.217] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseMean.js cache by regenerate. +[2025-07-09T18:48:45.217] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseMerge.js cache by regenerate. +[2025-07-09T18:48:45.217] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseMergeDeep.js cache by regenerate. +[2025-07-09T18:48:45.218] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseNth.js cache by regenerate. +[2025-07-09T18:48:45.218] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseOrderBy.js cache by regenerate. +[2025-07-09T18:48:45.218] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_basePick.js cache by regenerate. +[2025-07-09T18:48:45.218] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_basePickBy.js cache by regenerate. +[2025-07-09T18:48:45.218] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseProperty.js cache by regenerate. +[2025-07-09T18:48:45.218] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_basePropertyDeep.js cache by regenerate. +[2025-07-09T18:48:45.218] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_basePropertyOf.js cache by regenerate. +[2025-07-09T18:48:45.218] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_basePullAll.js cache by regenerate. +[2025-07-09T18:48:45.218] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_basePullAt.js cache by regenerate. +[2025-07-09T18:48:45.218] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseRandom.js cache by regenerate. +[2025-07-09T18:48:45.218] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseRange.js cache by regenerate. +[2025-07-09T18:48:45.219] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseReduce.js cache by regenerate. +[2025-07-09T18:48:45.219] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseRepeat.js cache by regenerate. +[2025-07-09T18:48:45.219] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseRest.js cache by regenerate. +[2025-07-09T18:48:45.219] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseSample.js cache by regenerate. +[2025-07-09T18:48:45.219] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseSampleSize.js cache by regenerate. +[2025-07-09T18:48:45.219] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseSet.js cache by regenerate. +[2025-07-09T18:48:45.219] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseSetData.js cache by regenerate. +[2025-07-09T18:48:45.219] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseSetToString.js cache by regenerate. +[2025-07-09T18:48:45.219] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseShuffle.js cache by regenerate. +[2025-07-09T18:48:45.219] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseSlice.js cache by regenerate. +[2025-07-09T18:48:45.219] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseSome.js cache by regenerate. +[2025-07-09T18:48:45.219] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseSortBy.js cache by regenerate. +[2025-07-09T18:48:45.220] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseSortedIndex.js cache by regenerate. +[2025-07-09T18:48:45.220] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseSortedIndexBy.js cache by regenerate. +[2025-07-09T18:48:45.220] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseSortedUniq.js cache by regenerate. +[2025-07-09T18:48:45.220] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseSum.js cache by regenerate. +[2025-07-09T18:48:45.220] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseTimes.js cache by regenerate. +[2025-07-09T18:48:45.220] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseToNumber.js cache by regenerate. +[2025-07-09T18:48:45.220] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseToPairs.js cache by regenerate. +[2025-07-09T18:48:45.220] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseToString.js cache by regenerate. +[2025-07-09T18:48:45.220] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseTrim.js cache by regenerate. +[2025-07-09T18:48:45.220] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseUnary.js cache by regenerate. +[2025-07-09T18:48:45.220] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseUniq.js cache by regenerate. +[2025-07-09T18:48:45.220] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseUnset.js cache by regenerate. +[2025-07-09T18:48:45.221] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseUpdate.js cache by regenerate. +[2025-07-09T18:48:45.221] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseValues.js cache by regenerate. +[2025-07-09T18:48:45.221] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseWhile.js cache by regenerate. +[2025-07-09T18:48:45.221] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseWrapperValue.js cache by regenerate. +[2025-07-09T18:48:45.221] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseXor.js cache by regenerate. +[2025-07-09T18:48:45.221] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_baseZipObject.js cache by regenerate. +[2025-07-09T18:48:45.221] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_cacheHas.js cache by regenerate. +[2025-07-09T18:48:45.221] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_castArrayLikeObject.js cache by regenerate. +[2025-07-09T18:48:45.221] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_castFunction.js cache by regenerate. +[2025-07-09T18:48:45.221] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_castPath.js cache by regenerate. +[2025-07-09T18:48:45.221] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_castRest.js cache by regenerate. +[2025-07-09T18:48:45.222] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_castSlice.js cache by regenerate. +[2025-07-09T18:48:45.222] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_charsEndIndex.js cache by regenerate. +[2025-07-09T18:48:45.222] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_charsStartIndex.js cache by regenerate. +[2025-07-09T18:48:45.222] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_cloneArrayBuffer.js cache by regenerate. +[2025-07-09T18:48:45.222] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_cloneBuffer.js cache by regenerate. +[2025-07-09T18:48:45.222] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_cloneDataView.js cache by regenerate. +[2025-07-09T18:48:45.222] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_cloneMap.js cache by regenerate. +[2025-07-09T18:48:45.222] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_cloneRegExp.js cache by regenerate. +[2025-07-09T18:48:45.222] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_cloneSet.js cache by regenerate. +[2025-07-09T18:48:45.222] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_cloneSymbol.js cache by regenerate. +[2025-07-09T18:48:45.222] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_cloneTypedArray.js cache by regenerate. +[2025-07-09T18:48:45.222] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_compareAscending.js cache by regenerate. +[2025-07-09T18:48:45.223] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_compareMultiple.js cache by regenerate. +[2025-07-09T18:48:45.223] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_composeArgs.js cache by regenerate. +[2025-07-09T18:48:45.223] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_composeArgsRight.js cache by regenerate. +[2025-07-09T18:48:45.223] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_copyArray.js cache by regenerate. +[2025-07-09T18:48:45.223] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_copyObject.js cache by regenerate. +[2025-07-09T18:48:45.223] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_copySymbols.js cache by regenerate. +[2025-07-09T18:48:45.223] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_copySymbolsIn.js cache by regenerate. +[2025-07-09T18:48:45.223] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_coreJsData.js cache by regenerate. +[2025-07-09T18:48:45.223] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_countHolders.js cache by regenerate. +[2025-07-09T18:48:45.223] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_createAggregator.js cache by regenerate. +[2025-07-09T18:48:45.223] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_createAssigner.js cache by regenerate. +[2025-07-09T18:48:45.224] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_createBaseEach.js cache by regenerate. +[2025-07-09T18:48:45.224] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_createBaseFor.js cache by regenerate. +[2025-07-09T18:48:45.224] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_createBind.js cache by regenerate. +[2025-07-09T18:48:45.224] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_createCaseFirst.js cache by regenerate. +[2025-07-09T18:48:45.224] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_createCompounder.js cache by regenerate. +[2025-07-09T18:48:45.224] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_createCtor.js cache by regenerate. +[2025-07-09T18:48:45.224] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_createCurry.js cache by regenerate. +[2025-07-09T18:48:45.224] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_createFind.js cache by regenerate. +[2025-07-09T18:48:45.224] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_createFlow.js cache by regenerate. +[2025-07-09T18:48:45.224] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_createHybrid.js cache by regenerate. +[2025-07-09T18:48:45.224] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_createInverter.js cache by regenerate. +[2025-07-09T18:48:45.224] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_createMathOperation.js cache by regenerate. +[2025-07-09T18:48:45.225] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_createOver.js cache by regenerate. +[2025-07-09T18:48:45.225] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_createPadding.js cache by regenerate. +[2025-07-09T18:48:45.225] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_createPartial.js cache by regenerate. +[2025-07-09T18:48:45.225] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_createRange.js cache by regenerate. +[2025-07-09T18:48:45.225] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_createRecurry.js cache by regenerate. +[2025-07-09T18:48:45.225] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_createRelationalOperation.js cache by regenerate. +[2025-07-09T18:48:45.225] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_createRound.js cache by regenerate. +[2025-07-09T18:48:45.225] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_createSet.js cache by regenerate. +[2025-07-09T18:48:45.225] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_createToPairs.js cache by regenerate. +[2025-07-09T18:48:45.225] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_createWrap.js cache by regenerate. +[2025-07-09T18:48:45.225] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_customDefaultsAssignIn.js cache by regenerate. +[2025-07-09T18:48:45.226] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_customDefaultsMerge.js cache by regenerate. +[2025-07-09T18:48:45.226] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_customOmitClone.js cache by regenerate. +[2025-07-09T18:48:45.226] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_DataView.js cache by regenerate. +[2025-07-09T18:48:45.226] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_deburrLetter.js cache by regenerate. +[2025-07-09T18:48:45.226] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_defineProperty.js cache by regenerate. +[2025-07-09T18:48:45.226] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_equalArrays.js cache by regenerate. +[2025-07-09T18:48:45.226] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_equalByTag.js cache by regenerate. +[2025-07-09T18:48:45.226] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_equalObjects.js cache by regenerate. +[2025-07-09T18:48:45.226] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_escapeHtmlChar.js cache by regenerate. +[2025-07-09T18:48:45.227] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_escapeStringChar.js cache by regenerate. +[2025-07-09T18:48:45.227] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_flatRest.js cache by regenerate. +[2025-07-09T18:48:45.227] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_freeGlobal.js cache by regenerate. +[2025-07-09T18:48:45.227] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_getAllKeys.js cache by regenerate. +[2025-07-09T18:48:45.227] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_getAllKeysIn.js cache by regenerate. +[2025-07-09T18:48:45.227] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_getData.js cache by regenerate. +[2025-07-09T18:48:45.227] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_getFuncName.js cache by regenerate. +[2025-07-09T18:48:45.227] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_getHolder.js cache by regenerate. +[2025-07-09T18:48:45.227] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_getMapData.js cache by regenerate. +[2025-07-09T18:48:45.227] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_getMatchData.js cache by regenerate. +[2025-07-09T18:48:45.227] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_getNative.js cache by regenerate. +[2025-07-09T18:48:45.227] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_getPrototype.js cache by regenerate. +[2025-07-09T18:48:45.228] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_getRawTag.js cache by regenerate. +[2025-07-09T18:48:45.228] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_getSymbols.js cache by regenerate. +[2025-07-09T18:48:45.228] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_getSymbolsIn.js cache by regenerate. +[2025-07-09T18:48:45.228] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_getTag.js cache by regenerate. +[2025-07-09T18:48:45.228] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_getValue.js cache by regenerate. +[2025-07-09T18:48:45.228] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_getView.js cache by regenerate. +[2025-07-09T18:48:45.228] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_getWrapDetails.js cache by regenerate. +[2025-07-09T18:48:45.228] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_Hash.js cache by regenerate. +[2025-07-09T18:48:45.228] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_hashClear.js cache by regenerate. +[2025-07-09T18:48:45.228] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_hashDelete.js cache by regenerate. +[2025-07-09T18:48:45.228] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_hashGet.js cache by regenerate. +[2025-07-09T18:48:45.228] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_hashHas.js cache by regenerate. +[2025-07-09T18:48:45.229] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_hashSet.js cache by regenerate. +[2025-07-09T18:48:45.229] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_hasPath.js cache by regenerate. +[2025-07-09T18:48:45.229] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_hasUnicode.js cache by regenerate. +[2025-07-09T18:48:45.229] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_hasUnicodeWord.js cache by regenerate. +[2025-07-09T18:48:45.229] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_initCloneArray.js cache by regenerate. +[2025-07-09T18:48:45.229] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_initCloneByTag.js cache by regenerate. +[2025-07-09T18:48:45.229] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_initCloneObject.js cache by regenerate. +[2025-07-09T18:48:45.229] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_insertWrapDetails.js cache by regenerate. +[2025-07-09T18:48:45.229] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_isFlattenable.js cache by regenerate. +[2025-07-09T18:48:45.229] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_isIndex.js cache by regenerate. +[2025-07-09T18:48:45.229] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_isIterateeCall.js cache by regenerate. +[2025-07-09T18:48:45.230] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_isKey.js cache by regenerate. +[2025-07-09T18:48:45.230] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_isKeyable.js cache by regenerate. +[2025-07-09T18:48:45.230] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_isLaziable.js cache by regenerate. +[2025-07-09T18:48:45.230] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_isMaskable.js cache by regenerate. +[2025-07-09T18:48:45.230] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_isMasked.js cache by regenerate. +[2025-07-09T18:48:45.230] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_isPrototype.js cache by regenerate. +[2025-07-09T18:48:45.230] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_isStrictComparable.js cache by regenerate. +[2025-07-09T18:48:45.230] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_iteratorToArray.js cache by regenerate. +[2025-07-09T18:48:45.230] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_lazyClone.js cache by regenerate. +[2025-07-09T18:48:45.230] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_lazyReverse.js cache by regenerate. +[2025-07-09T18:48:45.230] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_lazyValue.js cache by regenerate. +[2025-07-09T18:48:45.230] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_LazyWrapper.js cache by regenerate. +[2025-07-09T18:48:45.231] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_ListCache.js cache by regenerate. +[2025-07-09T18:48:45.231] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_listCacheClear.js cache by regenerate. +[2025-07-09T18:48:45.231] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_listCacheDelete.js cache by regenerate. +[2025-07-09T18:48:45.231] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_listCacheGet.js cache by regenerate. +[2025-07-09T18:48:45.231] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_listCacheHas.js cache by regenerate. +[2025-07-09T18:48:45.231] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_listCacheSet.js cache by regenerate. +[2025-07-09T18:48:45.231] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_LodashWrapper.js cache by regenerate. +[2025-07-09T18:48:45.231] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_Map.js cache by regenerate. +[2025-07-09T18:48:45.231] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_MapCache.js cache by regenerate. +[2025-07-09T18:48:45.231] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_mapCacheClear.js cache by regenerate. +[2025-07-09T18:48:45.231] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_mapCacheDelete.js cache by regenerate. +[2025-07-09T18:48:45.231] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_mapCacheGet.js cache by regenerate. +[2025-07-09T18:48:45.232] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_mapCacheHas.js cache by regenerate. +[2025-07-09T18:48:45.232] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_mapCacheSet.js cache by regenerate. +[2025-07-09T18:48:45.232] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_mapToArray.js cache by regenerate. +[2025-07-09T18:48:45.232] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_matchesStrictComparable.js cache by regenerate. +[2025-07-09T18:48:45.232] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_memoizeCapped.js cache by regenerate. +[2025-07-09T18:48:45.232] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_mergeData.js cache by regenerate. +[2025-07-09T18:48:45.232] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_metaMap.js cache by regenerate. +[2025-07-09T18:48:45.232] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_nativeCreate.js cache by regenerate. +[2025-07-09T18:48:45.232] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_nativeKeys.js cache by regenerate. +[2025-07-09T18:48:45.232] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_nativeKeysIn.js cache by regenerate. +[2025-07-09T18:48:45.232] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_nodeUtil.js cache by regenerate. +[2025-07-09T18:48:45.232] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_objectToString.js cache by regenerate. +[2025-07-09T18:48:45.233] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_overArg.js cache by regenerate. +[2025-07-09T18:48:45.233] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_overRest.js cache by regenerate. +[2025-07-09T18:48:45.233] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_parent.js cache by regenerate. +[2025-07-09T18:48:45.233] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_Promise.js cache by regenerate. +[2025-07-09T18:48:45.233] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_realNames.js cache by regenerate. +[2025-07-09T18:48:45.233] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_reEscape.js cache by regenerate. +[2025-07-09T18:48:45.233] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_reEvaluate.js cache by regenerate. +[2025-07-09T18:48:45.233] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_reInterpolate.js cache by regenerate. +[2025-07-09T18:48:45.233] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_reorder.js cache by regenerate. +[2025-07-09T18:48:45.233] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_replaceHolders.js cache by regenerate. +[2025-07-09T18:48:45.233] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_root.js cache by regenerate. +[2025-07-09T18:48:45.234] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_safeGet.js cache by regenerate. +[2025-07-09T18:48:45.234] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_Set.js cache by regenerate. +[2025-07-09T18:48:45.234] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_SetCache.js cache by regenerate. +[2025-07-09T18:48:45.234] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_setCacheAdd.js cache by regenerate. +[2025-07-09T18:48:45.234] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_setCacheHas.js cache by regenerate. +[2025-07-09T18:48:45.234] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_setData.js cache by regenerate. +[2025-07-09T18:48:45.234] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_setToArray.js cache by regenerate. +[2025-07-09T18:48:45.234] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_setToPairs.js cache by regenerate. +[2025-07-09T18:48:45.234] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_setToString.js cache by regenerate. +[2025-07-09T18:48:45.234] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_setWrapToString.js cache by regenerate. +[2025-07-09T18:48:45.234] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_shortOut.js cache by regenerate. +[2025-07-09T18:48:45.235] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_shuffleSelf.js cache by regenerate. +[2025-07-09T18:48:45.235] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_Stack.js cache by regenerate. +[2025-07-09T18:48:45.235] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_stackClear.js cache by regenerate. +[2025-07-09T18:48:45.235] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_stackDelete.js cache by regenerate. +[2025-07-09T18:48:45.235] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_stackGet.js cache by regenerate. +[2025-07-09T18:48:45.235] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_stackHas.js cache by regenerate. +[2025-07-09T18:48:45.235] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_stackSet.js cache by regenerate. +[2025-07-09T18:48:45.235] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_strictIndexOf.js cache by regenerate. +[2025-07-09T18:48:45.235] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_strictLastIndexOf.js cache by regenerate. +[2025-07-09T18:48:45.235] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_stringSize.js cache by regenerate. +[2025-07-09T18:48:45.235] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_stringToArray.js cache by regenerate. +[2025-07-09T18:48:45.235] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_stringToPath.js cache by regenerate. +[2025-07-09T18:48:45.236] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_Symbol.js cache by regenerate. +[2025-07-09T18:48:45.236] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_toKey.js cache by regenerate. +[2025-07-09T18:48:45.236] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_toSource.js cache by regenerate. +[2025-07-09T18:48:45.236] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_trimmedEndIndex.js cache by regenerate. +[2025-07-09T18:48:45.236] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_Uint8Array.js cache by regenerate. +[2025-07-09T18:48:45.236] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_unescapeHtmlChar.js cache by regenerate. +[2025-07-09T18:48:45.236] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_unicodeSize.js cache by regenerate. +[2025-07-09T18:48:45.236] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_unicodeToArray.js cache by regenerate. +[2025-07-09T18:48:45.236] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_unicodeWords.js cache by regenerate. +[2025-07-09T18:48:45.236] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_updateWrapDetails.js cache by regenerate. +[2025-07-09T18:48:45.236] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_WeakMap.js cache by regenerate. +[2025-07-09T18:48:45.236] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\lodash-es\_wrapperClone.js cache by regenerate. +[2025-07-09T18:48:45.237] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\backo2\test\index.js cache by regenerate. +[2025-07-09T18:48:45.237] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\eventemitter3\umd\eventemitter3.js cache by regenerate. +[2025-07-09T18:48:45.237] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets\vendor\eventemitter3\umd\eventemitter3.min.js cache by regenerate. +[2025-07-09T18:48:45.237] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\index.ts cache by regenerate. +[2025-07-09T18:48:45.237] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\Address.ts cache by regenerate. +[2025-07-09T18:48:45.237] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\CertificatePinner.ts cache by regenerate. +[2025-07-09T18:48:45.237] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\ConstantManager.ts cache by regenerate. +[2025-07-09T18:48:45.237] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\Dns.ts cache by regenerate. +[2025-07-09T18:48:45.237] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\EventListener.ts cache by regenerate. +[2025-07-09T18:48:45.237] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\http.ts cache by regenerate. +[2025-07-09T18:48:45.237] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\HttpCall.ts cache by regenerate. +[2025-07-09T18:48:45.238] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\HttpClient.ts cache by regenerate. +[2025-07-09T18:48:45.238] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\HttpUrl.ts cache by regenerate. +[2025-07-09T18:48:45.238] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\Interceptor.ts cache by regenerate. +[2025-07-09T18:48:45.238] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\RealWebSocket.ts cache by regenerate. +[2025-07-09T18:48:45.238] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\Request.ts cache by regenerate. +[2025-07-09T18:48:45.238] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\RequestBody.ts cache by regenerate. +[2025-07-09T18:48:45.238] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\WebSocket.ts cache by regenerate. +[2025-07-09T18:48:45.238] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\WebSocketListener.ts cache by regenerate. +[2025-07-09T18:48:45.238] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\authenticator\Authenticator.ts cache by regenerate. +[2025-07-09T18:48:45.238] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\authenticator\AuthenticatorNone.ts cache by regenerate. +[2025-07-09T18:48:45.238] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\authenticator\Challenge.ts cache by regenerate. +[2025-07-09T18:48:45.238] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\authenticator\Credentials.ts cache by regenerate. +[2025-07-09T18:48:45.239] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\authenticator\NetAuthenticator.ts cache by regenerate. +[2025-07-09T18:48:45.239] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\authenticator\RecordingOkAuthenticator.ts cache by regenerate. +[2025-07-09T18:48:45.239] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\builders\BinaryFileChunkUpload.ts cache by regenerate. +[2025-07-09T18:48:45.239] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\builders\FileUpload.ts cache by regenerate. +[2025-07-09T18:48:45.239] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\builders\FormEncoder.ts cache by regenerate. +[2025-07-09T18:48:45.239] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\builders\Mime.ts cache by regenerate. +[2025-07-09T18:48:45.239] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\builders\MultiPart.ts cache by regenerate. +[2025-07-09T18:48:45.239] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\cache\Cache.ts cache by regenerate. +[2025-07-09T18:48:45.239] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\cache\CacheControl.ts cache by regenerate. +[2025-07-09T18:48:45.239] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\cache\CacheRequest.ts cache by regenerate. +[2025-07-09T18:48:45.239] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\cache\CacheStrategy.ts cache by regenerate. +[2025-07-09T18:48:45.240] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\cache\Challenge.ts cache by regenerate. +[2025-07-09T18:48:45.240] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\cache\Internal.ts cache by regenerate. +[2025-07-09T18:48:45.240] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\cache\InternalCache.ts cache by regenerate. +[2025-07-09T18:48:45.240] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\cache\MediaType.ts cache by regenerate. +[2025-07-09T18:48:45.240] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\cache\RealResponseBody.ts cache by regenerate. +[2025-07-09T18:48:45.240] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\cache\ResponseBody.ts cache by regenerate. +[2025-07-09T18:48:45.240] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\cache\StatusLine.ts cache by regenerate. +[2025-07-09T18:48:45.240] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\callback\AbsCallback.ts cache by regenerate. +[2025-07-09T18:48:45.240] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\callback\ByteStringCallback.ts cache by regenerate. +[2025-07-09T18:48:45.240] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\callback\CallbackResponse.ts cache by regenerate. +[2025-07-09T18:48:45.240] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\callback\JsonCallback.ts cache by regenerate. +[2025-07-09T18:48:45.241] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\callback\JsonConvert.ts cache by regenerate. +[2025-07-09T18:48:45.241] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\callback\StringCallback.ts cache by regenerate. +[2025-07-09T18:48:45.241] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\code\HttpErrorCodes.ts cache by regenerate. +[2025-07-09T18:48:45.241] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\code\HttpStatusCodes.ts cache by regenerate. +[2025-07-09T18:48:45.241] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\connection\Exchange.ts cache by regenerate. +[2025-07-09T18:48:45.241] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\connection\ExchangeCodec.ts cache by regenerate. +[2025-07-09T18:48:45.241] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\connection\Proxy.ts cache by regenerate. +[2025-07-09T18:48:45.241] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\connection\RealConnection.ts cache by regenerate. +[2025-07-09T18:48:45.241] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\connection\Route.ts cache by regenerate. +[2025-07-09T18:48:45.242] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\connection\RouteSelector.ts cache by regenerate. +[2025-07-09T18:48:45.242] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\cookies\Cookie.ts cache by regenerate. +[2025-07-09T18:48:45.242] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\cookies\CookieJar.ts cache by regenerate. +[2025-07-09T18:48:45.242] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\cookies\CookieManager.ts cache by regenerate. +[2025-07-09T18:48:45.242] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\cookies\CookieStore.ts cache by regenerate. +[2025-07-09T18:48:45.242] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\cookies\httpcookieutils.ts cache by regenerate. +[2025-07-09T18:48:45.242] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\core\Headers.ts cache by regenerate. +[2025-07-09T18:48:45.242] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\core\HttpHeaders.ts cache by regenerate. +[2025-07-09T18:48:45.242] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\core\Route.ts cache by regenerate. +[2025-07-09T18:48:45.242] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\dispatcher\ChunkUploadDispatcher.ts cache by regenerate. +[2025-07-09T18:48:45.242] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\dispatcher\Dispatcher.ts cache by regenerate. +[2025-07-09T18:48:45.243] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\dns\DnsResolve.ts cache by regenerate. +[2025-07-09T18:48:45.243] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\dns\DnsSystem.ts cache by regenerate. +[2025-07-09T18:48:45.243] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\enum\HttpDataType.ts cache by regenerate. +[2025-07-09T18:48:45.243] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\eventListener\IOException.ts cache by regenerate. +[2025-07-09T18:48:45.243] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\http\HttpMethod.ts cache by regenerate. +[2025-07-09T18:48:45.243] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\interceptor\BridgeInterceptor.ts cache by regenerate. +[2025-07-09T18:48:45.243] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\interceptor\CacheInterceptor.ts cache by regenerate. +[2025-07-09T18:48:45.243] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\interceptor\CallServerInterceptor.ts cache by regenerate. +[2025-07-09T18:48:45.243] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\interceptor\ConnectInterceptor.ts cache by regenerate. +[2025-07-09T18:48:45.243] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\interceptor\RealInterceptorChain.ts cache by regenerate. +[2025-07-09T18:48:45.243] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\interceptor\RetryAndFollowUpInterceptor.ts cache by regenerate. +[2025-07-09T18:48:45.243] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\protocols\Protocol.ts cache by regenerate. +[2025-07-09T18:48:45.244] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\response\Response.ts cache by regenerate. +[2025-07-09T18:48:45.244] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\tls\CertificateVerify.ts cache by regenerate. +[2025-07-09T18:48:45.244] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\tls\OkHostnameVerifier.ts cache by regenerate. +[2025-07-09T18:48:45.244] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\tls\RealTLSSocket.ts cache by regenerate. +[2025-07-09T18:48:45.244] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\tls\TLSSocketListener.ts cache by regenerate. +[2025-07-09T18:48:45.244] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\tls\X509TrustManager.ts cache by regenerate. +[2025-07-09T18:48:45.244] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\utils\ArrayDeque.ts cache by regenerate. +[2025-07-09T18:48:45.244] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\utils\CAResUtil.ts cache by regenerate. +[2025-07-09T18:48:45.244] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\utils\DefaultInterceptor.ts cache by regenerate. +[2025-07-09T18:48:45.244] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\utils\FileUtils.ts cache by regenerate. +[2025-07-09T18:48:45.244] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\utils\FormatUtils.ts cache by regenerate. +[2025-07-09T18:48:45.244] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\utils\gZipUtil.ts cache by regenerate. +[2025-07-09T18:48:45.245] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\utils\Logger.ts cache by regenerate. +[2025-07-09T18:48:45.245] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\utils\ObjectUtil.ts cache by regenerate. +[2025-07-09T18:48:45.245] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\utils\StringUtil.ts cache by regenerate. +[2025-07-09T18:48:45.245] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\utils\Utils.ts cache by regenerate. +[2025-07-09T18:48:45.245] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\cache\DiskCache\HttpDiskLruCache.ts cache by regenerate. +[2025-07-09T18:48:45.245] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\cache\DiskCache\cache\CustomMap.ts cache by regenerate. +[2025-07-09T18:48:45.245] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\cache\DiskCache\cache\DiskCacheEntry.ts cache by regenerate. +[2025-07-09T18:48:45.245] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\cache\DiskCache\cache\DiskLruCache.ts cache by regenerate. +[2025-07-09T18:48:45.245] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\cache\DiskCache\cache\FileReader.ts cache by regenerate. +[2025-07-09T18:48:45.245] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets\cache\DiskCache\cache\FileUtils.ts cache by regenerate. +[2025-07-09T18:48:45.245] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js\index.ts cache by regenerate. +[2025-07-09T18:48:45.246] [DEBUG] debug-file - Update task default:default@GenerateLoaderJson output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader\default\loader.json cache. +[2025-07-09T18:48:45.246] [DEBUG] debug-file - Incremental task default:default@GenerateLoaderJson post-execution cost:112 ms . +[2025-07-09T18:48:45.246] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:48:45.246] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@MergeProfile is up-to-date. +[2025-07-09T18:48:45.246] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit_ui:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:48:45.246] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task conversationkit_ui:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:48:45.246] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task localconversationkit_ui:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:48:45.246] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit_ui:default@MergeProfile is up-to-date. +[2025-07-09T18:48:45.246] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task conversationkit_ui:default@MergeProfile is up-to-date. +[2025-07-09T18:48:45.246] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task localconversationkit_ui:default@MergeProfile is up-to-date. +[2025-07-09T18:48:45.246] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@ProcessLibs is up-to-date. +[2025-07-09T18:48:45.246] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task polyv:default@ProcessLibs is up-to-date. +[2025-07-09T18:48:45.246] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task netease:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:48:45.246] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task corekit:default@ProcessLibs is up-to-date. +[2025-07-09T18:48:45.246] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task netease:default@MergeProfile is up-to-date. +[2025-07-09T18:48:45.246] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task common:default@ProcessLibs is up-to-date. +[2025-07-09T18:48:45.246] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@DoNativeStrip is up-to-date. +[2025-07-09T18:48:45.246] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task polyv:default@DoNativeStrip is up-to-date. +[2025-07-09T18:48:45.246] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@CreateBuildProfile is up-to-date. +[2025-07-09T18:48:45.247] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task corekit:default@DoNativeStrip is up-to-date. +[2025-07-09T18:48:45.247] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@MergeProfile is up-to-date. +[2025-07-09T18:48:45.247] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task common:default@DoNativeStrip is up-to-date. +[2025-07-09T18:48:45.247] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@MakePackInfo is up-to-date. +[2025-07-09T18:48:45.247] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessProfile is up-to-date. +[2025-07-09T18:48:45.247] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@ProcessLibs is up-to-date. +[2025-07-09T18:48:45.247] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@ProcessLibs is up-to-date. +[2025-07-09T18:48:45.247] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task scene_single_video:default@ProcessLibs is up-to-date. +[2025-07-09T18:48:45.247] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit:default@ProcessLibs is up-to-date. +[2025-07-09T18:48:45.247] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessResource is up-to-date. +[2025-07-09T18:48:45.247] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@DoNativeStrip is up-to-date. +[2025-07-09T18:48:45.247] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@DoNativeStrip is up-to-date. +[2025-07-09T18:48:45.247] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task scene_single_video:default@DoNativeStrip is up-to-date. +[2025-07-09T18:48:45.247] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit:default@DoNativeStrip is up-to-date. +[2025-07-09T18:48:45.247] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@CompileResource is up-to-date. +[2025-07-09T18:48:45.250] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader\default cache from map. +[2025-07-09T18:48:45.251] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\commons\basic\Index.ets cache by regenerate. +[2025-07-09T18:48:45.251] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\mypage\Index.ets cache by regenerate. +[2025-07-09T18:48:45.251] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\Home\Index.ets cache by regenerate. +[2025-07-09T18:48:45.251] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\register\Index.ets cache by regenerate. +[2025-07-09T18:48:45.251] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\scene_single_video\Index.ets cache by regenerate. +[2025-07-09T18:48:45.251] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\polyv\Index.ets cache by regenerate. +[2025-07-09T18:48:45.251] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\corekit\Index.ets cache by regenerate. +[2025-07-09T18:48:45.251] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit\Index.ets cache by regenerate. +[2025-07-09T18:48:45.251] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\netease\Index.ets cache by regenerate. +[2025-07-09T18:48:45.251] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\Index.js cache by regenerate. +[2025-07-09T18:48:45.251] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:48:45.251] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:48:45.252] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\common\Index.ets cache by regenerate. +[2025-07-09T18:48:45.252] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:48:45.252] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\index.ts cache by regenerate. +[2025-07-09T18:48:45.252] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js\index.ts cache by regenerate. +[2025-07-09T18:48:45.252] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown\Index.js cache by regenerate. +[2025-07-09T18:48:45.252] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js\index.ets cache by regenerate. +[2025-07-09T18:48:45.252] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm\index.ts cache by regenerate. +[2025-07-09T18:48:45.252] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\commons\basic\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.254] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\mypage\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.257] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\Home\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.259] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\register\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.260] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\scene_single_video\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.261] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\polyv\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.272] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk@2.5.0\oh_modules\@polyvharmony\media-player-sdk\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.272] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-ijk@2.5.0\oh_modules\@polyvharmony\media-player-core-ijk\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.275] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\oh_modules\@polyvharmony\media-player-sdk-addon-cache-down\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.281] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-api@1.0.2\oh_modules\@polyvharmony\httpdns-api\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.281] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-impl-local@1.0.2\oh_modules\@polyvharmony\httpdns-impl-local\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.282] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-impl-ali@1.0.2\oh_modules\@polyvharmony\httpdns-impl-ali\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.282] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.285] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+localconversation@10.9.10\oh_modules\@nimsdk\localconversation\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.288] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.293] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.296] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.297] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.298] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.310] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.322] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\corekit\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.322] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.324] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\netease\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.326] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-business@2.5.0\oh_modules\@polyvharmony\media-player-business\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.339] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-api@2.5.0\oh_modules\@polyvharmony\media-player-core-api\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.340] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-foundation@2.5.0\oh_modules\@polyvharmony\media-player-foundation\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.345] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+httpdns@1.1.1\oh_modules\@aliyun\httpdns\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.349] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.390] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.391] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.394] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\common\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.396] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.397] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.402] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+logger@1.0.2\oh_modules\@aliyun\logger\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.402] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+error@1.0.2\oh_modules\@aliyun\error\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.403] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.408] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.409] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.413] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources\rawfile cache by regenerate. +[2025-07-09T18:48:45.417] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\ResourceTable.txt cache by regenerate. +[2025-07-09T18:48:45.418] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\ark_module.json cache by regenerate. +[2025-07-09T18:48:45.418] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources\base\profile cache by regenerate. +[2025-07-09T18:48:45.418] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\src\main\ets cache by regenerate. +[2025-07-09T18:48:45.421] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader\default\pkgContextInfo.json cache by regenerate. +[2025-07-09T18:48:45.421] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\generated\profile\default\BuildProfile.ets cache by regenerate. +[2025-07-09T18:48:45.421] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\commons\basic\BuildProfile.ets cache by regenerate. +[2025-07-09T18:48:45.421] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\mypage\BuildProfile.ets cache by regenerate. +[2025-07-09T18:48:45.421] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\Home\BuildProfile.ets cache by regenerate. +[2025-07-09T18:48:45.422] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\register\BuildProfile.ets cache by regenerate. +[2025-07-09T18:48:45.422] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\scene_single_video\BuildProfile.ets cache by regenerate. +[2025-07-09T18:48:45.422] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\polyv\BuildProfile.ets cache by regenerate. +[2025-07-09T18:48:45.422] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\corekit\BuildProfile.ets cache by regenerate. +[2025-07-09T18:48:45.422] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit\BuildProfile.ets cache by regenerate. +[2025-07-09T18:48:45.422] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\netease\BuildProfile.ets cache by regenerate. +[2025-07-09T18:48:45.422] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\BuildProfile.ets cache by regenerate. +[2025-07-09T18:48:45.422] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\BuildProfile.ets cache by regenerate. +[2025-07-09T18:48:45.422] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\common\BuildProfile.ets cache by regenerate. +[2025-07-09T18:48:45.422] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\BuildProfile.ets cache by regenerate. +[2025-07-09T18:48:45.422] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\src\mock\mock-config.json5 cache by regenerate. +[2025-07-09T18:48:45.423] [DEBUG] debug-file - Update task default:default@CompileArkTS output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader_out\default\ets cache. +[2025-07-09T18:48:45.423] [DEBUG] debug-file - Incremental task default:default@CompileArkTS post-execution cost:176 ms . +[2025-07-09T18:48:45.425] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader\default cache by regenerate. +[2025-07-09T18:48:45.425] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\commons\basic\Index.ets cache by regenerate. +[2025-07-09T18:48:45.425] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\features\mypage\Index.ets cache by regenerate. +[2025-07-09T18:48:45.425] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\features\Home\Index.ets cache by regenerate. +[2025-07-09T18:48:45.425] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\features\register\Index.ets cache by regenerate. +[2025-07-09T18:48:45.426] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\scene_single_video\Index.ets cache by regenerate. +[2025-07-09T18:48:45.426] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\polyv\Index.ets cache by regenerate. +[2025-07-09T18:48:45.426] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\corekit\Index.ets cache by regenerate. +[2025-07-09T18:48:45.426] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit\Index.ets cache by regenerate. +[2025-07-09T18:48:45.426] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\features\netease\Index.ets cache by regenerate. +[2025-07-09T18:48:45.426] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\Index.js cache by regenerate. +[2025-07-09T18:48:45.426] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:48:45.426] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:48:45.426] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\common\Index.ets cache by regenerate. +[2025-07-09T18:48:45.426] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:48:45.426] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\index.ts cache by regenerate. +[2025-07-09T18:48:45.426] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js\index.ts cache by regenerate. +[2025-07-09T18:48:45.426] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown\Index.js cache by regenerate. +[2025-07-09T18:48:45.426] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js\index.ets cache by regenerate. +[2025-07-09T18:48:45.427] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm\index.ts cache by regenerate. +[2025-07-09T18:48:45.427] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js\src\main\js cache by regenerate. +[2025-07-09T18:48:45.427] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources\rawfile cache by regenerate. +[2025-07-09T18:48:45.430] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\ResourceTable.txt cache by regenerate. +[2025-07-09T18:48:45.430] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\ark_module.json cache by regenerate. +[2025-07-09T18:48:45.431] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources\base\profile cache by regenerate. +[2025-07-09T18:48:45.431] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader\default\pkgContextInfo.json cache by regenerate. +[2025-07-09T18:48:45.431] [DEBUG] debug-file - Update task default:default@BuildJS output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader_out\default\js cache. +[2025-07-09T18:48:45.431] [DEBUG] debug-file - Incremental task default:default@BuildJS post-execution cost:9 ms . +[2025-07-09T18:48:45.431] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@ProcessLibs is up-to-date. +[2025-07-09T18:48:45.431] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit_ui:default@ProcessLibs is up-to-date. +[2025-07-09T18:48:45.431] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task conversationkit_ui:default@ProcessLibs is up-to-date. +[2025-07-09T18:48:45.431] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task localconversationkit_ui:default@ProcessLibs is up-to-date. +[2025-07-09T18:48:45.431] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@DoNativeStrip is up-to-date. +[2025-07-09T18:48:45.431] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit_ui:default@DoNativeStrip is up-to-date. +[2025-07-09T18:48:45.431] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task conversationkit_ui:default@DoNativeStrip is up-to-date. +[2025-07-09T18:48:45.431] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task localconversationkit_ui:default@DoNativeStrip is up-to-date. +[2025-07-09T18:48:45.431] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task netease:default@ProcessLibs is up-to-date. +[2025-07-09T18:48:45.431] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task netease:default@DoNativeStrip is up-to-date. +[2025-07-09T18:48:45.432] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessLibs is up-to-date. +[2025-07-09T18:48:45.432] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@DoNativeStrip is up-to-date. +[2025-07-09T18:48:45.432] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@CacheNativeLibs is up-to-date. +[2025-07-09T18:48:45.432] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@GeneratePkgModuleJson is up-to-date. +[2025-07-09T18:48:45.432] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\stripped_native_libs\default cache by regenerate. +[2025-07-09T18:48:45.433] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\module.json cache by regenerate. +[2025-07-09T18:48:45.434] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources cache by regenerate. +[2025-07-09T18:48:45.445] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources.index cache by regenerate. +[2025-07-09T18:48:45.446] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\pack.info cache by regenerate. +[2025-07-09T18:48:45.446] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader_out\default\ets cache from map. +[2025-07-09T18:48:45.446] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader\default\pkgContextInfo.json cache by regenerate. +[2025-07-09T18:48:45.446] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\cache\default\default@CompileArkTS\esmodule\release\sourceMaps.map cache by regenerate. +[2025-07-09T18:48:45.446] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\generated\profile\default\BuildProfile.ets cache by regenerate. +[2025-07-09T18:48:45.446] [DEBUG] debug-file - Update task default:default@PackageHap output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\default-default-unsigned.hap cache. +[2025-07-09T18:48:45.447] [DEBUG] debug-file - Update task default:default@PackageHap output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\source_map\default\sourceMaps.map cache. +[2025-07-09T18:48:45.447] [DEBUG] debug-file - Update task default:default@PackageHap output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\mapping\sourceMaps.map cache. +[2025-07-09T18:48:45.447] [DEBUG] debug-file - Incremental task default:default@PackageHap post-execution cost:16 ms . +[2025-07-09T18:48:45.447] [DEBUG] debug-file - Update task default:default@SignHap input file:D:/202076work/鸿蒙专家端测试证书.cer cache by regenerate. +[2025-07-09T18:48:45.447] [DEBUG] debug-file - Update task default:default@SignHap input file:D:/202076work/profile测试Debug.p7b cache by regenerate. +[2025-07-09T18:48:45.447] [DEBUG] debug-file - Update task default:default@SignHap input file:D:/202076work/gdxzExport.p12 cache by regenerate. +[2025-07-09T18:48:45.447] [DEBUG] debug-file - Update task default:default@SignHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\default-default-unsigned.hap cache from map. +[2025-07-09T18:48:45.447] [DEBUG] debug-file - Update task default:default@SignHap output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\default-default-signed.hap cache. +[2025-07-09T18:48:45.447] [DEBUG] debug-file - Incremental task default:default@SignHap post-execution cost:1 ms . +[2025-07-09T18:48:45.449] [DEBUG] debug-file - Update task default:default@CollectDebugSymbol input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\cache\default\default@CompileArkTS\esmodule\release\sourceMaps.map cache from map. +[2025-07-09T18:48:45.449] [DEBUG] debug-file - Update task default:default@CollectDebugSymbol input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\libs\default cache by regenerate. +[2025-07-09T18:48:45.450] [DEBUG] debug-file - Update task default:default@CollectDebugSymbol output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\symbol cache. +[2025-07-09T18:48:45.452] [DEBUG] debug-file - Incremental task default:default@CollectDebugSymbol post-execution cost:5 ms . +[2025-07-09T18:48:45.505] [DEBUG] debug-file - Cleanup worker 14. +[2025-07-09T18:48:45.505] [DEBUG] debug-file - Worker 14 has been cleaned up. +[2025-07-09T18:48:45.505] [DEBUG] debug-file - Current idle worker size: 1. +[2025-07-09T18:48:45.505] [DEBUG] debug-file - Current resident worker size: 2. +[2025-07-09T18:48:45.506] [DEBUG] debug-file - hvigor build process will be closed. +[2025-07-09T18:48:45.507] [DEBUG] debug-file - java daemon socket close code:1000 reason:close by user +[2025-07-09T18:48:45.510] [DEBUG] debug-file - session manager: send message to worker process. +[2025-07-09T18:48:45.511] [DEBUG] debug-file - session manager: send message to worker process. +[2025-07-09T18:48:45.513] [DEBUG] debug-file - watch worker: worker id should be larger than 0. Nothing will be sent to any worker thread. +[2025-07-09T18:48:45.514] [DEBUG] debug-file - watch worker: worker id should be larger than 0. Nothing will be sent to any worker thread. +[2025-07-09T18:48:45.526] [DEBUG] debug-file - worker[14] exits with exit code 1. +[2025-07-09T18:53:01.584] [DEBUG] debug-file - session manager: set active socket. socketId=gnXEpaENYszyN_ElAAAf +[2025-07-09T18:53:01.598] [DEBUG] debug-file - watch worker: worker id should be larger than 0. Nothing will be sent to any worker thread. +[2025-07-09T18:53:01.632] [DEBUG] debug-file - Hvigor init with startParameters:{ hvigorfileTypeCheck: false, parallelExecution: true, incrementalExecution: true, @@ -239,44 +842,53 @@ analyze: 0, logLevel: Level { level: 20000, levelStr: 'INFO', colour: 'green' } } -[2025-05-12T14:15:52.933] [DEBUG] debug-file - Cache service initialization finished in 4 ms -[2025-05-12T14:15:52.937] [DEBUG] debug-file - hvigorfile, resolving /Users/gandanxiangzhao/Downloads/Expert/harmony/hvigorfile.ts -[2025-05-12T14:15:52.950] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } -[2025-05-12T14:15:52.950] [DEBUG] debug-file - hvigorfile, binding system plugins null -[2025-05-12T14:15:52.967] [DEBUG] debug-file - Start initialize project's product build option map with build mode debug. -[2025-05-12T14:15:52.967] [DEBUG] debug-file - Picking option from product 'default' with build mode 'debug'. -[2025-05-12T14:15:52.967] [DEBUG] debug-file - Product 'default' build option: {} -[2025-05-12T14:15:52.968] [DEBUG] debug-file - End initialize project's product build option map with build mode 'debug'. -[2025-05-12T14:15:52.970] [DEBUG] debug-file - Product 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:01.672] [DEBUG] debug-file - Cache service initialization finished in 41 ms +[2025-07-09T18:53:01.683] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\hvigorfile.ts +[2025-07-09T18:53:01.690] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:53:01.690] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:53:01.711] [DEBUG] debug-file - Start initialize project's product build option map with build mode release. +[2025-07-09T18:53:01.712] [DEBUG] debug-file - Picking option from product 'default' with build mode 'release'. +[2025-07-09T18:53:01.712] [DEBUG] debug-file - Product 'default' build option: {} +[2025-07-09T18:53:01.712] [DEBUG] debug-file - End initialize project's product build option map with build mode 'release'. +[2025-07-09T18:53:01.714] [DEBUG] debug-file - Product 'default' using build option: { + "debuggable": false, "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true } } in this build. -[2025-05-12T14:15:52.984] [DEBUG] debug-file - No signingConfig found, initRemoteHspCache failed. -[2025-05-12T14:15:52.988] [DEBUG] debug-file - Start recording SDK configuration permission data. -[2025-05-12T14:15:53.002] [DEBUG] debug-file - Sdk init in 18 ms -[2025-05-12T14:15:53.009] [DEBUG] debug-file - Project task initialization takes 7 ms -[2025-05-12T14:15:53.009] [DEBUG] debug-file - hvigorfile, binding custom plugins [] -[2025-05-12T14:15:53.009] [DEBUG] debug-file - hvigorfile, no custom plugins were found in /Users/gandanxiangzhao/Downloads/Expert/harmony/hvigorfile.ts -[2025-05-12T14:15:53.009] [DEBUG] debug-file - hvigorfile, resolve finished /Users/gandanxiangzhao/Downloads/Expert/harmony/hvigorfile.ts -[2025-05-12T14:15:53.011] [DEBUG] debug-file - hvigorfile, resolving /Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/hvigorfile.ts -[2025-05-12T14:15:53.013] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } -[2025-05-12T14:15:53.013] [DEBUG] debug-file - hvigorfile, binding system plugins null -[2025-05-12T14:15:53.017] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=default, buildMode=debug -[2025-05-12T14:15:53.017] [DEBUG] debug-file - Target 'default' config: {} -[2025-05-12T14:15:53.018] [DEBUG] debug-file - Target 'ohosTest' config: {} -[2025-05-12T14:15:53.018] [DEBUG] debug-file - Module 'default' target 'default' build option: { - "debuggable": true, +[2025-07-09T18:53:01.737] [DEBUG] debug-file - Start recording SDK configuration permission data. +[2025-07-09T18:53:01.770] [DEBUG] debug-file - Sdk init in 42 ms +[2025-07-09T18:53:01.782] [DEBUG] debug-file - Project task initialization takes 12 ms +[2025-07-09T18:53:01.782] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:53:01.782] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\hvigorfile.ts +[2025-07-09T18:53:01.782] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\hvigorfile.ts +[2025-07-09T18:53:01.786] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\products\expert\hvigorfile.ts +[2025-07-09T18:53:01.790] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:53:01.790] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:53:01.798] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=default, buildMode=release +[2025-07-09T18:53:01.798] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:53:01.799] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:53:01.799] [DEBUG] debug-file - Module 'default' target 'default' build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + } + } + } } -[2025-05-12T14:15:53.018] [DEBUG] debug-file - Module 'default' target 'ohosTest' build option: { +[2025-07-09T18:53:01.799] [DEBUG] debug-file - Module 'default' target 'ohosTest' build option: { "debuggable": true, "strictMode": { "caseSensitiveCheck": true, @@ -284,36 +896,59 @@ }, "name": "default" } -[2025-05-12T14:15:53.018] [DEBUG] debug-file - End initialize module-target build option map, moduleName=default -[2025-05-12T14:15:53.018] [DEBUG] debug-file - Module 'default' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:01.799] [DEBUG] debug-file - End initialize module-target build option map, moduleName=default +[2025-07-09T18:53:01.799] [DEBUG] debug-file - Module 'default' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + } + } + } } in this build. -[2025-05-12T14:15:53.020] [DEBUG] debug-file - Module default task initialization takes 1 ms -[2025-05-12T14:15:53.020] [DEBUG] debug-file - hvigorfile, binding custom plugins [] -[2025-05-12T14:15:53.020] [DEBUG] debug-file - hvigorfile, no custom plugins were found in /Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/hvigorfile.ts -[2025-05-12T14:15:53.020] [DEBUG] debug-file - hvigorfile, resolve finished /Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/hvigorfile.ts -[2025-05-12T14:15:53.022] [DEBUG] debug-file - hvigorfile, resolving /Users/gandanxiangzhao/Downloads/Expert/harmony/commons/uicomponents/hvigorfile.ts -[2025-05-12T14:15:53.023] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } -[2025-05-12T14:15:53.023] [DEBUG] debug-file - hvigorfile, binding system plugins null -[2025-05-12T14:15:53.026] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=uicomponents, buildMode=debug -[2025-05-12T14:15:53.026] [DEBUG] debug-file - Target 'default' config: {} -[2025-05-12T14:15:53.026] [DEBUG] debug-file - Target 'ohosTest' config: {} -[2025-05-12T14:15:53.026] [DEBUG] debug-file - Module 'uicomponents' target 'default' build option: { - "debuggable": true, +[2025-07-09T18:53:01.802] [DEBUG] debug-file - Module default task initialization takes 2 ms +[2025-07-09T18:53:01.802] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:53:01.802] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\products\expert\hvigorfile.ts +[2025-07-09T18:53:01.802] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\products\expert\hvigorfile.ts +[2025-07-09T18:53:01.806] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\features\mypage\hvigorfile.ts +[2025-07-09T18:53:01.808] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:53:01.808] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:53:01.814] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=mypage, buildMode=release +[2025-07-09T18:53:01.814] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:53:01.814] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:53:01.814] [DEBUG] debug-file - Module 'mypage' target 'default' build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } -[2025-05-12T14:15:53.026] [DEBUG] debug-file - Module 'uicomponents' target 'ohosTest' build option: { +[2025-07-09T18:53:01.814] [DEBUG] debug-file - Module 'mypage' target 'ohosTest' build option: { "debuggable": true, "strictMode": { "caseSensitiveCheck": true, @@ -321,36 +956,62 @@ }, "name": "default" } -[2025-05-12T14:15:53.026] [DEBUG] debug-file - End initialize module-target build option map, moduleName=uicomponents -[2025-05-12T14:15:53.026] [DEBUG] debug-file - Module 'uicomponents' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:01.814] [DEBUG] debug-file - End initialize module-target build option map, moduleName=mypage +[2025-07-09T18:53:01.814] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.027] [DEBUG] debug-file - Module uicomponents task initialization takes 1 ms -[2025-05-12T14:15:53.027] [DEBUG] debug-file - hvigorfile, binding custom plugins [] -[2025-05-12T14:15:53.028] [DEBUG] debug-file - hvigorfile, no custom plugins were found in /Users/gandanxiangzhao/Downloads/Expert/harmony/commons/uicomponents/hvigorfile.ts -[2025-05-12T14:15:53.028] [DEBUG] debug-file - hvigorfile, resolve finished /Users/gandanxiangzhao/Downloads/Expert/harmony/commons/uicomponents/hvigorfile.ts -[2025-05-12T14:15:53.029] [DEBUG] debug-file - hvigorfile, resolving /Users/gandanxiangzhao/Downloads/Expert/harmony/commons/utils/hvigorfile.ts -[2025-05-12T14:15:53.031] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } -[2025-05-12T14:15:53.031] [DEBUG] debug-file - hvigorfile, binding system plugins null -[2025-05-12T14:15:53.033] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=utils, buildMode=debug -[2025-05-12T14:15:53.033] [DEBUG] debug-file - Target 'default' config: {} -[2025-05-12T14:15:53.033] [DEBUG] debug-file - Target 'ohosTest' config: {} -[2025-05-12T14:15:53.033] [DEBUG] debug-file - Module 'utils' target 'default' build option: { - "debuggable": true, +[2025-07-09T18:53:01.816] [DEBUG] debug-file - Module mypage task initialization takes 1 ms +[2025-07-09T18:53:01.816] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:53:01.816] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\features\mypage\hvigorfile.ts +[2025-07-09T18:53:01.816] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\features\mypage\hvigorfile.ts +[2025-07-09T18:53:01.821] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\commons\basic\hvigorfile.ts +[2025-07-09T18:53:01.823] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:53:01.823] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:53:01.827] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=basic, buildMode=release +[2025-07-09T18:53:01.827] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:53:01.827] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:53:01.827] [DEBUG] debug-file - Module 'basic' target 'default' build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } -[2025-05-12T14:15:53.033] [DEBUG] debug-file - Module 'utils' target 'ohosTest' build option: { +[2025-07-09T18:53:01.827] [DEBUG] debug-file - Module 'basic' target 'ohosTest' build option: { "debuggable": true, "strictMode": { "caseSensitiveCheck": true, @@ -358,36 +1019,62 @@ }, "name": "default" } -[2025-05-12T14:15:53.033] [DEBUG] debug-file - End initialize module-target build option map, moduleName=utils -[2025-05-12T14:15:53.033] [DEBUG] debug-file - Module 'utils' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:01.827] [DEBUG] debug-file - End initialize module-target build option map, moduleName=basic +[2025-07-09T18:53:01.827] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.034] [DEBUG] debug-file - Module utils task initialization takes 1 ms -[2025-05-12T14:15:53.034] [DEBUG] debug-file - hvigorfile, binding custom plugins [] -[2025-05-12T14:15:53.034] [DEBUG] debug-file - hvigorfile, no custom plugins were found in /Users/gandanxiangzhao/Downloads/Expert/harmony/commons/utils/hvigorfile.ts -[2025-05-12T14:15:53.034] [DEBUG] debug-file - hvigorfile, resolve finished /Users/gandanxiangzhao/Downloads/Expert/harmony/commons/utils/hvigorfile.ts -[2025-05-12T14:15:53.036] [DEBUG] debug-file - hvigorfile, resolving /Users/gandanxiangzhao/Downloads/Expert/harmony/features/mypage/hvigorfile.ts -[2025-05-12T14:15:53.037] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } -[2025-05-12T14:15:53.037] [DEBUG] debug-file - hvigorfile, binding system plugins null -[2025-05-12T14:15:53.039] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=mypage, buildMode=debug -[2025-05-12T14:15:53.039] [DEBUG] debug-file - Target 'default' config: {} -[2025-05-12T14:15:53.039] [DEBUG] debug-file - Target 'ohosTest' config: {} -[2025-05-12T14:15:53.039] [DEBUG] debug-file - Module 'mypage' target 'default' build option: { - "debuggable": true, +[2025-07-09T18:53:01.829] [DEBUG] debug-file - Module basic task initialization takes 1 ms +[2025-07-09T18:53:01.829] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:53:01.829] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\commons\basic\hvigorfile.ts +[2025-07-09T18:53:01.829] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\commons\basic\hvigorfile.ts +[2025-07-09T18:53:01.833] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\features\Home\hvigorfile.ts +[2025-07-09T18:53:01.834] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:53:01.835] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:53:01.838] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=Home, buildMode=release +[2025-07-09T18:53:01.838] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:53:01.838] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:53:01.838] [DEBUG] debug-file - Module 'Home' target 'default' build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } -[2025-05-12T14:15:53.039] [DEBUG] debug-file - Module 'mypage' target 'ohosTest' build option: { +[2025-07-09T18:53:01.838] [DEBUG] debug-file - Module 'Home' target 'ohosTest' build option: { "debuggable": true, "strictMode": { "caseSensitiveCheck": true, @@ -395,36 +1082,62 @@ }, "name": "default" } -[2025-05-12T14:15:53.039] [DEBUG] debug-file - End initialize module-target build option map, moduleName=mypage -[2025-05-12T14:15:53.039] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:01.838] [DEBUG] debug-file - End initialize module-target build option map, moduleName=Home +[2025-07-09T18:53:01.838] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.040] [DEBUG] debug-file - Module mypage task initialization takes 1 ms -[2025-05-12T14:15:53.040] [DEBUG] debug-file - hvigorfile, binding custom plugins [] -[2025-05-12T14:15:53.040] [DEBUG] debug-file - hvigorfile, no custom plugins were found in /Users/gandanxiangzhao/Downloads/Expert/harmony/features/mypage/hvigorfile.ts -[2025-05-12T14:15:53.040] [DEBUG] debug-file - hvigorfile, resolve finished /Users/gandanxiangzhao/Downloads/Expert/harmony/features/mypage/hvigorfile.ts -[2025-05-12T14:15:53.042] [DEBUG] debug-file - hvigorfile, resolving /Users/gandanxiangzhao/Downloads/Expert/harmony/commons/basic/hvigorfile.ts -[2025-05-12T14:15:53.044] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } -[2025-05-12T14:15:53.045] [DEBUG] debug-file - hvigorfile, binding system plugins null -[2025-05-12T14:15:53.049] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=basic, buildMode=debug -[2025-05-12T14:15:53.049] [DEBUG] debug-file - Target 'default' config: {} -[2025-05-12T14:15:53.049] [DEBUG] debug-file - Target 'ohosTest' config: {} -[2025-05-12T14:15:53.049] [DEBUG] debug-file - Module 'basic' target 'default' build option: { - "debuggable": true, +[2025-07-09T18:53:01.841] [DEBUG] debug-file - Module Home task initialization takes 1 ms +[2025-07-09T18:53:01.841] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:53:01.841] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\features\Home\hvigorfile.ts +[2025-07-09T18:53:01.841] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\features\Home\hvigorfile.ts +[2025-07-09T18:53:01.845] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\features\register\hvigorfile.ts +[2025-07-09T18:53:01.846] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:53:01.847] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:53:01.850] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=register, buildMode=release +[2025-07-09T18:53:01.850] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:53:01.850] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:53:01.850] [DEBUG] debug-file - Module 'register' target 'default' build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } -[2025-05-12T14:15:53.049] [DEBUG] debug-file - Module 'basic' target 'ohosTest' build option: { +[2025-07-09T18:53:01.850] [DEBUG] debug-file - Module 'register' target 'ohosTest' build option: { "debuggable": true, "strictMode": { "caseSensitiveCheck": true, @@ -432,36 +1145,170 @@ }, "name": "default" } -[2025-05-12T14:15:53.049] [DEBUG] debug-file - End initialize module-target build option map, moduleName=basic -[2025-05-12T14:15:53.049] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:01.850] [DEBUG] debug-file - End initialize module-target build option map, moduleName=register +[2025-07-09T18:53:01.850] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.052] [DEBUG] debug-file - Module basic task initialization takes 1 ms -[2025-05-12T14:15:53.052] [DEBUG] debug-file - hvigorfile, binding custom plugins [] -[2025-05-12T14:15:53.052] [DEBUG] debug-file - hvigorfile, no custom plugins were found in /Users/gandanxiangzhao/Downloads/Expert/harmony/commons/basic/hvigorfile.ts -[2025-05-12T14:15:53.052] [DEBUG] debug-file - hvigorfile, resolve finished /Users/gandanxiangzhao/Downloads/Expert/harmony/commons/basic/hvigorfile.ts -[2025-05-12T14:15:53.055] [DEBUG] debug-file - hvigorfile, resolving /Users/gandanxiangzhao/Downloads/Expert/harmony/features/Home/hvigorfile.ts -[2025-05-12T14:15:53.057] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } -[2025-05-12T14:15:53.057] [DEBUG] debug-file - hvigorfile, binding system plugins null -[2025-05-12T14:15:53.059] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=Home, buildMode=debug -[2025-05-12T14:15:53.059] [DEBUG] debug-file - Target 'default' config: {} -[2025-05-12T14:15:53.059] [DEBUG] debug-file - Target 'ohosTest' config: {} -[2025-05-12T14:15:53.060] [DEBUG] debug-file - Module 'Home' target 'default' build option: { - "debuggable": true, +[2025-07-09T18:53:01.852] [DEBUG] debug-file - Module register task initialization takes 1 ms +[2025-07-09T18:53:01.852] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:53:01.852] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\features\register\hvigorfile.ts +[2025-07-09T18:53:01.852] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\features\register\hvigorfile.ts +[2025-07-09T18:53:01.856] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\polyv\hvigorfile.ts +[2025-07-09T18:53:01.859] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:53:01.859] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:53:01.862] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=polyv, buildMode=release +[2025-07-09T18:53:01.862] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:53:01.862] [DEBUG] debug-file - Module 'polyv' target 'default' build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } } -[2025-05-12T14:15:53.060] [DEBUG] debug-file - Module 'Home' target 'ohosTest' build option: { +[2025-07-09T18:53:01.862] [DEBUG] debug-file - End initialize module-target build option map, moduleName=polyv +[2025-07-09T18:53:01.862] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:01.864] [DEBUG] debug-file - Module polyv task initialization takes 1 ms +[2025-07-09T18:53:01.864] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:53:01.864] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\polyv\hvigorfile.ts +[2025-07-09T18:53:01.864] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\polyv\hvigorfile.ts +[2025-07-09T18:53:01.867] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\scene_single_video\hvigorfile.ts +[2025-07-09T18:53:01.869] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:53:01.869] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:53:01.872] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=scene_single_video, buildMode=release +[2025-07-09T18:53:01.872] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:53:01.873] [DEBUG] debug-file - Module 'scene_single_video' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} +[2025-07-09T18:53:01.873] [DEBUG] debug-file - End initialize module-target build option map, moduleName=scene_single_video +[2025-07-09T18:53:01.873] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:01.874] [DEBUG] debug-file - Module scene_single_video task initialization takes 1 ms +[2025-07-09T18:53:01.874] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:53:01.874] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\scene_single_video\hvigorfile.ts +[2025-07-09T18:53:01.874] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\scene_single_video\hvigorfile.ts +[2025-07-09T18:53:01.878] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\corekit\hvigorfile.ts +[2025-07-09T18:53:01.880] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:53:01.880] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:53:01.883] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=corekit, buildMode=release +[2025-07-09T18:53:01.883] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:53:01.883] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:53:01.883] [DEBUG] debug-file - Module 'corekit' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:53:01.883] [DEBUG] debug-file - Module 'corekit' target 'ohosTest' build option: { "debuggable": true, "strictMode": { "caseSensitiveCheck": true, @@ -469,36 +1316,62 @@ }, "name": "default" } -[2025-05-12T14:15:53.060] [DEBUG] debug-file - End initialize module-target build option map, moduleName=Home -[2025-05-12T14:15:53.060] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:01.883] [DEBUG] debug-file - End initialize module-target build option map, moduleName=corekit +[2025-07-09T18:53:01.883] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.061] [DEBUG] debug-file - Module Home task initialization takes 1 ms -[2025-05-12T14:15:53.061] [DEBUG] debug-file - hvigorfile, binding custom plugins [] -[2025-05-12T14:15:53.061] [DEBUG] debug-file - hvigorfile, no custom plugins were found in /Users/gandanxiangzhao/Downloads/Expert/harmony/features/Home/hvigorfile.ts -[2025-05-12T14:15:53.061] [DEBUG] debug-file - hvigorfile, resolve finished /Users/gandanxiangzhao/Downloads/Expert/harmony/features/Home/hvigorfile.ts -[2025-05-12T14:15:53.064] [DEBUG] debug-file - hvigorfile, resolving /Users/gandanxiangzhao/Downloads/Expert/harmony/features/register/hvigorfile.ts -[2025-05-12T14:15:53.068] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } -[2025-05-12T14:15:53.068] [DEBUG] debug-file - hvigorfile, binding system plugins null -[2025-05-12T14:15:53.071] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=register, buildMode=debug -[2025-05-12T14:15:53.071] [DEBUG] debug-file - Target 'default' config: {} -[2025-05-12T14:15:53.071] [DEBUG] debug-file - Target 'ohosTest' config: {} -[2025-05-12T14:15:53.071] [DEBUG] debug-file - Module 'register' target 'default' build option: { - "debuggable": true, +[2025-07-09T18:53:01.885] [DEBUG] debug-file - Module corekit task initialization takes 1 ms +[2025-07-09T18:53:01.885] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:53:01.886] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\corekit\hvigorfile.ts +[2025-07-09T18:53:01.886] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\corekit\hvigorfile.ts +[2025-07-09T18:53:01.889] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\chatkit\hvigorfile.ts +[2025-07-09T18:53:01.891] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:53:01.891] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:53:01.895] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=chatkit, buildMode=release +[2025-07-09T18:53:01.895] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:53:01.895] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:53:01.895] [DEBUG] debug-file - Module 'chatkit' target 'default' build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } -[2025-05-12T14:15:53.071] [DEBUG] debug-file - Module 'register' target 'ohosTest' build option: { +[2025-07-09T18:53:01.895] [DEBUG] debug-file - Module 'chatkit' target 'ohosTest' build option: { "debuggable": true, "strictMode": { "caseSensitiveCheck": true, @@ -506,834 +1379,4213 @@ }, "name": "default" } -[2025-05-12T14:15:53.071] [DEBUG] debug-file - End initialize module-target build option map, moduleName=register -[2025-05-12T14:15:53.071] [DEBUG] debug-file - Module 'register' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:01.895] [DEBUG] debug-file - End initialize module-target build option map, moduleName=chatkit +[2025-07-09T18:53:01.895] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.073] [DEBUG] debug-file - Module register task initialization takes 1 ms -[2025-05-12T14:15:53.073] [DEBUG] debug-file - hvigorfile, binding custom plugins [] -[2025-05-12T14:15:53.073] [DEBUG] debug-file - hvigorfile, no custom plugins were found in /Users/gandanxiangzhao/Downloads/Expert/harmony/features/register/hvigorfile.ts -[2025-05-12T14:15:53.073] [DEBUG] debug-file - hvigorfile, resolve finished /Users/gandanxiangzhao/Downloads/Expert/harmony/features/register/hvigorfile.ts -[2025-05-12T14:15:53.110] [DEBUG] debug-file - hvigorfile, resolve hvigorfile dependencies in 38 ms -[2025-05-12T14:15:53.111] [DEBUG] debug-file - project has submodules:default,uicomponents,utils,mypage,basic,Home,register -[2025-05-12T14:15:53.112] [DEBUG] debug-file - module:uicomponents no need to execute packageHap -[2025-05-12T14:15:53.112] [DEBUG] debug-file - module:utils no need to execute packageHap -[2025-05-12T14:15:53.112] [DEBUG] debug-file - module:mypage no need to execute packageHap -[2025-05-12T14:15:53.112] [DEBUG] debug-file - module:basic no need to execute packageHap -[2025-05-12T14:15:53.112] [DEBUG] debug-file - module:Home no need to execute packageHap -[2025-05-12T14:15:53.112] [DEBUG] debug-file - module:register no need to execute packageHap -[2025-05-12T14:15:53.115] [DEBUG] debug-file - start to load updatedOhPackageInfo to the disk -[2025-05-12T14:15:53.121] [DEBUG] debug-file - load to the disk finished -[2025-05-12T14:15:53.121] [DEBUG] debug-file - Start to initialize dependency information. -[2025-05-12T14:15:53.122] [DEBUG] debug-file - Module harmony Collected Dependency: /Users/gandanxiangzhao/Downloads/Expert/harmony/oh_modules/.ohpm/@ohos+crypto-js@2.0.4/oh_modules/@ohos/crypto-js -[2025-05-12T14:15:53.122] [DEBUG] debug-file - Module harmony's total dependency: 1 -[2025-05-12T14:15:53.123] [DEBUG] debug-file - Start to initialize dependency information. -[2025-05-12T14:15:53.124] [DEBUG] debug-file - Module default Collected Dependency: /Users/gandanxiangzhao/Downloads/Expert/harmony/commons/basic,/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/utils,/Users/gandanxiangzhao/Downloads/Expert/harmony/features/mypage,/Users/gandanxiangzhao/Downloads/Expert/harmony/features/Home,/Users/gandanxiangzhao/Downloads/Expert/harmony/features/register,/Users/gandanxiangzhao/Downloads/Expert/harmony/oh_modules/.ohpm/@ohos+crypto-js@2.0.4/oh_modules/@ohos/crypto-js -[2025-05-12T14:15:53.124] [DEBUG] debug-file - Module default's total dependency: 6 -[2025-05-12T14:15:53.129] [DEBUG] debug-file - Start to initialize dependency information. -[2025-05-12T14:15:53.130] [DEBUG] debug-file - Module uicomponents Collected Dependency: /Users/gandanxiangzhao/Downloads/Expert/harmony/oh_modules/.ohpm/@ohos+crypto-js@2.0.4/oh_modules/@ohos/crypto-js -[2025-05-12T14:15:53.130] [DEBUG] debug-file - Module uicomponents's total dependency: 1 -[2025-05-12T14:15:53.132] [DEBUG] debug-file - Start to initialize dependency information. -[2025-05-12T14:15:53.133] [DEBUG] debug-file - Module utils Collected Dependency: /Users/gandanxiangzhao/Downloads/Expert/harmony/oh_modules/.ohpm/@ohos+crypto-js@2.0.4/oh_modules/@ohos/crypto-js -[2025-05-12T14:15:53.133] [DEBUG] debug-file - Module utils's total dependency: 1 -[2025-05-12T14:15:53.135] [DEBUG] debug-file - Start to initialize dependency information. -[2025-05-12T14:15:53.135] [DEBUG] debug-file - Module mypage Collected Dependency: /Users/gandanxiangzhao/Downloads/Expert/harmony/commons/basic,/Users/gandanxiangzhao/Downloads/Expert/harmony/oh_modules/.ohpm/@ohos+crypto-js@2.0.4/oh_modules/@ohos/crypto-js -[2025-05-12T14:15:53.135] [DEBUG] debug-file - Module mypage's total dependency: 2 -[2025-05-12T14:15:53.136] [DEBUG] debug-file - Start to initialize dependency information. -[2025-05-12T14:15:53.137] [DEBUG] debug-file - Module basic Collected Dependency: /Users/gandanxiangzhao/Downloads/Expert/harmony/oh_modules/.ohpm/@ohos+crypto-js@2.0.4/oh_modules/@ohos/crypto-js -[2025-05-12T14:15:53.137] [DEBUG] debug-file - Module basic's total dependency: 1 -[2025-05-12T14:15:53.138] [DEBUG] debug-file - Start to initialize dependency information. -[2025-05-12T14:15:53.138] [DEBUG] debug-file - Module Home Collected Dependency: /Users/gandanxiangzhao/Downloads/Expert/harmony/commons/basic,/Users/gandanxiangzhao/Downloads/Expert/harmony/oh_modules/.ohpm/@ohos+crypto-js@2.0.4/oh_modules/@ohos/crypto-js -[2025-05-12T14:15:53.138] [DEBUG] debug-file - Module Home's total dependency: 2 -[2025-05-12T14:15:53.140] [DEBUG] debug-file - Start to initialize dependency information. -[2025-05-12T14:15:53.140] [DEBUG] debug-file - Module register Collected Dependency: /Users/gandanxiangzhao/Downloads/Expert/harmony/commons/basic,/Users/gandanxiangzhao/Downloads/Expert/harmony/oh_modules/.ohpm/@ohos+crypto-js@2.0.4/oh_modules/@ohos/crypto-js -[2025-05-12T14:15:53.140] [DEBUG] debug-file - Module register's total dependency: 2 -[2025-05-12T14:15:53.141] [DEBUG] debug-file - Configuration phase cost:207 ms -[2025-05-12T14:15:53.147] [DEBUG] debug-file - Configuration task cost before running: 227 ms -[2025-05-12T14:15:53.149] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.149] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.150] [DEBUG] debug-file - Executing task :default:default@PreBuild -[2025-05-12T14:15:53.154] [DEBUG] debug-file - Incremental task default:default@PreBuild pre-execution cost: 1 ms . -[2025-05-12T14:15:53.154] [DEBUG] debug-file - default : default@PreBuild cost memory 0.5876998901367188 -[2025-05-12T14:15:53.155] [INFO] debug-file - UP-TO-DATE :default:default@PreBuild... -[2025-05-12T14:15:53.155] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.155] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined -[2025-05-12T14:15:53.156] [DEBUG] debug-file - Executing task :basic:default@PreBuild -[2025-05-12T14:15:53.156] [DEBUG] debug-file - Incremental task basic:default@PreBuild pre-execution cost: 1 ms . -[2025-05-12T14:15:53.156] [DEBUG] debug-file - basic : default@PreBuild cost memory 0.15541839599609375 -[2025-05-12T14:15:53.156] [INFO] debug-file - UP-TO-DATE :basic:default@PreBuild... -[2025-05-12T14:15:53.165] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/crypto-js":"^2.0.4"} at undefined -[2025-05-12T14:15:53.165] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.166] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.166] [DEBUG] debug-file - jsonObjWithoutParam {"name":"utils","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/crypto-js":"^2.0.4"},"devDependencies":{},"dynamicDependencies":{}} at undefined -[2025-05-12T14:15:53.166] [DEBUG] debug-file - Executing task :utils:default@PreBuild -[2025-05-12T14:15:53.167] [DEBUG] debug-file - Incremental task utils:default@PreBuild pre-execution cost: 1 ms . -[2025-05-12T14:15:53.167] [DEBUG] debug-file - utils : default@PreBuild cost memory 0.16149139404296875 -[2025-05-12T14:15:53.167] [INFO] debug-file - UP-TO-DATE :utils:default@PreBuild... -[2025-05-12T14:15:53.168] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.168] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.168] [DEBUG] debug-file - Executing task :mypage:default@PreBuild -[2025-05-12T14:15:53.169] [DEBUG] debug-file - Incremental task mypage:default@PreBuild pre-execution cost: 1 ms . -[2025-05-12T14:15:53.169] [DEBUG] debug-file - mypage : default@PreBuild cost memory 0.15969085693359375 -[2025-05-12T14:15:53.169] [INFO] debug-file - UP-TO-DATE :mypage:default@PreBuild... -[2025-05-12T14:15:53.169] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.169] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.170] [DEBUG] debug-file - Executing task :Home:default@PreBuild -[2025-05-12T14:15:53.170] [DEBUG] debug-file - Incremental task Home:default@PreBuild pre-execution cost: 1 ms . -[2025-05-12T14:15:53.170] [DEBUG] debug-file - Home : default@PreBuild cost memory 0.16136932373046875 -[2025-05-12T14:15:53.170] [INFO] debug-file - UP-TO-DATE :Home:default@PreBuild... -[2025-05-12T14:15:53.171] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.171] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.171] [DEBUG] debug-file - Executing task :register:default@PreBuild -[2025-05-12T14:15:53.172] [DEBUG] debug-file - Incremental task register:default@PreBuild pre-execution cost: 1 ms . -[2025-05-12T14:15:53.172] [DEBUG] debug-file - register : default@PreBuild cost memory 0.15962982177734375 -[2025-05-12T14:15:53.172] [INFO] debug-file - UP-TO-DATE :register:default@PreBuild... -[2025-05-12T14:15:53.172] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.172] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.173] [DEBUG] debug-file - Executing task :default:default@GenerateMetadata -[2025-05-12T14:15:53.174] [DEBUG] debug-file - Task 'default:default@GenerateMetadata' cost while wrapping incremental declarations: 1 ms -[2025-05-12T14:15:53.174] [DEBUG] debug-file - Incremental task default:default@GenerateMetadata pre-execution cost: 1 ms . -[2025-05-12T14:15:53.174] [DEBUG] debug-file - default : default@GenerateMetadata cost memory 0.08829498291015625 -[2025-05-12T14:15:53.174] [INFO] debug-file - UP-TO-DATE :default:default@GenerateMetadata... -[2025-05-12T14:15:53.174] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.174] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.175] [DEBUG] debug-file - Executing task :default:default@PreCheckSyscap -[2025-05-12T14:15:53.175] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.175] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.175] [DEBUG] debug-file - default : default@PreCheckSyscap cost memory 0.04496002197265625 -[2025-05-12T14:15:53.175] [DEBUG] debug-file - runTaskFromQueue task cost before running: 255 ms -[2025-05-12T14:15:53.175] [INFO] debug-file - Finished :default:default@PreCheckSyscap... after 1 ms -[2025-05-12T14:15:53.176] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.176] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.180] [DEBUG] debug-file - Executing task :default:default@GeneratePkgContextInfo -[2025-05-12T14:15:53.180] [DEBUG] debug-file - Task 'default:default@GeneratePkgContextInfo' cost while wrapping incremental declarations: 1 ms -[2025-05-12T14:15:53.180] [DEBUG] debug-file - Incremental task default:default@GeneratePkgContextInfo pre-execution cost: 1 ms . -[2025-05-12T14:15:53.180] [DEBUG] debug-file - default : default@GeneratePkgContextInfo cost memory 0.078277587890625 -[2025-05-12T14:15:53.180] [INFO] debug-file - UP-TO-DATE :default:default@GeneratePkgContextInfo... -[2025-05-12T14:15:53.181] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.181] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.181] [DEBUG] debug-file - Executing task :default:default@ProcessIntegratedHsp -[2025-05-12T14:15:53.182] [DEBUG] debug-file - default:default@ProcessIntegratedHsp is not up-to-date, since the output file '/Users/gandanxiangzhao/Downloads/Expert/harmony/build/cache/default/integrated_hsp/integratedHspCache.json' does not exist. -[2025-05-12T14:15:53.182] [DEBUG] debug-file - Incremental task default:default@ProcessIntegratedHsp pre-execution cost: 1 ms . -[2025-05-12T14:15:53.182] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.182] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.182] [DEBUG] debug-file - default : default@ProcessIntegratedHsp cost memory 0.11919403076171875 -[2025-05-12T14:15:53.182] [DEBUG] debug-file - runTaskFromQueue task cost before running: 262 ms -[2025-05-12T14:15:53.182] [INFO] debug-file - Finished :default:default@ProcessIntegratedHsp... after 1 ms -[2025-05-12T14:15:53.182] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.182] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined -[2025-05-12T14:15:53.183] [DEBUG] debug-file - Executing task :basic:default@CreateHarBuildProfile -[2025-05-12T14:15:53.183] [DEBUG] debug-file - Task 'basic:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms -[2025-05-12T14:15:53.183] [DEBUG] debug-file - Incremental task basic:default@CreateHarBuildProfile pre-execution cost: 1 ms . -[2025-05-12T14:15:53.183] [DEBUG] debug-file - basic : default@CreateHarBuildProfile cost memory 0.07366180419921875 -[2025-05-12T14:15:53.183] [INFO] debug-file - UP-TO-DATE :basic:default@CreateHarBuildProfile... -[2025-05-12T14:15:53.183] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.183] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined -[2025-05-12T14:15:53.184] [DEBUG] debug-file - Executing task :basic:default@ConfigureCmake -[2025-05-12T14:15:53.184] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.184] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined -[2025-05-12T14:15:53.184] [DEBUG] debug-file - basic : default@ConfigureCmake cost memory 0.03609466552734375 -[2025-05-12T14:15:53.184] [DEBUG] debug-file - runTaskFromQueue task cost before running: 264 ms -[2025-05-12T14:15:53.184] [INFO] debug-file - Finished :basic:default@ConfigureCmake... after 1 ms -[2025-05-12T14:15:53.184] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.184] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined -[2025-05-12T14:15:53.184] [DEBUG] debug-file - Executing task :basic:default@MergeProfile -[2025-05-12T14:15:53.185] [DEBUG] debug-file - Incremental task basic:default@MergeProfile pre-execution cost: 1 ms . -[2025-05-12T14:15:53.185] [DEBUG] debug-file - basic : default@MergeProfile cost memory 0.102142333984375 -[2025-05-12T14:15:53.185] [INFO] debug-file - UP-TO-DATE :basic:default@MergeProfile... -[2025-05-12T14:15:53.185] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/crypto-js":"^2.0.4"} at undefined -[2025-05-12T14:15:53.185] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.185] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.185] [DEBUG] debug-file - jsonObjWithoutParam {"name":"utils","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/crypto-js":"^2.0.4"},"devDependencies":{},"dynamicDependencies":{}} at undefined -[2025-05-12T14:15:53.185] [DEBUG] debug-file - Executing task :utils:default@CreateHarBuildProfile -[2025-05-12T14:15:53.185] [DEBUG] debug-file - Task 'utils:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms -[2025-05-12T14:15:53.186] [DEBUG] debug-file - Incremental task utils:default@CreateHarBuildProfile pre-execution cost: 1 ms . -[2025-05-12T14:15:53.186] [DEBUG] debug-file - utils : default@CreateHarBuildProfile cost memory 0.071075439453125 -[2025-05-12T14:15:53.186] [INFO] debug-file - UP-TO-DATE :utils:default@CreateHarBuildProfile... -[2025-05-12T14:15:53.186] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/crypto-js":"^2.0.4"} at undefined -[2025-05-12T14:15:53.186] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.186] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.186] [DEBUG] debug-file - jsonObjWithoutParam {"name":"utils","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/crypto-js":"^2.0.4"},"devDependencies":{},"dynamicDependencies":{}} at undefined -[2025-05-12T14:15:53.186] [DEBUG] debug-file - Executing task :utils:default@ConfigureCmake -[2025-05-12T14:15:53.186] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/crypto-js":"^2.0.4"} at undefined -[2025-05-12T14:15:53.186] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.186] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.186] [DEBUG] debug-file - jsonObjWithoutParam {"name":"utils","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/crypto-js":"^2.0.4"},"devDependencies":{},"dynamicDependencies":{}} at undefined -[2025-05-12T14:15:53.186] [DEBUG] debug-file - utils : default@ConfigureCmake cost memory 0.057159423828125 -[2025-05-12T14:15:53.186] [DEBUG] debug-file - runTaskFromQueue task cost before running: 266 ms -[2025-05-12T14:15:53.186] [INFO] debug-file - Finished :utils:default@ConfigureCmake... after 1 ms -[2025-05-12T14:15:53.187] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/crypto-js":"^2.0.4"} at undefined -[2025-05-12T14:15:53.187] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.187] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.187] [DEBUG] debug-file - jsonObjWithoutParam {"name":"utils","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/crypto-js":"^2.0.4"},"devDependencies":{},"dynamicDependencies":{}} at undefined -[2025-05-12T14:15:53.187] [DEBUG] debug-file - Executing task :utils:default@MergeProfile -[2025-05-12T14:15:53.187] [DEBUG] debug-file - Incremental task utils:default@MergeProfile pre-execution cost: 1 ms . -[2025-05-12T14:15:53.187] [DEBUG] debug-file - utils : default@MergeProfile cost memory 0.09853363037109375 -[2025-05-12T14:15:53.187] [INFO] debug-file - UP-TO-DATE :utils:default@MergeProfile... -[2025-05-12T14:15:53.188] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.188] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.188] [DEBUG] debug-file - Executing task :default:default@SyscapTransform -[2025-05-12T14:15:53.188] [DEBUG] debug-file - File: '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/src/main/syscap.json' from 'sysCapJsonPath' is not exists, just ignore. -[2025-05-12T14:15:53.188] [DEBUG] debug-file - Task 'default:default@SyscapTransform' cost while wrapping incremental declarations: 1 ms -[2025-05-12T14:15:53.189] [DEBUG] debug-file - default:default@SyscapTransform is not up-to-date, since the output file '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/syscap/default/rpcid.sc' does not exist. -[2025-05-12T14:15:53.189] [DEBUG] debug-file - Incremental task default:default@SyscapTransform pre-execution cost: 1 ms . -[2025-05-12T14:15:53.189] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.189] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.189] [DEBUG] debug-file - default : default@SyscapTransform cost memory 0.188140869140625 -[2025-05-12T14:15:53.189] [DEBUG] debug-file - runTaskFromQueue task cost before running: 269 ms -[2025-05-12T14:15:53.189] [INFO] debug-file - Finished :default:default@SyscapTransform... after 2 ms -[2025-05-12T14:15:53.190] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.190] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.190] [DEBUG] debug-file - Executing task :default:default@ProcessRouterMap -[2025-05-12T14:15:53.191] [DEBUG] debug-file - Incremental task default:default@ProcessRouterMap pre-execution cost: 1 ms . -[2025-05-12T14:15:53.191] [DEBUG] debug-file - default : default@ProcessRouterMap cost memory 0.21077728271484375 -[2025-05-12T14:15:53.191] [INFO] debug-file - UP-TO-DATE :default:default@ProcessRouterMap... -[2025-05-12T14:15:53.192] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.192] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.192] [DEBUG] debug-file - Executing task :mypage:default@CreateHarBuildProfile -[2025-05-12T14:15:53.192] [DEBUG] debug-file - Task 'mypage:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms -[2025-05-12T14:15:53.192] [DEBUG] debug-file - Incremental task mypage:default@CreateHarBuildProfile pre-execution cost: 1 ms . -[2025-05-12T14:15:53.192] [DEBUG] debug-file - mypage : default@CreateHarBuildProfile cost memory 0.07186126708984375 -[2025-05-12T14:15:53.192] [INFO] debug-file - UP-TO-DATE :mypage:default@CreateHarBuildProfile... -[2025-05-12T14:15:53.193] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.193] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.193] [DEBUG] debug-file - Executing task :Home:default@CreateHarBuildProfile -[2025-05-12T14:15:53.193] [DEBUG] debug-file - Task 'Home:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms -[2025-05-12T14:15:53.193] [DEBUG] debug-file - Incremental task Home:default@CreateHarBuildProfile pre-execution cost: 1 ms . -[2025-05-12T14:15:53.193] [DEBUG] debug-file - Home : default@CreateHarBuildProfile cost memory 0.07193756103515625 -[2025-05-12T14:15:53.193] [INFO] debug-file - UP-TO-DATE :Home:default@CreateHarBuildProfile... -[2025-05-12T14:15:53.194] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.194] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.194] [DEBUG] debug-file - Executing task :register:default@CreateHarBuildProfile -[2025-05-12T14:15:53.194] [DEBUG] debug-file - Task 'register:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms -[2025-05-12T14:15:53.194] [DEBUG] debug-file - Incremental task register:default@CreateHarBuildProfile pre-execution cost: 1 ms . -[2025-05-12T14:15:53.194] [DEBUG] debug-file - register : default@CreateHarBuildProfile cost memory 0.071197509765625 -[2025-05-12T14:15:53.194] [INFO] debug-file - UP-TO-DATE :register:default@CreateHarBuildProfile... -[2025-05-12T14:15:53.196] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.196] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined -[2025-05-12T14:15:53.196] [DEBUG] debug-file - Executing task :basic:default@BuildNativeWithCmake -[2025-05-12T14:15:53.196] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.196] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined -[2025-05-12T14:15:53.196] [DEBUG] debug-file - basic : default@BuildNativeWithCmake cost memory 0.03714752197265625 -[2025-05-12T14:15:53.196] [DEBUG] debug-file - runTaskFromQueue task cost before running: 276 ms -[2025-05-12T14:15:53.196] [INFO] debug-file - Finished :basic:default@BuildNativeWithCmake... after 1 ms -[2025-05-12T14:15:53.197] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.197] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.197] [DEBUG] debug-file - Executing task :mypage:default@MergeProfile -[2025-05-12T14:15:53.197] [DEBUG] debug-file - Incremental task mypage:default@MergeProfile pre-execution cost: 1 ms . -[2025-05-12T14:15:53.197] [DEBUG] debug-file - mypage : default@MergeProfile cost memory 0.1237640380859375 -[2025-05-12T14:15:53.198] [INFO] debug-file - UP-TO-DATE :mypage:default@MergeProfile... -[2025-05-12T14:15:53.198] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.198] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.198] [DEBUG] debug-file - Executing task :Home:default@MergeProfile -[2025-05-12T14:15:53.199] [DEBUG] debug-file - Incremental task Home:default@MergeProfile pre-execution cost: 1 ms . -[2025-05-12T14:15:53.199] [DEBUG] debug-file - Home : default@MergeProfile cost memory 0.12126922607421875 -[2025-05-12T14:15:53.199] [INFO] debug-file - UP-TO-DATE :Home:default@MergeProfile... -[2025-05-12T14:15:53.199] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.199] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.199] [DEBUG] debug-file - Executing task :register:default@MergeProfile -[2025-05-12T14:15:53.200] [DEBUG] debug-file - Incremental task register:default@MergeProfile pre-execution cost: 1 ms . -[2025-05-12T14:15:53.200] [DEBUG] debug-file - register : default@MergeProfile cost memory 0.121124267578125 -[2025-05-12T14:15:53.200] [INFO] debug-file - UP-TO-DATE :register:default@MergeProfile... -[2025-05-12T14:15:53.201] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/crypto-js":"^2.0.4"} at undefined -[2025-05-12T14:15:53.201] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.201] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.201] [DEBUG] debug-file - jsonObjWithoutParam {"name":"utils","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/crypto-js":"^2.0.4"},"devDependencies":{},"dynamicDependencies":{}} at undefined -[2025-05-12T14:15:53.201] [DEBUG] debug-file - Executing task :utils:default@BuildNativeWithCmake -[2025-05-12T14:15:53.201] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/crypto-js":"^2.0.4"} at undefined -[2025-05-12T14:15:53.201] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.201] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.201] [DEBUG] debug-file - jsonObjWithoutParam {"name":"utils","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/crypto-js":"^2.0.4"},"devDependencies":{},"dynamicDependencies":{}} at undefined -[2025-05-12T14:15:53.201] [DEBUG] debug-file - utils : default@BuildNativeWithCmake cost memory 0.0581512451171875 -[2025-05-12T14:15:53.201] [DEBUG] debug-file - runTaskFromQueue task cost before running: 281 ms -[2025-05-12T14:15:53.201] [INFO] debug-file - Finished :utils:default@BuildNativeWithCmake... after 1 ms -[2025-05-12T14:15:53.201] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.201] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.202] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:01.897] [DEBUG] debug-file - Module chatkit task initialization takes 1 ms +[2025-07-09T18:53:01.897] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:53:01.897] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\chatkit\hvigorfile.ts +[2025-07-09T18:53:01.897] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\chatkit\hvigorfile.ts +[2025-07-09T18:53:01.902] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\hvigorfile.ts +[2025-07-09T18:53:01.904] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:53:01.904] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:53:01.907] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=chatkit_ui, buildMode=release +[2025-07-09T18:53:01.907] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:53:01.907] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" -} in this build. -[2025-05-12T14:15:53.202] [DEBUG] debug-file - Module 'utils' target 'default' using build option: { - "debuggable": true, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:53:01.907] [DEBUG] debug-file - End initialize module-target build option map, moduleName=chatkit_ui +[2025-07-09T18:53:01.907] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.202] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:01.909] [DEBUG] debug-file - Module chatkit_ui task initialization takes 1 ms +[2025-07-09T18:53:01.909] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:53:01.909] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\hvigorfile.ts +[2025-07-09T18:53:01.909] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\hvigorfile.ts +[2025-07-09T18:53:01.913] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\features\netease\hvigorfile.ts +[2025-07-09T18:53:01.914] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:53:01.914] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:53:01.918] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=netease, buildMode=release +[2025-07-09T18:53:01.918] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:53:01.918] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:53:01.919] [DEBUG] debug-file - Module 'netease' target 'default' build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" -} in this build. -[2025-05-12T14:15:53.202] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:53:01.919] [DEBUG] debug-file - Module 'netease' target 'ohosTest' build option: { "debuggable": true, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "default" +} +[2025-07-09T18:53:01.919] [DEBUG] debug-file - End initialize module-target build option map, moduleName=netease +[2025-07-09T18:53:01.919] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.202] [DEBUG] debug-file - Module 'register' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:01.920] [DEBUG] debug-file - Module netease task initialization takes 1 ms +[2025-07-09T18:53:01.921] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:53:01.921] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\features\netease\hvigorfile.ts +[2025-07-09T18:53:01.921] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\features\netease\hvigorfile.ts +[2025-07-09T18:53:01.924] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\hvigorfile.ts +[2025-07-09T18:53:01.926] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:53:01.927] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:53:01.930] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=conversationkit_ui, buildMode=release +[2025-07-09T18:53:01.930] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:53:01.930] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" -} in this build. -[2025-05-12T14:15:53.203] [DEBUG] debug-file - Executing task :default:default@GenerateLoaderJson -[2025-05-12T14:15:53.204] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { - "debuggable": true, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:53:01.930] [DEBUG] debug-file - End initialize module-target build option map, moduleName=conversationkit_ui +[2025-07-09T18:53:01.930] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.204] [DEBUG] debug-file - Module 'utils' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:01.932] [DEBUG] debug-file - Module conversationkit_ui task initialization takes 1 ms +[2025-07-09T18:53:01.932] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:53:01.932] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\hvigorfile.ts +[2025-07-09T18:53:01.932] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\hvigorfile.ts +[2025-07-09T18:53:01.938] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\common\hvigorfile.ts +[2025-07-09T18:53:01.939] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:53:01.940] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:53:01.943] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=common, buildMode=release +[2025-07-09T18:53:01.943] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:53:01.943] [DEBUG] debug-file - Module 'common' target 'default' build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" -} in this build. -[2025-05-12T14:15:53.204] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { - "debuggable": true, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:53:01.943] [DEBUG] debug-file - End initialize module-target build option map, moduleName=common +[2025-07-09T18:53:01.943] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.204] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:01.945] [DEBUG] debug-file - Module common task initialization takes 1 ms +[2025-07-09T18:53:01.945] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:53:01.945] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\common\hvigorfile.ts +[2025-07-09T18:53:01.945] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\common\hvigorfile.ts +[2025-07-09T18:53:01.949] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\hvigorfile.ts +[2025-07-09T18:53:01.950] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:53:01.951] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:53:01.954] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=localconversationkit_ui, buildMode=release +[2025-07-09T18:53:01.954] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:53:01.954] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" -} in this build. -[2025-05-12T14:15:53.204] [DEBUG] debug-file - Module 'register' target 'default' using build option: { - "debuggable": true, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:53:01.954] [DEBUG] debug-file - End initialize module-target build option map, moduleName=localconversationkit_ui +[2025-07-09T18:53:01.954] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.205] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:01.956] [DEBUG] debug-file - Module localconversationkit_ui task initialization takes 1 ms +[2025-07-09T18:53:01.956] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:53:01.956] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\hvigorfile.ts +[2025-07-09T18:53:01.956] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\hvigorfile.ts +[2025-07-09T18:53:01.976] [DEBUG] debug-file - hvigorfile, resolve hvigorfile dependencies in 19 ms +[2025-07-09T18:53:01.976] [DEBUG] debug-file - project has submodules:default,mypage,basic,Home,register,polyv,scene_single_video,corekit,chatkit,chatkit_ui,netease,conversationkit_ui,common,localconversationkit_ui +[2025-07-09T18:53:01.977] [DEBUG] debug-file - module:mypage no need to execute packageHap +[2025-07-09T18:53:01.977] [DEBUG] debug-file - module:basic no need to execute packageHap +[2025-07-09T18:53:01.977] [DEBUG] debug-file - module:Home no need to execute packageHap +[2025-07-09T18:53:01.977] [DEBUG] debug-file - module:register no need to execute packageHap +[2025-07-09T18:53:01.977] [DEBUG] debug-file - module:polyv no need to execute packageHap +[2025-07-09T18:53:01.977] [DEBUG] debug-file - module:scene_single_video no need to execute packageHap +[2025-07-09T18:53:01.977] [DEBUG] debug-file - module:corekit no need to execute packageHap +[2025-07-09T18:53:01.977] [DEBUG] debug-file - module:chatkit no need to execute packageHap +[2025-07-09T18:53:01.977] [DEBUG] debug-file - module:chatkit_ui no need to execute packageHap +[2025-07-09T18:53:01.977] [DEBUG] debug-file - module:netease no need to execute packageHap +[2025-07-09T18:53:01.977] [DEBUG] debug-file - module:conversationkit_ui no need to execute packageHap +[2025-07-09T18:53:01.977] [DEBUG] debug-file - module:common no need to execute packageHap +[2025-07-09T18:53:01.977] [DEBUG] debug-file - module:localconversationkit_ui no need to execute packageHap +[2025-07-09T18:53:01.978] [DEBUG] debug-file - start to load updatedOhPackageInfo to the disk +[2025-07-09T18:53:01.993] [DEBUG] debug-file - load to the disk finished +[2025-07-09T18:53:01.994] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:53:02.014] [DEBUG] debug-file - Module harmony Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:53:02.014] [DEBUG] debug-file - Module harmony's total dependency: 3 +[2025-07-09T18:53:02.016] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:53:02.252] [DEBUG] debug-file - Module default Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\commons\basic,D:\202076work\hongmeng\newExpert\harmony\features\mypage,D:\202076work\hongmeng\newExpert\harmony\features\Home,D:\202076work\hongmeng\newExpert\harmony\features\register,D:\202076work\hongmeng\newExpert\harmony\scene_single_video,D:\202076work\hongmeng\newExpert\harmony\polyv,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk@2.5.0\oh_modules\@polyvharmony\media-player-sdk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-ijk@2.5.0\oh_modules\@polyvharmony\media-player-core-ijk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\oh_modules\@polyvharmony\media-player-sdk-addon-cache-down,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-api@1.0.2\oh_modules\@polyvharmony\httpdns-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-impl-local@1.0.2\oh_modules\@polyvharmony\httpdns-impl-local,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-impl-ali@1.0.2\oh_modules\@polyvharmony\httpdns-impl-ali,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+localconversation@10.9.10\oh_modules\@nimsdk\localconversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base,D:\202076work\hongmeng\newExpert\harmony\corekit,D:\202076work\hongmeng\newExpert\harmony\chatkit,D:\202076work\hongmeng\newExpert\harmony\features\netease,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-business@2.5.0\oh_modules\@polyvharmony\media-player-business,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-api@2.5.0\oh_modules\@polyvharmony\media-player-core-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-foundation@2.5.0\oh_modules\@polyvharmony\media-player-foundation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+httpdns@1.1.1\oh_modules\@aliyun\httpdns,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\class-transformer@0.5.1\oh_modules\class-transformer,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata,D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui,D:\202076work\hongmeng\newExpert\harmony\chatkit_ui,D:\202076work\hongmeng\newExpert\harmony\common,D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+logger@1.0.2\oh_modules\@aliyun\logger,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+error@1.0.2\oh_modules\@aliyun\error,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\pako@2.1.0\oh_modules\pako,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\base64-js@1.5.1\oh_modules\base64-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm +[2025-07-09T18:53:02.252] [DEBUG] debug-file - Module default's total dependency: 43 +[2025-07-09T18:53:02.254] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:53:02.255] [DEBUG] debug-file - Module mypage Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\commons\basic,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:53:02.255] [DEBUG] debug-file - Module mypage's total dependency: 4 +[2025-07-09T18:53:02.257] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:53:02.257] [DEBUG] debug-file - Module basic Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:53:02.258] [DEBUG] debug-file - Module basic's total dependency: 3 +[2025-07-09T18:53:02.259] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:53:02.260] [DEBUG] debug-file - Module Home Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\commons\basic,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk@2.5.0\oh_modules\@polyvharmony\media-player-sdk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\oh_modules\@polyvharmony\media-player-sdk-addon-cache-down,D:\202076work\hongmeng\newExpert\harmony\scene_single_video,D:\202076work\hongmeng\newExpert\harmony\polyv,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-business@2.5.0\oh_modules\@polyvharmony\media-player-business,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-api@2.5.0\oh_modules\@polyvharmony\media-player-core-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-foundation@2.5.0\oh_modules\@polyvharmony\media-player-foundation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-ijk@2.5.0\oh_modules\@polyvharmony\media-player-core-ijk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-api@1.0.2\oh_modules\@polyvharmony\httpdns-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\pako@2.1.0\oh_modules\pako,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\base64-js@1.5.1\oh_modules\base64-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:53:02.260] [DEBUG] debug-file - Module Home's total dependency: 16 +[2025-07-09T18:53:02.262] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:53:02.263] [DEBUG] debug-file - Module register Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\commons\basic,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:53:02.263] [DEBUG] debug-file - Module register's total dependency: 4 +[2025-07-09T18:53:02.264] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:53:02.265] [DEBUG] debug-file - Module polyv Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk@2.5.0\oh_modules\@polyvharmony\media-player-sdk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\oh_modules\@polyvharmony\media-player-sdk-addon-cache-down,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-business@2.5.0\oh_modules\@polyvharmony\media-player-business,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-api@2.5.0\oh_modules\@polyvharmony\media-player-core-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-foundation@2.5.0\oh_modules\@polyvharmony\media-player-foundation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-ijk@2.5.0\oh_modules\@polyvharmony\media-player-core-ijk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-api@1.0.2\oh_modules\@polyvharmony\httpdns-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\pako@2.1.0\oh_modules\pako,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\base64-js@1.5.1\oh_modules\base64-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:53:02.265] [DEBUG] debug-file - Module polyv's total dependency: 13 +[2025-07-09T18:53:02.266] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:53:02.267] [DEBUG] debug-file - Module scene_single_video Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\polyv,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk@2.5.0\oh_modules\@polyvharmony\media-player-sdk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\oh_modules\@polyvharmony\media-player-sdk-addon-cache-down,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-business@2.5.0\oh_modules\@polyvharmony\media-player-business,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-api@2.5.0\oh_modules\@polyvharmony\media-player-core-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-foundation@2.5.0\oh_modules\@polyvharmony\media-player-foundation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-ijk@2.5.0\oh_modules\@polyvharmony\media-player-core-ijk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-api@1.0.2\oh_modules\@polyvharmony\httpdns-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\pako@2.1.0\oh_modules\pako,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\base64-js@1.5.1\oh_modules\base64-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:53:02.267] [DEBUG] debug-file - Module scene_single_video's total dependency: 14 +[2025-07-09T18:53:02.268] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:53:02.269] [DEBUG] debug-file - Module corekit Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:53:02.269] [DEBUG] debug-file - Module corekit's total dependency: 3 +[2025-07-09T18:53:02.271] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:53:02.272] [DEBUG] debug-file - Module chatkit Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base,D:\202076work\hongmeng\newExpert\harmony\corekit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\class-transformer@0.5.1\oh_modules\class-transformer,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm +[2025-07-09T18:53:02.272] [DEBUG] debug-file - Module chatkit's total dependency: 13 +[2025-07-09T18:53:02.274] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:53:02.275] [DEBUG] debug-file - Module chatkit_ui Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\common,D:\202076work\hongmeng\newExpert\harmony\chatkit,D:\202076work\hongmeng\newExpert\harmony\corekit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\class-transformer@0.5.1\oh_modules\class-transformer,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown,D:\202076work\hongmeng\newExpert\harmony\commons\basic,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm +[2025-07-09T18:53:02.275] [DEBUG] debug-file - Module chatkit_ui's total dependency: 18 +[2025-07-09T18:53:02.277] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:53:02.278] [DEBUG] debug-file - Module netease Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\commons\basic,D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui,D:\202076work\hongmeng\newExpert\harmony\chatkit_ui,D:\202076work\hongmeng\newExpert\harmony\chatkit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base,D:\202076work\hongmeng\newExpert\harmony\common,D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui,D:\202076work\hongmeng\newExpert\harmony\corekit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\class-transformer@0.5.1\oh_modules\class-transformer,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm +[2025-07-09T18:53:02.278] [DEBUG] debug-file - Module netease's total dependency: 21 +[2025-07-09T18:53:02.279] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:53:02.280] [DEBUG] debug-file - Module conversationkit_ui Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\common,D:\202076work\hongmeng\newExpert\harmony\chatkit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim,D:\202076work\hongmeng\newExpert\harmony\corekit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\class-transformer@0.5.1\oh_modules\class-transformer,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm +[2025-07-09T18:53:02.281] [DEBUG] debug-file - Module conversationkit_ui's total dependency: 16 +[2025-07-09T18:53:02.282] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:53:02.283] [DEBUG] debug-file - Module common Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:53:02.283] [DEBUG] debug-file - Module common's total dependency: 4 +[2025-07-09T18:53:02.284] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:53:02.285] [DEBUG] debug-file - Module localconversationkit_ui Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\common,D:\202076work\hongmeng\newExpert\harmony\chatkit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim,D:\202076work\hongmeng\newExpert\harmony\corekit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\class-transformer@0.5.1\oh_modules\class-transformer,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm +[2025-07-09T18:53:02.285] [DEBUG] debug-file - Module localconversationkit_ui's total dependency: 16 +[2025-07-09T18:53:02.286] [DEBUG] debug-file - Configuration phase cost:609 ms +[2025-07-09T18:53:02.292] [DEBUG] debug-file - Configuration task cost before running: 690 ms +[2025-07-09T18:53:02.293] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:02.293] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:02.296] [DEBUG] debug-file - Executing task :default:default@PreBuild +[2025-07-09T18:53:02.311] [DEBUG] debug-file - Incremental task default:default@PreBuild pre-execution cost: 3 ms . +[2025-07-09T18:53:02.311] [DEBUG] debug-file - default : default@PreBuild cost memory 1.8432769775390625 +[2025-07-09T18:53:02.312] [INFO] debug-file - UP-TO-DATE :default:default@PreBuild... +[2025-07-09T18:53:02.313] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:53:02.313] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:53:02.314] [DEBUG] debug-file - Executing task :basic:default@PreBuild +[2025-07-09T18:53:02.316] [DEBUG] debug-file - Incremental task basic:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:53:02.317] [DEBUG] debug-file - basic : default@PreBuild cost memory 0.2308349609375 +[2025-07-09T18:53:02.317] [INFO] debug-file - UP-TO-DATE :basic:default@PreBuild... +[2025-07-09T18:53:02.319] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:53:02.319] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:53:02.320] [DEBUG] debug-file - Executing task :mypage:default@PreBuild +[2025-07-09T18:53:02.324] [DEBUG] debug-file - Incremental task mypage:default@PreBuild pre-execution cost: 3 ms . +[2025-07-09T18:53:02.324] [DEBUG] debug-file - mypage : default@PreBuild cost memory 0.235382080078125 +[2025-07-09T18:53:02.325] [INFO] debug-file - UP-TO-DATE :mypage:default@PreBuild... +[2025-07-09T18:53:02.326] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:53:02.327] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:53:02.328] [DEBUG] debug-file - Executing task :Home:default@PreBuild +[2025-07-09T18:53:02.331] [DEBUG] debug-file - Incremental task Home:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:53:02.331] [DEBUG] debug-file - Home : default@PreBuild cost memory 0.24680328369140625 +[2025-07-09T18:53:02.331] [INFO] debug-file - UP-TO-DATE :Home:default@PreBuild... +[2025-07-09T18:53:02.332] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:53:02.332] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:53:02.333] [DEBUG] debug-file - Executing task :scene_single_video:default@PreBuild +[2025-07-09T18:53:02.336] [DEBUG] debug-file - Incremental task scene_single_video:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:53:02.336] [DEBUG] debug-file - scene_single_video : default@PreBuild cost memory 0.23587799072265625 +[2025-07-09T18:53:02.337] [INFO] debug-file - UP-TO-DATE :scene_single_video:default@PreBuild... +[2025-07-09T18:53:02.338] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:53:02.338] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:53:02.339] [DEBUG] debug-file - Executing task :polyv:default@PreBuild +[2025-07-09T18:53:02.342] [DEBUG] debug-file - Incremental task polyv:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:53:02.342] [DEBUG] debug-file - polyv : default@PreBuild cost memory 0.2330780029296875 +[2025-07-09T18:53:02.343] [INFO] debug-file - UP-TO-DATE :polyv:default@PreBuild... +[2025-07-09T18:53:02.344] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:53:02.344] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:53:02.345] [DEBUG] debug-file - Executing task :register:default@PreBuild +[2025-07-09T18:53:02.347] [DEBUG] debug-file - Incremental task register:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:53:02.348] [DEBUG] debug-file - register : default@PreBuild cost memory 0.236480712890625 +[2025-07-09T18:53:02.348] [INFO] debug-file - UP-TO-DATE :register:default@PreBuild... +[2025-07-09T18:53:02.349] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:53:02.350] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:53:02.351] [DEBUG] debug-file - Executing task :corekit:default@PreBuild +[2025-07-09T18:53:02.353] [DEBUG] debug-file - Incremental task corekit:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:53:02.354] [DEBUG] debug-file - corekit : default@PreBuild cost memory 0.233612060546875 +[2025-07-09T18:53:02.354] [INFO] debug-file - UP-TO-DATE :corekit:default@PreBuild... +[2025-07-09T18:53:02.355] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:53:02.356] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:53:02.357] [DEBUG] debug-file - Executing task :chatkit:default@PreBuild +[2025-07-09T18:53:02.359] [DEBUG] debug-file - Incremental task chatkit:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:53:02.359] [DEBUG] debug-file - chatkit : default@PreBuild cost memory 0.2486724853515625 +[2025-07-09T18:53:02.360] [INFO] debug-file - UP-TO-DATE :chatkit:default@PreBuild... +[2025-07-09T18:53:02.361] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:53:02.361] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:53:02.362] [DEBUG] debug-file - Executing task :netease:default@PreBuild +[2025-07-09T18:53:02.365] [DEBUG] debug-file - Incremental task netease:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:53:02.365] [DEBUG] debug-file - netease : default@PreBuild cost memory 0.27028656005859375 +[2025-07-09T18:53:02.366] [INFO] debug-file - UP-TO-DATE :netease:default@PreBuild... +[2025-07-09T18:53:02.368] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:53:02.368] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:53:02.370] [DEBUG] debug-file - Executing task :conversationkit_ui:default@PreBuild +[2025-07-09T18:53:02.374] [DEBUG] debug-file - Incremental task conversationkit_ui:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:53:02.374] [DEBUG] debug-file - conversationkit_ui : default@PreBuild cost memory -13.494171142578125 +[2025-07-09T18:53:02.375] [INFO] debug-file - UP-TO-DATE :conversationkit_ui:default@PreBuild... +[2025-07-09T18:53:02.376] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:53:02.376] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:53:02.377] [DEBUG] debug-file - Executing task :common:default@PreBuild +[2025-07-09T18:53:02.379] [DEBUG] debug-file - Incremental task common:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:53:02.379] [DEBUG] debug-file - common : default@PreBuild cost memory 0.2446441650390625 +[2025-07-09T18:53:02.380] [INFO] debug-file - UP-TO-DATE :common:default@PreBuild... +[2025-07-09T18:53:02.381] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:53:02.381] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:53:02.382] [DEBUG] debug-file - Executing task :chatkit_ui:default@PreBuild +[2025-07-09T18:53:02.385] [DEBUG] debug-file - Incremental task chatkit_ui:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:53:02.385] [DEBUG] debug-file - chatkit_ui : default@PreBuild cost memory 0.29305267333984375 +[2025-07-09T18:53:02.386] [INFO] debug-file - UP-TO-DATE :chatkit_ui:default@PreBuild... +[2025-07-09T18:53:02.387] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:53:02.387] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:53:02.388] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@PreBuild +[2025-07-09T18:53:02.390] [DEBUG] debug-file - Incremental task localconversationkit_ui:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:53:02.390] [DEBUG] debug-file - localconversationkit_ui : default@PreBuild cost memory 0.2839508056640625 +[2025-07-09T18:53:02.391] [INFO] debug-file - UP-TO-DATE :localconversationkit_ui:default@PreBuild... +[2025-07-09T18:53:02.392] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:02.392] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:02.393] [DEBUG] debug-file - Executing task :default:default@CreateModuleInfo +[2025-07-09T18:53:02.393] [DEBUG] debug-file - Task 'default:default@CreateModuleInfo' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:02.394] [DEBUG] debug-file - default : default@CreateModuleInfo cost memory 0.06017303466796875 +[2025-07-09T18:53:02.394] [DEBUG] debug-file - runTaskFromQueue task cost before running: 792 ms +[2025-07-09T18:53:02.394] [INFO] debug-file - Finished :default:default@CreateModuleInfo... after 1 ms +[2025-07-09T18:53:02.395] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:02.395] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:02.399] [DEBUG] debug-file - Executing task :default:default@GenerateMetadata +[2025-07-09T18:53:02.400] [DEBUG] debug-file - Task 'default:default@GenerateMetadata' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:02.400] [DEBUG] debug-file - Incremental task default:default@GenerateMetadata pre-execution cost: 1 ms . +[2025-07-09T18:53:02.400] [DEBUG] debug-file - default : default@GenerateMetadata cost memory 0.09618377685546875 +[2025-07-09T18:53:02.400] [INFO] debug-file - UP-TO-DATE :default:default@GenerateMetadata... +[2025-07-09T18:53:02.402] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:02.402] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:02.402] [DEBUG] debug-file - Executing task :default:default@PreCheckSyscap +[2025-07-09T18:53:02.402] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:02.402] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:02.403] [DEBUG] debug-file - default : default@PreCheckSyscap cost memory 0.06905364990234375 +[2025-07-09T18:53:02.403] [DEBUG] debug-file - runTaskFromQueue task cost before running: 801 ms +[2025-07-09T18:53:02.403] [INFO] debug-file - Finished :default:default@PreCheckSyscap... after 1 ms +[2025-07-09T18:53:02.404] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:02.404] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:02.419] [DEBUG] debug-file - Executing task :default:default@GeneratePkgContextInfo +[2025-07-09T18:53:02.419] [DEBUG] debug-file - Task 'default:default@GeneratePkgContextInfo' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:02.420] [DEBUG] debug-file - Incremental task default:default@GeneratePkgContextInfo pre-execution cost: 1 ms . +[2025-07-09T18:53:02.420] [DEBUG] debug-file - default : default@GeneratePkgContextInfo cost memory 0.20964813232421875 +[2025-07-09T18:53:02.420] [INFO] debug-file - UP-TO-DATE :default:default@GeneratePkgContextInfo... +[2025-07-09T18:53:02.422] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:02.422] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:02.423] [DEBUG] debug-file - Executing task :default:default@ProcessIntegratedHsp +[2025-07-09T18:53:02.424] [DEBUG] debug-file - default:default@ProcessIntegratedHsp is not up-to-date, since the output file 'D:\202076work\hongmeng\newExpert\harmony\build\cache\default\integrated_hsp\integratedHspCache.json' does not exist. +[2025-07-09T18:53:02.424] [DEBUG] debug-file - Incremental task default:default@ProcessIntegratedHsp pre-execution cost: 1 ms . +[2025-07-09T18:53:02.424] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:02.424] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:02.424] [DEBUG] debug-file - default : default@ProcessIntegratedHsp cost memory 0.14975738525390625 +[2025-07-09T18:53:02.424] [DEBUG] debug-file - runTaskFromQueue task cost before running: 823 ms +[2025-07-09T18:53:02.424] [INFO] debug-file - Finished :default:default@ProcessIntegratedHsp... after 2 ms +[2025-07-09T18:53:02.426] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:53:02.426] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:53:02.426] [DEBUG] debug-file - Executing task :basic:default@CreateHarBuildProfile +[2025-07-09T18:53:02.426] [DEBUG] debug-file - Task 'basic:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:02.427] [DEBUG] debug-file - Incremental task basic:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:53:02.427] [DEBUG] debug-file - basic : default@CreateHarBuildProfile cost memory 0.08103179931640625 +[2025-07-09T18:53:02.427] [INFO] debug-file - UP-TO-DATE :basic:default@CreateHarBuildProfile... +[2025-07-09T18:53:02.428] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:53:02.428] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:53:02.428] [DEBUG] debug-file - Executing task :basic:default@ConfigureCmake +[2025-07-09T18:53:02.428] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:53:02.428] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:53:02.428] [DEBUG] debug-file - basic : default@ConfigureCmake cost memory 0.036224365234375 +[2025-07-09T18:53:02.428] [DEBUG] debug-file - runTaskFromQueue task cost before running: 827 ms +[2025-07-09T18:53:02.428] [INFO] debug-file - Finished :basic:default@ConfigureCmake... after 1 ms +[2025-07-09T18:53:02.430] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:53:02.430] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:53:02.430] [DEBUG] debug-file - Executing task :basic:default@MergeProfile +[2025-07-09T18:53:02.432] [DEBUG] debug-file - Incremental task basic:default@MergeProfile pre-execution cost: 1 ms . +[2025-07-09T18:53:02.432] [DEBUG] debug-file - basic : default@MergeProfile cost memory 0.15291595458984375 +[2025-07-09T18:53:02.432] [INFO] debug-file - UP-TO-DATE :basic:default@MergeProfile... +[2025-07-09T18:53:02.433] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:53:02.433] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:53:02.434] [DEBUG] debug-file - Executing task :polyv:default@CreateHarBuildProfile +[2025-07-09T18:53:02.434] [DEBUG] debug-file - Task 'polyv:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:02.434] [DEBUG] debug-file - Incremental task polyv:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:53:02.434] [DEBUG] debug-file - polyv : default@CreateHarBuildProfile cost memory 0.0813140869140625 +[2025-07-09T18:53:02.435] [INFO] debug-file - UP-TO-DATE :polyv:default@CreateHarBuildProfile... +[2025-07-09T18:53:02.436] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:53:02.436] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:53:02.436] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-business. +[2025-07-09T18:53:02.437] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-core-ijk. +[2025-07-09T18:53:02.437] [DEBUG] debug-file - Executing task :polyv:default@ConfigureCmake +[2025-07-09T18:53:02.437] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:53:02.437] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:53:02.437] [DEBUG] debug-file - polyv : default@ConfigureCmake cost memory 0.039306640625 +[2025-07-09T18:53:02.437] [DEBUG] debug-file - runTaskFromQueue task cost before running: 836 ms +[2025-07-09T18:53:02.437] [INFO] debug-file - Finished :polyv:default@ConfigureCmake... after 1 ms +[2025-07-09T18:53:02.438] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:53:02.438] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:53:02.439] [DEBUG] debug-file - Executing task :polyv:default@MergeProfile +[2025-07-09T18:53:02.443] [DEBUG] debug-file - Incremental task polyv:default@MergeProfile pre-execution cost: 2 ms . +[2025-07-09T18:53:02.443] [DEBUG] debug-file - polyv : default@MergeProfile cost memory 0.38494110107421875 +[2025-07-09T18:53:02.443] [INFO] debug-file - UP-TO-DATE :polyv:default@MergeProfile... +[2025-07-09T18:53:02.444] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:53:02.444] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:53:02.445] [DEBUG] debug-file - Executing task :corekit:default@CreateHarBuildProfile +[2025-07-09T18:53:02.445] [DEBUG] debug-file - Task 'corekit:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:02.446] [DEBUG] debug-file - Incremental task corekit:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:53:02.446] [DEBUG] debug-file - corekit : default@CreateHarBuildProfile cost memory 0.08036041259765625 +[2025-07-09T18:53:02.446] [INFO] debug-file - UP-TO-DATE :corekit:default@CreateHarBuildProfile... +[2025-07-09T18:53:02.447] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:53:02.447] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:53:02.447] [DEBUG] debug-file - Executing task :corekit:default@ConfigureCmake +[2025-07-09T18:53:02.447] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:53:02.447] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:53:02.447] [DEBUG] debug-file - corekit : default@ConfigureCmake cost memory 0.037261962890625 +[2025-07-09T18:53:02.447] [DEBUG] debug-file - runTaskFromQueue task cost before running: 846 ms +[2025-07-09T18:53:02.447] [INFO] debug-file - Finished :corekit:default@ConfigureCmake... after 1 ms +[2025-07-09T18:53:02.448] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:53:02.449] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:53:02.449] [DEBUG] debug-file - Executing task :corekit:default@MergeProfile +[2025-07-09T18:53:02.451] [DEBUG] debug-file - Incremental task corekit:default@MergeProfile pre-execution cost: 1 ms . +[2025-07-09T18:53:02.451] [DEBUG] debug-file - corekit : default@MergeProfile cost memory 0.1553192138671875 +[2025-07-09T18:53:02.451] [INFO] debug-file - UP-TO-DATE :corekit:default@MergeProfile... +[2025-07-09T18:53:02.452] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:53:02.452] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:53:02.452] [DEBUG] debug-file - Executing task :common:default@CreateHarBuildProfile +[2025-07-09T18:53:02.453] [DEBUG] debug-file - Task 'common:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:02.453] [DEBUG] debug-file - Incremental task common:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:53:02.453] [DEBUG] debug-file - common : default@CreateHarBuildProfile cost memory 0.08060455322265625 +[2025-07-09T18:53:02.453] [INFO] debug-file - UP-TO-DATE :common:default@CreateHarBuildProfile... +[2025-07-09T18:53:02.455] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:53:02.455] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:53:02.455] [DEBUG] debug-file - Executing task :common:default@ConfigureCmake +[2025-07-09T18:53:02.455] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:53:02.455] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:53:02.455] [DEBUG] debug-file - common : default@ConfigureCmake cost memory 0.03891754150390625 +[2025-07-09T18:53:02.455] [DEBUG] debug-file - runTaskFromQueue task cost before running: 854 ms +[2025-07-09T18:53:02.455] [INFO] debug-file - Finished :common:default@ConfigureCmake... after 1 ms +[2025-07-09T18:53:02.456] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:53:02.456] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:53:02.457] [DEBUG] debug-file - Executing task :common:default@MergeProfile +[2025-07-09T18:53:02.458] [DEBUG] debug-file - Incremental task common:default@MergeProfile pre-execution cost: 1 ms . +[2025-07-09T18:53:02.459] [DEBUG] debug-file - common : default@MergeProfile cost memory 0.18087005615234375 +[2025-07-09T18:53:02.459] [INFO] debug-file - UP-TO-DATE :common:default@MergeProfile... +[2025-07-09T18:53:02.460] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:02.460] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:02.461] [DEBUG] debug-file - Executing task :default:default@SyscapTransform +[2025-07-09T18:53:02.461] [DEBUG] debug-file - File: 'D:\202076work\hongmeng\newExpert\harmony\products\expert\src\main\syscap.json' from 'sysCapJsonPath' is not exists, just ignore. +[2025-07-09T18:53:02.461] [DEBUG] debug-file - Task 'default:default@SyscapTransform' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:02.462] [DEBUG] debug-file - default:default@SyscapTransform is not up-to-date, since the output file 'D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\syscap\default\rpcid.sc' does not exist. +[2025-07-09T18:53:02.462] [DEBUG] debug-file - Incremental task default:default@SyscapTransform pre-execution cost: 1 ms . +[2025-07-09T18:53:02.462] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:02.462] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:02.462] [DEBUG] debug-file - default : default@SyscapTransform cost memory 0.18524932861328125 +[2025-07-09T18:53:02.462] [DEBUG] debug-file - runTaskFromQueue task cost before running: 861 ms +[2025-07-09T18:53:02.462] [INFO] debug-file - Finished :default:default@SyscapTransform... after 2 ms +[2025-07-09T18:53:02.464] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:02.464] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:02.465] [DEBUG] debug-file - Executing task :default:default@ProcessRouterMap +[2025-07-09T18:53:02.472] [DEBUG] debug-file - Incremental task default:default@ProcessRouterMap pre-execution cost: 6 ms . +[2025-07-09T18:53:02.472] [DEBUG] debug-file - default : default@ProcessRouterMap cost memory -11.740974426269531 +[2025-07-09T18:53:02.474] [INFO] debug-file - UP-TO-DATE :default:default@ProcessRouterMap... +[2025-07-09T18:53:02.475] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:53:02.475] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:53:02.476] [DEBUG] debug-file - Executing task :mypage:default@CreateHarBuildProfile +[2025-07-09T18:53:02.476] [DEBUG] debug-file - Task 'mypage:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:02.476] [DEBUG] debug-file - Incremental task mypage:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:53:02.476] [DEBUG] debug-file - mypage : default@CreateHarBuildProfile cost memory 0.0817718505859375 +[2025-07-09T18:53:02.476] [INFO] debug-file - UP-TO-DATE :mypage:default@CreateHarBuildProfile... +[2025-07-09T18:53:02.477] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:53:02.478] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:53:02.478] [DEBUG] debug-file - Executing task :register:default@CreateHarBuildProfile +[2025-07-09T18:53:02.478] [DEBUG] debug-file - Task 'register:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:02.479] [DEBUG] debug-file - Incremental task register:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:53:02.479] [DEBUG] debug-file - register : default@CreateHarBuildProfile cost memory 0.08115386962890625 +[2025-07-09T18:53:02.479] [INFO] debug-file - UP-TO-DATE :register:default@CreateHarBuildProfile... +[2025-07-09T18:53:02.480] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:53:02.480] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:53:02.481] [DEBUG] debug-file - Executing task :basic:default@BuildNativeWithCmake +[2025-07-09T18:53:02.481] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:53:02.481] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:53:02.481] [DEBUG] debug-file - basic : default@BuildNativeWithCmake cost memory 0.03726959228515625 +[2025-07-09T18:53:02.481] [DEBUG] debug-file - runTaskFromQueue task cost before running: 880 ms +[2025-07-09T18:53:02.481] [INFO] debug-file - Finished :basic:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:53:02.482] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:53:02.482] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:53:02.483] [DEBUG] debug-file - Executing task :mypage:default@MergeProfile +[2025-07-09T18:53:02.485] [DEBUG] debug-file - Incremental task mypage:default@MergeProfile pre-execution cost: 2 ms . +[2025-07-09T18:53:02.485] [DEBUG] debug-file - mypage : default@MergeProfile cost memory 0.190032958984375 +[2025-07-09T18:53:02.485] [INFO] debug-file - UP-TO-DATE :mypage:default@MergeProfile... +[2025-07-09T18:53:02.486] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:53:02.486] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:53:02.487] [DEBUG] debug-file - Executing task :register:default@MergeProfile +[2025-07-09T18:53:02.488] [DEBUG] debug-file - Incremental task register:default@MergeProfile pre-execution cost: 1 ms . +[2025-07-09T18:53:02.488] [DEBUG] debug-file - register : default@MergeProfile cost memory 0.19012451171875 +[2025-07-09T18:53:02.489] [INFO] debug-file - UP-TO-DATE :register:default@MergeProfile... +[2025-07-09T18:53:02.490] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:53:02.490] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:53:02.490] [DEBUG] debug-file - Executing task :scene_single_video:default@CreateHarBuildProfile +[2025-07-09T18:53:02.490] [DEBUG] debug-file - Task 'scene_single_video:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:02.491] [DEBUG] debug-file - Incremental task scene_single_video:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:53:02.491] [DEBUG] debug-file - scene_single_video : default@CreateHarBuildProfile cost memory 0.081024169921875 +[2025-07-09T18:53:02.491] [INFO] debug-file - UP-TO-DATE :scene_single_video:default@CreateHarBuildProfile... +[2025-07-09T18:53:02.492] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:53:02.492] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:53:02.492] [DEBUG] debug-file - Executing task :polyv:default@BuildNativeWithCmake +[2025-07-09T18:53:02.492] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:53:02.492] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:53:02.492] [DEBUG] debug-file - polyv : default@BuildNativeWithCmake cost memory 0.0404205322265625 +[2025-07-09T18:53:02.492] [DEBUG] debug-file - runTaskFromQueue task cost before running: 891 ms +[2025-07-09T18:53:02.492] [INFO] debug-file - Finished :polyv:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:53:02.494] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:53:02.494] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:53:02.494] [DEBUG] debug-file - Executing task :scene_single_video:default@MergeProfile +[2025-07-09T18:53:02.499] [DEBUG] debug-file - Incremental task scene_single_video:default@MergeProfile pre-execution cost: 2 ms . +[2025-07-09T18:53:02.499] [DEBUG] debug-file - scene_single_video : default@MergeProfile cost memory 0.42131805419921875 +[2025-07-09T18:53:02.499] [INFO] debug-file - UP-TO-DATE :scene_single_video:default@MergeProfile... +[2025-07-09T18:53:02.500] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:53:02.500] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:53:02.501] [DEBUG] debug-file - Executing task :chatkit:default@CreateHarBuildProfile +[2025-07-09T18:53:02.501] [DEBUG] debug-file - Task 'chatkit:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:02.502] [DEBUG] debug-file - Incremental task chatkit:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:53:02.502] [DEBUG] debug-file - chatkit : default@CreateHarBuildProfile cost memory 0.0807952880859375 +[2025-07-09T18:53:02.502] [INFO] debug-file - UP-TO-DATE :chatkit:default@CreateHarBuildProfile... +[2025-07-09T18:53:02.503] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:53:02.503] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:53:02.503] [DEBUG] debug-file - Executing task :corekit:default@BuildNativeWithCmake +[2025-07-09T18:53:02.503] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:53:02.504] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:53:02.504] [DEBUG] debug-file - corekit : default@BuildNativeWithCmake cost memory 0.03729248046875 +[2025-07-09T18:53:02.504] [DEBUG] debug-file - runTaskFromQueue task cost before running: 902 ms +[2025-07-09T18:53:02.504] [INFO] debug-file - Finished :corekit:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:53:02.505] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:53:02.505] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:53:02.505] [DEBUG] debug-file - Executing task :chatkit:default@MergeProfile +[2025-07-09T18:53:02.510] [DEBUG] debug-file - Incremental task chatkit:default@MergeProfile pre-execution cost: 2 ms . +[2025-07-09T18:53:02.510] [DEBUG] debug-file - chatkit : default@MergeProfile cost memory 0.41419219970703125 +[2025-07-09T18:53:02.510] [INFO] debug-file - UP-TO-DATE :chatkit:default@MergeProfile... +[2025-07-09T18:53:02.511] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:53:02.511] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:53:02.512] [DEBUG] debug-file - Executing task :common:default@BuildNativeWithCmake +[2025-07-09T18:53:02.512] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:53:02.512] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:53:02.512] [DEBUG] debug-file - common : default@BuildNativeWithCmake cost memory 0.03875732421875 +[2025-07-09T18:53:02.512] [DEBUG] debug-file - runTaskFromQueue task cost before running: 910 ms +[2025-07-09T18:53:02.512] [INFO] debug-file - Finished :common:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:53:02.513] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:02.513] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:02.514] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.205] [DEBUG] debug-file - Module 'utils' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.514] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.205] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.514] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.205] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.514] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.205] [DEBUG] debug-file - Module 'register' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.514] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.207] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.514] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.207] [DEBUG] debug-file - Module 'utils' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.514] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.207] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.514] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.207] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.515] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.207] [DEBUG] debug-file - Module 'register' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.515] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.208] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.515] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.208] [DEBUG] debug-file - Module 'utils' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.515] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.208] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.515] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.208] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.522] [DEBUG] debug-file - Executing task :default:default@GenerateLoaderJson +[2025-07-09T18:53:02.524] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.208] [DEBUG] debug-file - Module 'register' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.524] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.208] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.524] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.208] [DEBUG] debug-file - Module 'utils' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.524] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.209] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.524] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.209] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.524] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.209] [DEBUG] debug-file - Module 'register' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.524] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.209] [DEBUG] debug-file - Incremental task default:default@GenerateLoaderJson pre-execution cost: 3 ms . -[2025-05-12T14:15:53.209] [DEBUG] debug-file - default : default@GenerateLoaderJson cost memory 1.1486282348632812 -[2025-05-12T14:15:53.210] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.524] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.210] [DEBUG] debug-file - Module 'utils' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.524] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.210] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.524] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.210] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.524] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.210] [DEBUG] debug-file - Module 'register' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.524] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.211] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.524] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.211] [DEBUG] debug-file - Module 'utils' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.527] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.211] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.527] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.211] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.527] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.211] [DEBUG] debug-file - Module 'register' target 'default' using build option: { - "debuggable": true, +[2025-07-09T18:53:02.527] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, "copyFrom": "default", "strictMode": { "caseSensitiveCheck": true, "useNormalizedOHMUrl": true }, - "name": "debug" + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } } in this build. -[2025-05-12T14:15:53.211] [INFO] debug-file - UP-TO-DATE :default:default@GenerateLoaderJson... -[2025-05-12T14:15:53.212] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.212] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.212] [DEBUG] debug-file - Executing task :default:default@CreateBuildProfile -[2025-05-12T14:15:53.212] [DEBUG] debug-file - Task 'default:default@CreateBuildProfile' cost while wrapping incremental declarations: 1 ms -[2025-05-12T14:15:53.213] [DEBUG] debug-file - Incremental task default:default@CreateBuildProfile pre-execution cost: 1 ms . -[2025-05-12T14:15:53.213] [DEBUG] debug-file - default : default@CreateBuildProfile cost memory 0.0875091552734375 -[2025-05-12T14:15:53.213] [INFO] debug-file - UP-TO-DATE :default:default@CreateBuildProfile... -[2025-05-12T14:15:53.213] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.213] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.213] [DEBUG] debug-file - Executing task :mypage:default@ConfigureCmake -[2025-05-12T14:15:53.214] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.214] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.214] [DEBUG] debug-file - mypage : default@ConfigureCmake cost memory 0.037933349609375 -[2025-05-12T14:15:53.214] [DEBUG] debug-file - runTaskFromQueue task cost before running: 294 ms -[2025-05-12T14:15:53.214] [INFO] debug-file - Finished :mypage:default@ConfigureCmake... after 1 ms -[2025-05-12T14:15:53.214] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.214] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined -[2025-05-12T14:15:53.214] [DEBUG] debug-file - Executing task :basic:default@BuildNativeWithNinja -[2025-05-12T14:15:53.214] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.214] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined -[2025-05-12T14:15:53.215] [DEBUG] debug-file - basic : default@BuildNativeWithNinja cost memory 0.0531158447265625 -[2025-05-12T14:15:53.215] [DEBUG] debug-file - runTaskFromQueue task cost before running: 295 ms -[2025-05-12T14:15:53.215] [INFO] debug-file - Finished :basic:default@BuildNativeWithNinja... after 1 ms -[2025-05-12T14:15:53.216] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.216] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.216] [DEBUG] debug-file - Executing task :Home:default@ConfigureCmake -[2025-05-12T14:15:53.216] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.216] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.216] [DEBUG] debug-file - Home : default@ConfigureCmake cost memory 0.037994384765625 -[2025-05-12T14:15:53.216] [DEBUG] debug-file - runTaskFromQueue task cost before running: 296 ms -[2025-05-12T14:15:53.216] [INFO] debug-file - Finished :Home:default@ConfigureCmake... after 1 ms -[2025-05-12T14:15:53.216] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.216] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.216] [DEBUG] debug-file - Executing task :register:default@ConfigureCmake -[2025-05-12T14:15:53.216] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.216] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.216] [DEBUG] debug-file - register : default@ConfigureCmake cost memory 0.04125213623046875 -[2025-05-12T14:15:53.216] [DEBUG] debug-file - runTaskFromQueue task cost before running: 297 ms -[2025-05-12T14:15:53.216] [INFO] debug-file - Finished :register:default@ConfigureCmake... after 1 ms -[2025-05-12T14:15:53.217] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.217] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.217] [DEBUG] debug-file - Executing task :default:default@MergeProfile -[2025-05-12T14:15:53.218] [DEBUG] debug-file - Incremental task default:default@MergeProfile pre-execution cost: 1 ms . -[2025-05-12T14:15:53.218] [DEBUG] debug-file - default : default@MergeProfile cost memory 0.2261962890625 -[2025-05-12T14:15:53.218] [INFO] debug-file - UP-TO-DATE :default:default@MergeProfile... -[2025-05-12T14:15:53.219] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/crypto-js":"^2.0.4"} at undefined -[2025-05-12T14:15:53.219] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.219] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.219] [DEBUG] debug-file - jsonObjWithoutParam {"name":"utils","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/crypto-js":"^2.0.4"},"devDependencies":{},"dynamicDependencies":{}} at undefined -[2025-05-12T14:15:53.219] [DEBUG] debug-file - Executing task :utils:default@BuildNativeWithNinja -[2025-05-12T14:15:53.219] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/crypto-js":"^2.0.4"} at undefined -[2025-05-12T14:15:53.219] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.219] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.219] [DEBUG] debug-file - jsonObjWithoutParam {"name":"utils","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/crypto-js":"^2.0.4"},"devDependencies":{},"dynamicDependencies":{}} at undefined -[2025-05-12T14:15:53.219] [DEBUG] debug-file - utils : default@BuildNativeWithNinja cost memory 0.07610321044921875 -[2025-05-12T14:15:53.219] [DEBUG] debug-file - runTaskFromQueue task cost before running: 299 ms -[2025-05-12T14:15:53.219] [INFO] debug-file - Finished :utils:default@BuildNativeWithNinja... after 1 ms -[2025-05-12T14:15:53.220] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.220] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.220] [DEBUG] debug-file - Executing task :mypage:default@BuildNativeWithCmake -[2025-05-12T14:15:53.220] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.220] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.220] [DEBUG] debug-file - mypage : default@BuildNativeWithCmake cost memory 0.04105377197265625 -[2025-05-12T14:15:53.220] [DEBUG] debug-file - runTaskFromQueue task cost before running: 300 ms -[2025-05-12T14:15:53.220] [INFO] debug-file - Finished :mypage:default@BuildNativeWithCmake... after 1 ms -[2025-05-12T14:15:53.221] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.221] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined -[2025-05-12T14:15:53.221] [DEBUG] debug-file - Executing task :basic:default@ProcessLibs -[2025-05-12T14:15:53.222] [DEBUG] debug-file - Incremental task basic:default@ProcessLibs pre-execution cost: 1 ms . -[2025-05-12T14:15:53.222] [DEBUG] debug-file - basic : default@ProcessLibs cost memory 0.10907745361328125 -[2025-05-12T14:15:53.222] [INFO] debug-file - UP-TO-DATE :basic:default@ProcessLibs... -[2025-05-12T14:15:53.222] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.222] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.223] [DEBUG] debug-file - Executing task :Home:default@BuildNativeWithCmake -[2025-05-12T14:15:53.223] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.223] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.223] [DEBUG] debug-file - Home : default@BuildNativeWithCmake cost memory 0.03896331787109375 -[2025-05-12T14:15:53.223] [DEBUG] debug-file - runTaskFromQueue task cost before running: 303 ms -[2025-05-12T14:15:53.223] [INFO] debug-file - Finished :Home:default@BuildNativeWithCmake... after 1 ms -[2025-05-12T14:15:53.223] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.223] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.224] [DEBUG] debug-file - Executing task :register:default@BuildNativeWithCmake -[2025-05-12T14:15:53.224] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.224] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.224] [DEBUG] debug-file - register : default@BuildNativeWithCmake cost memory 0.0389251708984375 -[2025-05-12T14:15:53.224] [DEBUG] debug-file - runTaskFromQueue task cost before running: 304 ms -[2025-05-12T14:15:53.224] [INFO] debug-file - Finished :register:default@BuildNativeWithCmake... after 1 ms -[2025-05-12T14:15:53.224] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.224] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.224] [DEBUG] debug-file - Executing task :default:default@MakePackInfo -[2025-05-12T14:15:53.225] [DEBUG] debug-file - Incremental task default:default@MakePackInfo pre-execution cost: 1 ms . -[2025-05-12T14:15:53.225] [DEBUG] debug-file - default : default@MakePackInfo cost memory 0.13794708251953125 -[2025-05-12T14:15:53.226] [INFO] debug-file - UP-TO-DATE :default:default@MakePackInfo... -[2025-05-12T14:15:53.226] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.226] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.228] [DEBUG] debug-file - Executing task :default:default@ProcessProfile -[2025-05-12T14:15:53.229] [DEBUG] debug-file - Incremental task default:default@ProcessProfile pre-execution cost: 1 ms . -[2025-05-12T14:15:53.229] [DEBUG] debug-file - default : default@ProcessProfile cost memory 0.11043548583984375 -[2025-05-12T14:15:53.229] [INFO] debug-file - UP-TO-DATE :default:default@ProcessProfile... -[2025-05-12T14:15:53.230] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/crypto-js":"^2.0.4"} at undefined -[2025-05-12T14:15:53.230] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.230] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.230] [DEBUG] debug-file - jsonObjWithoutParam {"name":"utils","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/crypto-js":"^2.0.4"},"devDependencies":{},"dynamicDependencies":{}} at undefined -[2025-05-12T14:15:53.230] [DEBUG] debug-file - Executing task :utils:default@ProcessLibs -[2025-05-12T14:15:53.231] [DEBUG] debug-file - Incremental task utils:default@ProcessLibs pre-execution cost: 1 ms . -[2025-05-12T14:15:53.231] [DEBUG] debug-file - utils : default@ProcessLibs cost memory 0.1043853759765625 -[2025-05-12T14:15:53.231] [INFO] debug-file - UP-TO-DATE :utils:default@ProcessLibs... -[2025-05-12T14:15:53.231] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.231] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined -[2025-05-12T14:15:53.232] [DEBUG] debug-file - Executing task :basic:default@DoNativeStrip -[2025-05-12T14:15:53.232] [DEBUG] debug-file - Task 'basic:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms -[2025-05-12T14:15:53.234] [DEBUG] debug-file - Incremental task basic:default@DoNativeStrip pre-execution cost: 1 ms . -[2025-05-12T14:15:53.234] [DEBUG] debug-file - basic : default@DoNativeStrip cost memory -14.233001708984375 -[2025-05-12T14:15:53.234] [INFO] debug-file - UP-TO-DATE :basic:default@DoNativeStrip... -[2025-05-12T14:15:53.234] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.234] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.235] [DEBUG] debug-file - Executing task :default:default@ConfigureCmake -[2025-05-12T14:15:53.235] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.235] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.235] [DEBUG] debug-file - default : default@ConfigureCmake cost memory 0.041961669921875 -[2025-05-12T14:15:53.235] [DEBUG] debug-file - runTaskFromQueue task cost before running: 315 ms -[2025-05-12T14:15:53.235] [INFO] debug-file - Finished :default:default@ConfigureCmake... after 1 ms -[2025-05-12T14:15:53.235] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.235] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.235] [DEBUG] debug-file - restool module names: default,uicomponents,utils,mypage,basic,Home,register; moduleName=default, taskName=default@ProcessResource -[2025-05-12T14:15:53.237] [DEBUG] debug-file - Executing task :default:default@ProcessResource -[2025-05-12T14:15:53.237] [DEBUG] debug-file - Incremental task default:default@ProcessResource pre-execution cost: 1 ms . -[2025-05-12T14:15:53.237] [DEBUG] debug-file - default : default@ProcessResource cost memory 0.1550750732421875 -[2025-05-12T14:15:53.238] [INFO] debug-file - UP-TO-DATE :default:default@ProcessResource... -[2025-05-12T14:15:53.239] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/crypto-js":"^2.0.4"} at undefined -[2025-05-12T14:15:53.239] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.239] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined -[2025-05-12T14:15:53.239] [DEBUG] debug-file - jsonObjWithoutParam {"name":"utils","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/crypto-js":"^2.0.4"},"devDependencies":{},"dynamicDependencies":{}} at undefined -[2025-05-12T14:15:53.239] [DEBUG] debug-file - Executing task :utils:default@DoNativeStrip -[2025-05-12T14:15:53.239] [DEBUG] debug-file - Task 'utils:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms -[2025-05-12T14:15:53.239] [DEBUG] debug-file - Incremental task utils:default@DoNativeStrip pre-execution cost: 1 ms . -[2025-05-12T14:15:53.239] [DEBUG] debug-file - utils : default@DoNativeStrip cost memory 0.05762481689453125 -[2025-05-12T14:15:53.239] [INFO] debug-file - UP-TO-DATE :utils:default@DoNativeStrip... -[2025-05-12T14:15:53.240] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.240] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.240] [DEBUG] debug-file - Executing task :mypage:default@BuildNativeWithNinja -[2025-05-12T14:15:53.240] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.240] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.240] [DEBUG] debug-file - mypage : default@BuildNativeWithNinja cost memory 0.05506134033203125 -[2025-05-12T14:15:53.240] [DEBUG] debug-file - runTaskFromQueue task cost before running: 320 ms -[2025-05-12T14:15:53.240] [INFO] debug-file - Finished :mypage:default@BuildNativeWithNinja... after 1 ms -[2025-05-12T14:15:53.241] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.241] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.241] [DEBUG] debug-file - Executing task :Home:default@BuildNativeWithNinja -[2025-05-12T14:15:53.241] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.241] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.242] [DEBUG] debug-file - Home : default@BuildNativeWithNinja cost memory 0.0546875 -[2025-05-12T14:15:53.242] [DEBUG] debug-file - runTaskFromQueue task cost before running: 322 ms -[2025-05-12T14:15:53.242] [INFO] debug-file - Finished :Home:default@BuildNativeWithNinja... after 1 ms -[2025-05-12T14:15:53.242] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.242] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.243] [DEBUG] debug-file - Executing task :register:default@BuildNativeWithNinja -[2025-05-12T14:15:53.243] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.243] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.243] [DEBUG] debug-file - register : default@BuildNativeWithNinja cost memory 0.05480194091796875 -[2025-05-12T14:15:53.243] [DEBUG] debug-file - runTaskFromQueue task cost before running: 323 ms -[2025-05-12T14:15:53.243] [INFO] debug-file - Finished :register:default@BuildNativeWithNinja... after 1 ms -[2025-05-12T14:15:53.244] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.244] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.244] [DEBUG] debug-file - Executing task :default:default@BuildNativeWithCmake -[2025-05-12T14:15:53.244] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.244] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.244] [DEBUG] debug-file - default : default@BuildNativeWithCmake cost memory 0.0427093505859375 -[2025-05-12T14:15:53.244] [DEBUG] debug-file - runTaskFromQueue task cost before running: 324 ms -[2025-05-12T14:15:53.244] [INFO] debug-file - Finished :default:default@BuildNativeWithCmake... after 1 ms -[2025-05-12T14:15:53.245] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.245] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.245] [DEBUG] debug-file - restool module names: default,uicomponents,utils,mypage,basic,Home,register; moduleName=default, taskName=default@CompileResource -[2025-05-12T14:15:53.246] [DEBUG] debug-file - Executing task :default:default@CompileResource -[2025-05-12T14:15:53.252] [DEBUG] debug-file - Incremental task default:default@CompileResource pre-execution cost: 6 ms . -[2025-05-12T14:15:53.252] [DEBUG] debug-file - default : default@CompileResource cost memory 1.189910888671875 -[2025-05-12T14:15:53.252] [INFO] debug-file - UP-TO-DATE :default:default@CompileResource... -[2025-05-12T14:15:53.252] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.252] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.253] [DEBUG] debug-file - Executing task :mypage:default@ProcessLibs -[2025-05-12T14:15:53.253] [DEBUG] debug-file - Incremental task mypage:default@ProcessLibs pre-execution cost: 1 ms . -[2025-05-12T14:15:53.253] [DEBUG] debug-file - mypage : default@ProcessLibs cost memory 0.1046905517578125 -[2025-05-12T14:15:53.253] [INFO] debug-file - UP-TO-DATE :mypage:default@ProcessLibs... -[2025-05-12T14:15:53.253] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.254] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.254] [DEBUG] debug-file - Executing task :Home:default@ProcessLibs -[2025-05-12T14:15:53.254] [DEBUG] debug-file - Incremental task Home:default@ProcessLibs pre-execution cost: 1 ms . -[2025-05-12T14:15:53.254] [DEBUG] debug-file - Home : default@ProcessLibs cost memory 0.1051788330078125 -[2025-05-12T14:15:53.254] [INFO] debug-file - UP-TO-DATE :Home:default@ProcessLibs... -[2025-05-12T14:15:53.255] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.255] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.255] [DEBUG] debug-file - Executing task :register:default@ProcessLibs -[2025-05-12T14:15:53.255] [DEBUG] debug-file - Incremental task register:default@ProcessLibs pre-execution cost: 1 ms . -[2025-05-12T14:15:53.255] [DEBUG] debug-file - register : default@ProcessLibs cost memory 0.1046600341796875 -[2025-05-12T14:15:53.255] [INFO] debug-file - UP-TO-DATE :register:default@ProcessLibs... -[2025-05-12T14:15:53.256] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.256] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.257] [DEBUG] debug-file - Executing task :default:default@CompileArkTS -[2025-05-12T14:15:53.265] [DEBUG] debug-file - default:default@CompileArkTS is not up-to-date, since the input file '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/mypage/src/main/ets' has been changed. -[2025-05-12T14:15:53.265] [DEBUG] debug-file - Incremental task default:default@CompileArkTS pre-execution cost: 3 ms . -[2025-05-12T14:15:53.270] [DEBUG] debug-file - build config: -[2025-05-12T14:15:53.270] [DEBUG] debug-file - { +[2025-07-09T18:53:02.527] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.527] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.530] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.530] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.530] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.531] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.531] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.531] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.531] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.569] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.569] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.570] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.570] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.570] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.570] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.570] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.570] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.570] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.570] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.570] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.570] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.570] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.572] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.572] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.572] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.573] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.573] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.573] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.576] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.576] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.576] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.577] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.577] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.577] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.577] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.580] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.580] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.580] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.580] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.580] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.580] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.583] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.583] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.583] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.584] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.584] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.585] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.585] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.674] [DEBUG] debug-file - Incremental task default:default@GenerateLoaderJson pre-execution cost: 107 ms . +[2025-07-09T18:53:02.674] [DEBUG] debug-file - default : default@GenerateLoaderJson cost memory -2.5528717041015625 +[2025-07-09T18:53:02.676] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.676] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.676] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.676] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.676] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.676] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.676] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.676] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.676] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.676] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.676] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.676] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.676] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.678] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.678] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.678] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.678] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.678] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.678] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.681] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.681] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.681] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.682] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.682] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.682] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.683] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:02.685] [INFO] debug-file - UP-TO-DATE :default:default@GenerateLoaderJson... +[2025-07-09T18:53:02.686] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:53:02.686] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:53:02.687] [DEBUG] debug-file - Executing task :mypage:default@ConfigureCmake +[2025-07-09T18:53:02.687] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:53:02.687] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:53:02.687] [DEBUG] debug-file - mypage : default@ConfigureCmake cost memory 0.03905487060546875 +[2025-07-09T18:53:02.687] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 85 ms +[2025-07-09T18:53:02.687] [INFO] debug-file - Finished :mypage:default@ConfigureCmake... after 1 ms +[2025-07-09T18:53:02.688] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:53:02.689] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:53:02.689] [DEBUG] debug-file - Executing task :basic:default@BuildNativeWithNinja +[2025-07-09T18:53:02.689] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:53:02.689] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:53:02.690] [DEBUG] debug-file - basic : default@BuildNativeWithNinja cost memory 0.05760955810546875 +[2025-07-09T18:53:02.690] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 88 ms +[2025-07-09T18:53:02.690] [INFO] debug-file - Finished :basic:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:53:02.692] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:53:02.692] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:53:02.692] [DEBUG] debug-file - Executing task :register:default@ConfigureCmake +[2025-07-09T18:53:02.692] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:53:02.692] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:53:02.692] [DEBUG] debug-file - register : default@ConfigureCmake cost memory 0.039031982421875 +[2025-07-09T18:53:02.693] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 91 ms +[2025-07-09T18:53:02.693] [INFO] debug-file - Finished :register:default@ConfigureCmake... after 1 ms +[2025-07-09T18:53:02.694] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:53:02.694] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:53:02.695] [DEBUG] debug-file - Executing task :Home:default@CreateHarBuildProfile +[2025-07-09T18:53:02.695] [DEBUG] debug-file - Task 'Home:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:02.696] [DEBUG] debug-file - Incremental task Home:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:53:02.696] [DEBUG] debug-file - Home : default@CreateHarBuildProfile cost memory 0.0813751220703125 +[2025-07-09T18:53:02.696] [INFO] debug-file - UP-TO-DATE :Home:default@CreateHarBuildProfile... +[2025-07-09T18:53:02.698] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:53:02.698] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:53:02.698] [DEBUG] debug-file - Executing task :polyv:default@BuildNativeWithNinja +[2025-07-09T18:53:02.698] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:53:02.698] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:53:02.699] [DEBUG] debug-file - polyv : default@BuildNativeWithNinja cost memory 0.05997467041015625 +[2025-07-09T18:53:02.699] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 98 ms +[2025-07-09T18:53:02.700] [INFO] debug-file - Finished :polyv:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:53:02.702] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:53:02.702] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:53:02.702] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-business. +[2025-07-09T18:53:02.703] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-core-ijk. +[2025-07-09T18:53:02.704] [DEBUG] debug-file - Executing task :scene_single_video:default@ConfigureCmake +[2025-07-09T18:53:02.704] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:53:02.704] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:53:02.704] [DEBUG] debug-file - scene_single_video : default@ConfigureCmake cost memory 0.03989410400390625 +[2025-07-09T18:53:02.704] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 102 ms +[2025-07-09T18:53:02.704] [INFO] debug-file - Finished :scene_single_video:default@ConfigureCmake... after 1 ms +[2025-07-09T18:53:02.706] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:53:02.706] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:53:02.706] [DEBUG] debug-file - Executing task :Home:default@MergeProfile +[2025-07-09T18:53:02.711] [DEBUG] debug-file - Incremental task Home:default@MergeProfile pre-execution cost: 2 ms . +[2025-07-09T18:53:02.711] [DEBUG] debug-file - Home : default@MergeProfile cost memory 0.4886322021484375 +[2025-07-09T18:53:02.712] [INFO] debug-file - UP-TO-DATE :Home:default@MergeProfile... +[2025-07-09T18:53:02.713] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:53:02.713] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:53:02.713] [DEBUG] debug-file - Executing task :chatkit_ui:default@CreateHarBuildProfile +[2025-07-09T18:53:02.713] [DEBUG] debug-file - Task 'chatkit_ui:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:02.714] [DEBUG] debug-file - Incremental task chatkit_ui:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:53:02.714] [DEBUG] debug-file - chatkit_ui : default@CreateHarBuildProfile cost memory 0.0804290771484375 +[2025-07-09T18:53:02.714] [INFO] debug-file - UP-TO-DATE :chatkit_ui:default@CreateHarBuildProfile... +[2025-07-09T18:53:02.716] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:53:02.716] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:53:02.716] [DEBUG] debug-file - Executing task :conversationkit_ui:default@CreateHarBuildProfile +[2025-07-09T18:53:02.716] [DEBUG] debug-file - Task 'conversationkit_ui:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:02.717] [DEBUG] debug-file - Incremental task conversationkit_ui:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:53:02.717] [DEBUG] debug-file - conversationkit_ui : default@CreateHarBuildProfile cost memory 0.080718994140625 +[2025-07-09T18:53:02.717] [INFO] debug-file - UP-TO-DATE :conversationkit_ui:default@CreateHarBuildProfile... +[2025-07-09T18:53:02.718] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:53:02.718] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:53:02.719] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@CreateHarBuildProfile +[2025-07-09T18:53:02.719] [DEBUG] debug-file - Task 'localconversationkit_ui:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:02.719] [DEBUG] debug-file - Incremental task localconversationkit_ui:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:53:02.719] [DEBUG] debug-file - localconversationkit_ui : default@CreateHarBuildProfile cost memory 0.08074951171875 +[2025-07-09T18:53:02.720] [INFO] debug-file - UP-TO-DATE :localconversationkit_ui:default@CreateHarBuildProfile... +[2025-07-09T18:53:02.720] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:53:02.720] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:53:02.721] [DEBUG] debug-file - Executing task :corekit:default@BuildNativeWithNinja +[2025-07-09T18:53:02.721] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:53:02.721] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:53:02.721] [DEBUG] debug-file - corekit : default@BuildNativeWithNinja cost memory 0.0569610595703125 +[2025-07-09T18:53:02.721] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 120 ms +[2025-07-09T18:53:02.722] [INFO] debug-file - Finished :corekit:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:53:02.723] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:53:02.723] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:53:02.723] [DEBUG] debug-file - Resolve native package @nimsdk/conversation. +[2025-07-09T18:53:02.723] [DEBUG] debug-file - Resolve native package @nimsdk/message. +[2025-07-09T18:53:02.724] [DEBUG] debug-file - Resolve native package @nimsdk/team. +[2025-07-09T18:53:02.724] [DEBUG] debug-file - Resolve native package @nimsdk/user. +[2025-07-09T18:53:02.724] [DEBUG] debug-file - Resolve native package @nimsdk/friend. +[2025-07-09T18:53:02.725] [DEBUG] debug-file - Resolve native package @nimsdk/nim. +[2025-07-09T18:53:02.725] [DEBUG] debug-file - Executing task :chatkit:default@ConfigureCmake +[2025-07-09T18:53:02.725] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:53:02.725] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:53:02.725] [DEBUG] debug-file - chatkit : default@ConfigureCmake cost memory 0.04813385009765625 +[2025-07-09T18:53:02.725] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 124 ms +[2025-07-09T18:53:02.725] [INFO] debug-file - Finished :chatkit:default@ConfigureCmake... after 1 ms +[2025-07-09T18:53:02.727] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:53:02.727] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:53:02.727] [DEBUG] debug-file - Executing task :chatkit_ui:default@MergeProfile +[2025-07-09T18:53:02.734] [DEBUG] debug-file - Incremental task chatkit_ui:default@MergeProfile pre-execution cost: 3 ms . +[2025-07-09T18:53:02.734] [DEBUG] debug-file - chatkit_ui : default@MergeProfile cost memory 0.582916259765625 +[2025-07-09T18:53:02.734] [INFO] debug-file - UP-TO-DATE :chatkit_ui:default@MergeProfile... +[2025-07-09T18:53:02.736] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:53:02.736] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:53:02.736] [DEBUG] debug-file - Executing task :conversationkit_ui:default@MergeProfile +[2025-07-09T18:53:02.741] [DEBUG] debug-file - Incremental task conversationkit_ui:default@MergeProfile pre-execution cost: 3 ms . +[2025-07-09T18:53:02.742] [DEBUG] debug-file - conversationkit_ui : default@MergeProfile cost memory 0.51373291015625 +[2025-07-09T18:53:02.742] [INFO] debug-file - UP-TO-DATE :conversationkit_ui:default@MergeProfile... +[2025-07-09T18:53:02.743] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:53:02.743] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:53:02.743] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@MergeProfile +[2025-07-09T18:53:02.749] [DEBUG] debug-file - Incremental task localconversationkit_ui:default@MergeProfile pre-execution cost: 3 ms . +[2025-07-09T18:53:02.749] [DEBUG] debug-file - localconversationkit_ui : default@MergeProfile cost memory 0.513214111328125 +[2025-07-09T18:53:02.749] [INFO] debug-file - UP-TO-DATE :localconversationkit_ui:default@MergeProfile... +[2025-07-09T18:53:02.751] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:53:02.751] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:53:02.751] [DEBUG] debug-file - Executing task :common:default@BuildNativeWithNinja +[2025-07-09T18:53:02.751] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:53:02.751] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:53:02.752] [DEBUG] debug-file - common : default@BuildNativeWithNinja cost memory 0.05841827392578125 +[2025-07-09T18:53:02.752] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 150 ms +[2025-07-09T18:53:02.752] [INFO] debug-file - Finished :common:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:53:02.753] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:53:02.753] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:53:02.753] [DEBUG] debug-file - Executing task :mypage:default@BuildNativeWithCmake +[2025-07-09T18:53:02.754] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:53:02.754] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:53:02.754] [DEBUG] debug-file - mypage : default@BuildNativeWithCmake cost memory 0.0391082763671875 +[2025-07-09T18:53:02.754] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 152 ms +[2025-07-09T18:53:02.754] [INFO] debug-file - Finished :mypage:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:53:02.755] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:53:02.755] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:53:02.755] [DEBUG] debug-file - Executing task :basic:default@ProcessLibs +[2025-07-09T18:53:02.757] [DEBUG] debug-file - Incremental task basic:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:53:02.757] [DEBUG] debug-file - basic : default@ProcessLibs cost memory 0.13300323486328125 +[2025-07-09T18:53:02.757] [INFO] debug-file - UP-TO-DATE :basic:default@ProcessLibs... +[2025-07-09T18:53:02.758] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:53:02.758] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:53:02.758] [DEBUG] debug-file - Executing task :register:default@BuildNativeWithCmake +[2025-07-09T18:53:02.758] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:53:02.758] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:53:02.758] [DEBUG] debug-file - register : default@BuildNativeWithCmake cost memory 0.0390625 +[2025-07-09T18:53:02.758] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 157 ms +[2025-07-09T18:53:02.758] [INFO] debug-file - Finished :register:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:53:02.759] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:53:02.760] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:53:02.760] [DEBUG] debug-file - Executing task :polyv:default@ProcessLibs +[2025-07-09T18:53:02.761] [DEBUG] debug-file - Incremental task polyv:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:53:02.761] [DEBUG] debug-file - polyv : default@ProcessLibs cost memory 0.12957763671875 +[2025-07-09T18:53:02.762] [INFO] debug-file - UP-TO-DATE :polyv:default@ProcessLibs... +[2025-07-09T18:53:02.763] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:53:02.763] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:53:02.764] [DEBUG] debug-file - Executing task :scene_single_video:default@BuildNativeWithCmake +[2025-07-09T18:53:02.764] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:53:02.764] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:53:02.764] [DEBUG] debug-file - scene_single_video : default@BuildNativeWithCmake cost memory 0.03990936279296875 +[2025-07-09T18:53:02.765] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 163 ms +[2025-07-09T18:53:02.765] [INFO] debug-file - Finished :scene_single_video:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:53:02.767] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:53:02.767] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:53:02.767] [DEBUG] debug-file - Executing task :netease:default@CreateHarBuildProfile +[2025-07-09T18:53:02.768] [DEBUG] debug-file - Task 'netease:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:02.768] [DEBUG] debug-file - Incremental task netease:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:53:02.769] [DEBUG] debug-file - netease : default@CreateHarBuildProfile cost memory 0.18599700927734375 +[2025-07-09T18:53:02.769] [INFO] debug-file - UP-TO-DATE :netease:default@CreateHarBuildProfile... +[2025-07-09T18:53:02.770] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:53:02.770] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:53:02.771] [DEBUG] debug-file - Executing task :corekit:default@ProcessLibs +[2025-07-09T18:53:02.773] [DEBUG] debug-file - Incremental task corekit:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:53:02.773] [DEBUG] debug-file - corekit : default@ProcessLibs cost memory 0.12912750244140625 +[2025-07-09T18:53:02.774] [INFO] debug-file - UP-TO-DATE :corekit:default@ProcessLibs... +[2025-07-09T18:53:02.775] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:53:02.776] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:53:02.776] [DEBUG] debug-file - Executing task :chatkit:default@BuildNativeWithCmake +[2025-07-09T18:53:02.776] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:53:02.776] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:53:02.777] [DEBUG] debug-file - chatkit : default@BuildNativeWithCmake cost memory 0.04816436767578125 +[2025-07-09T18:53:02.777] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 175 ms +[2025-07-09T18:53:02.777] [INFO] debug-file - Finished :chatkit:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:53:02.779] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:53:02.779] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:53:02.780] [DEBUG] debug-file - Executing task :netease:default@MergeProfile +[2025-07-09T18:53:02.791] [DEBUG] debug-file - Incremental task netease:default@MergeProfile pre-execution cost: 3 ms . +[2025-07-09T18:53:02.791] [DEBUG] debug-file - netease : default@MergeProfile cost memory -13.958580017089844 +[2025-07-09T18:53:02.791] [INFO] debug-file - UP-TO-DATE :netease:default@MergeProfile... +[2025-07-09T18:53:02.793] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:53:02.793] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:53:02.793] [DEBUG] debug-file - Executing task :common:default@ProcessLibs +[2025-07-09T18:53:02.795] [DEBUG] debug-file - Incremental task common:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:53:02.795] [DEBUG] debug-file - common : default@ProcessLibs cost memory 0.12890625 +[2025-07-09T18:53:02.795] [INFO] debug-file - UP-TO-DATE :common:default@ProcessLibs... +[2025-07-09T18:53:02.797] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:53:02.797] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:53:02.798] [DEBUG] debug-file - Executing task :basic:default@DoNativeStrip +[2025-07-09T18:53:02.798] [DEBUG] debug-file - Task 'basic:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:02.799] [DEBUG] debug-file - Incremental task basic:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:53:02.799] [DEBUG] debug-file - basic : default@DoNativeStrip cost memory 0.07275390625 +[2025-07-09T18:53:02.799] [INFO] debug-file - UP-TO-DATE :basic:default@DoNativeStrip... +[2025-07-09T18:53:02.800] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:53:02.800] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:53:02.802] [DEBUG] debug-file - Executing task :polyv:default@DoNativeStrip +[2025-07-09T18:53:02.802] [DEBUG] debug-file - Task 'polyv:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:02.802] [DEBUG] debug-file - Incremental task polyv:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:53:02.802] [DEBUG] debug-file - polyv : default@DoNativeStrip cost memory 0.07220458984375 +[2025-07-09T18:53:02.802] [INFO] debug-file - UP-TO-DATE :polyv:default@DoNativeStrip... +[2025-07-09T18:53:02.804] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:53:02.804] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:53:02.804] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-business. +[2025-07-09T18:53:02.805] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-core-ijk. +[2025-07-09T18:53:02.805] [DEBUG] debug-file - Executing task :Home:default@ConfigureCmake +[2025-07-09T18:53:02.805] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:53:02.805] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:53:02.805] [DEBUG] debug-file - Home : default@ConfigureCmake cost memory 0.0460357666015625 +[2025-07-09T18:53:02.806] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 204 ms +[2025-07-09T18:53:02.806] [INFO] debug-file - Finished :Home:default@ConfigureCmake... after 1 ms +[2025-07-09T18:53:02.807] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:02.807] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:02.808] [DEBUG] debug-file - Executing task :default:default@CreateBuildProfile +[2025-07-09T18:53:02.809] [DEBUG] debug-file - Task 'default:default@CreateBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:02.809] [DEBUG] debug-file - Incremental task default:default@CreateBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:53:02.810] [DEBUG] debug-file - default : default@CreateBuildProfile cost memory 0.09844970703125 +[2025-07-09T18:53:02.810] [INFO] debug-file - UP-TO-DATE :default:default@CreateBuildProfile... +[2025-07-09T18:53:02.811] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:53:02.811] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:53:02.812] [DEBUG] debug-file - Executing task :corekit:default@DoNativeStrip +[2025-07-09T18:53:02.813] [DEBUG] debug-file - Task 'corekit:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:02.813] [DEBUG] debug-file - Incremental task corekit:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:53:02.813] [DEBUG] debug-file - corekit : default@DoNativeStrip cost memory 0.072509765625 +[2025-07-09T18:53:02.813] [INFO] debug-file - UP-TO-DATE :corekit:default@DoNativeStrip... +[2025-07-09T18:53:02.814] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:53:02.814] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:53:02.815] [DEBUG] debug-file - Resolve native package @nimsdk/conversation. +[2025-07-09T18:53:02.815] [DEBUG] debug-file - Resolve native package @nimsdk/message. +[2025-07-09T18:53:02.816] [DEBUG] debug-file - Resolve native package @nimsdk/team. +[2025-07-09T18:53:02.816] [DEBUG] debug-file - Resolve native package @nimsdk/user. +[2025-07-09T18:53:02.816] [DEBUG] debug-file - Resolve native package @nimsdk/friend. +[2025-07-09T18:53:02.817] [DEBUG] debug-file - Resolve native package @nimsdk/nim. +[2025-07-09T18:53:02.817] [DEBUG] debug-file - Executing task :chatkit_ui:default@ConfigureCmake +[2025-07-09T18:53:02.817] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:53:02.818] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:53:02.818] [DEBUG] debug-file - chatkit_ui : default@ConfigureCmake cost memory 0.04767608642578125 +[2025-07-09T18:53:02.818] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 216 ms +[2025-07-09T18:53:02.818] [INFO] debug-file - Finished :chatkit_ui:default@ConfigureCmake... after 1 ms +[2025-07-09T18:53:02.819] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:53:02.819] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:53:02.820] [DEBUG] debug-file - Resolve native package @nimsdk/conversation. +[2025-07-09T18:53:02.821] [DEBUG] debug-file - Resolve native package @nimsdk/message. +[2025-07-09T18:53:02.821] [DEBUG] debug-file - Resolve native package @nimsdk/team. +[2025-07-09T18:53:02.822] [DEBUG] debug-file - Resolve native package @nimsdk/user. +[2025-07-09T18:53:02.822] [DEBUG] debug-file - Resolve native package @nimsdk/friend. +[2025-07-09T18:53:02.822] [DEBUG] debug-file - Resolve native package @nimsdk/nim. +[2025-07-09T18:53:02.823] [DEBUG] debug-file - Executing task :conversationkit_ui:default@ConfigureCmake +[2025-07-09T18:53:02.823] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:53:02.823] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:53:02.823] [DEBUG] debug-file - conversationkit_ui : default@ConfigureCmake cost memory 0.0404815673828125 +[2025-07-09T18:53:02.823] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 222 ms +[2025-07-09T18:53:02.823] [INFO] debug-file - Finished :conversationkit_ui:default@ConfigureCmake... after 1 ms +[2025-07-09T18:53:02.824] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:53:02.825] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:53:02.825] [DEBUG] debug-file - Resolve native package @nimsdk/conversation. +[2025-07-09T18:53:02.825] [DEBUG] debug-file - Resolve native package @nimsdk/message. +[2025-07-09T18:53:02.826] [DEBUG] debug-file - Resolve native package @nimsdk/team. +[2025-07-09T18:53:02.826] [DEBUG] debug-file - Resolve native package @nimsdk/user. +[2025-07-09T18:53:02.826] [DEBUG] debug-file - Resolve native package @nimsdk/friend. +[2025-07-09T18:53:02.827] [DEBUG] debug-file - Resolve native package @nimsdk/nim. +[2025-07-09T18:53:02.827] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@ConfigureCmake +[2025-07-09T18:53:02.827] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:53:02.827] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:53:02.827] [DEBUG] debug-file - localconversationkit_ui : default@ConfigureCmake cost memory 0.04051971435546875 +[2025-07-09T18:53:02.827] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 226 ms +[2025-07-09T18:53:02.827] [INFO] debug-file - Finished :localconversationkit_ui:default@ConfigureCmake... after 1 ms +[2025-07-09T18:53:02.829] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:02.829] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:02.829] [DEBUG] debug-file - Executing task :default:default@MergeProfile +[2025-07-09T18:53:02.844] [DEBUG] debug-file - Incremental task default:default@MergeProfile pre-execution cost: 6 ms . +[2025-07-09T18:53:02.844] [DEBUG] debug-file - default : default@MergeProfile cost memory 1.3024978637695312 +[2025-07-09T18:53:02.845] [INFO] debug-file - UP-TO-DATE :default:default@MergeProfile... +[2025-07-09T18:53:02.846] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:53:02.846] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:53:02.847] [DEBUG] debug-file - Executing task :common:default@DoNativeStrip +[2025-07-09T18:53:02.848] [DEBUG] debug-file - Task 'common:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:02.848] [DEBUG] debug-file - Incremental task common:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:53:02.848] [DEBUG] debug-file - common : default@DoNativeStrip cost memory 0.071380615234375 +[2025-07-09T18:53:02.848] [INFO] debug-file - UP-TO-DATE :common:default@DoNativeStrip... +[2025-07-09T18:53:02.849] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:53:02.849] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:53:02.850] [DEBUG] debug-file - Executing task :mypage:default@BuildNativeWithNinja +[2025-07-09T18:53:02.850] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:53:02.850] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:53:02.850] [DEBUG] debug-file - mypage : default@BuildNativeWithNinja cost memory 0.059539794921875 +[2025-07-09T18:53:02.850] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 249 ms +[2025-07-09T18:53:02.851] [INFO] debug-file - Finished :mypage:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:53:02.852] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:53:02.852] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:53:02.852] [DEBUG] debug-file - Executing task :register:default@BuildNativeWithNinja +[2025-07-09T18:53:02.852] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:53:02.852] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:53:02.853] [DEBUG] debug-file - register : default@BuildNativeWithNinja cost memory 0.0595855712890625 +[2025-07-09T18:53:02.853] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 251 ms +[2025-07-09T18:53:02.853] [INFO] debug-file - Finished :register:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:53:02.854] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:53:02.854] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:53:02.854] [DEBUG] debug-file - Executing task :scene_single_video:default@BuildNativeWithNinja +[2025-07-09T18:53:02.854] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:53:02.854] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:53:02.855] [DEBUG] debug-file - scene_single_video : default@BuildNativeWithNinja cost memory 0.05987548828125 +[2025-07-09T18:53:02.855] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 254 ms +[2025-07-09T18:53:02.855] [INFO] debug-file - Finished :scene_single_video:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:53:02.857] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:53:02.857] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:53:02.857] [DEBUG] debug-file - Executing task :Home:default@BuildNativeWithCmake +[2025-07-09T18:53:02.858] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:53:02.858] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:53:02.858] [DEBUG] debug-file - Home : default@BuildNativeWithCmake cost memory 0.04709625244140625 +[2025-07-09T18:53:02.858] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 256 ms +[2025-07-09T18:53:02.858] [INFO] debug-file - Finished :Home:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:53:02.860] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:53:02.860] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:53:02.860] [DEBUG] debug-file - Executing task :chatkit:default@BuildNativeWithNinja +[2025-07-09T18:53:02.860] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:53:02.860] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:53:02.861] [DEBUG] debug-file - chatkit : default@BuildNativeWithNinja cost memory 0.06783294677734375 +[2025-07-09T18:53:02.861] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 259 ms +[2025-07-09T18:53:02.861] [INFO] debug-file - Finished :chatkit:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:53:02.863] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:53:02.863] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:53:02.864] [DEBUG] debug-file - Executing task :chatkit_ui:default@BuildNativeWithCmake +[2025-07-09T18:53:02.864] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:53:02.864] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:53:02.864] [DEBUG] debug-file - chatkit_ui : default@BuildNativeWithCmake cost memory 0.047698974609375 +[2025-07-09T18:53:02.864] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 263 ms +[2025-07-09T18:53:02.864] [INFO] debug-file - Finished :chatkit_ui:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:53:02.865] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:53:02.866] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:53:02.866] [DEBUG] debug-file - Executing task :conversationkit_ui:default@BuildNativeWithCmake +[2025-07-09T18:53:02.866] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:53:02.866] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:53:02.866] [DEBUG] debug-file - conversationkit_ui : default@BuildNativeWithCmake cost memory 0.04047393798828125 +[2025-07-09T18:53:02.866] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 265 ms +[2025-07-09T18:53:02.866] [INFO] debug-file - Finished :conversationkit_ui:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:53:02.868] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:53:02.868] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:53:02.868] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@BuildNativeWithCmake +[2025-07-09T18:53:02.869] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:53:02.869] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:53:02.869] [DEBUG] debug-file - localconversationkit_ui : default@BuildNativeWithCmake cost memory 0.04055023193359375 +[2025-07-09T18:53:02.869] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 267 ms +[2025-07-09T18:53:02.869] [INFO] debug-file - Finished :localconversationkit_ui:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:53:02.870] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:02.871] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:02.871] [DEBUG] debug-file - Executing task :default:default@MakePackInfo +[2025-07-09T18:53:02.873] [DEBUG] debug-file - Incremental task default:default@MakePackInfo pre-execution cost: 2 ms . +[2025-07-09T18:53:02.873] [DEBUG] debug-file - default : default@MakePackInfo cost memory 0.158111572265625 +[2025-07-09T18:53:02.873] [INFO] debug-file - UP-TO-DATE :default:default@MakePackInfo... +[2025-07-09T18:53:02.875] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:02.875] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:02.876] [DEBUG] debug-file - Executing task :default:default@ProcessProfile +[2025-07-09T18:53:02.877] [DEBUG] debug-file - Incremental task default:default@ProcessProfile pre-execution cost: 1 ms . +[2025-07-09T18:53:02.877] [DEBUG] debug-file - default : default@ProcessProfile cost memory 0.1806640625 +[2025-07-09T18:53:02.877] [INFO] debug-file - UP-TO-DATE :default:default@ProcessProfile... +[2025-07-09T18:53:02.878] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:53:02.878] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:53:02.879] [DEBUG] debug-file - Executing task :mypage:default@ProcessLibs +[2025-07-09T18:53:02.880] [DEBUG] debug-file - Incremental task mypage:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:53:02.880] [DEBUG] debug-file - mypage : default@ProcessLibs cost memory 0.1334381103515625 +[2025-07-09T18:53:02.880] [INFO] debug-file - UP-TO-DATE :mypage:default@ProcessLibs... +[2025-07-09T18:53:02.881] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:53:02.881] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:53:02.882] [DEBUG] debug-file - Executing task :register:default@ProcessLibs +[2025-07-09T18:53:02.883] [DEBUG] debug-file - Incremental task register:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:53:02.883] [DEBUG] debug-file - register : default@ProcessLibs cost memory 0.133331298828125 +[2025-07-09T18:53:02.883] [INFO] debug-file - UP-TO-DATE :register:default@ProcessLibs... +[2025-07-09T18:53:02.884] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:53:02.884] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:53:02.885] [DEBUG] debug-file - Executing task :scene_single_video:default@ProcessLibs +[2025-07-09T18:53:02.886] [DEBUG] debug-file - Incremental task scene_single_video:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:53:02.886] [DEBUG] debug-file - scene_single_video : default@ProcessLibs cost memory 0.13132476806640625 +[2025-07-09T18:53:02.886] [INFO] debug-file - UP-TO-DATE :scene_single_video:default@ProcessLibs... +[2025-07-09T18:53:02.887] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:53:02.887] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:53:02.888] [DEBUG] debug-file - Executing task :chatkit:default@ProcessLibs +[2025-07-09T18:53:02.889] [DEBUG] debug-file - Incremental task chatkit:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:53:02.889] [DEBUG] debug-file - chatkit : default@ProcessLibs cost memory 0.12860870361328125 +[2025-07-09T18:53:02.890] [INFO] debug-file - UP-TO-DATE :chatkit:default@ProcessLibs... +[2025-07-09T18:53:02.891] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:53:02.891] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:53:02.891] [DEBUG] debug-file - Resolve native package @nimsdk/conversation. +[2025-07-09T18:53:02.891] [DEBUG] debug-file - Resolve native package @nimsdk/message. +[2025-07-09T18:53:02.892] [DEBUG] debug-file - Resolve native package @nimsdk/team. +[2025-07-09T18:53:02.892] [DEBUG] debug-file - Resolve native package @nimsdk/user. +[2025-07-09T18:53:02.892] [DEBUG] debug-file - Resolve native package @nimsdk/friend. +[2025-07-09T18:53:02.893] [DEBUG] debug-file - Resolve native package @nimsdk/nim. +[2025-07-09T18:53:02.893] [DEBUG] debug-file - Executing task :netease:default@ConfigureCmake +[2025-07-09T18:53:02.893] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:53:02.893] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:53:02.893] [DEBUG] debug-file - netease : default@ConfigureCmake cost memory 0.04850006103515625 +[2025-07-09T18:53:02.893] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 292 ms +[2025-07-09T18:53:02.894] [INFO] debug-file - Finished :netease:default@ConfigureCmake... after 1 ms +[2025-07-09T18:53:02.895] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:02.895] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:02.896] [DEBUG] debug-file - restool module names: default,mypage,basic,Home,register,polyv,scene_single_video,corekit,chatkit,chatkit_ui,netease,conversationkit_ui,common,localconversationkit_ui; moduleName=default, taskName=default@ProcessResource +[2025-07-09T18:53:02.906] [DEBUG] debug-file - Executing task :default:default@ProcessResource +[2025-07-09T18:53:02.907] [DEBUG] debug-file - Incremental task default:default@ProcessResource pre-execution cost: 1 ms . +[2025-07-09T18:53:02.907] [DEBUG] debug-file - default : default@ProcessResource cost memory 0.20517730712890625 +[2025-07-09T18:53:02.909] [INFO] debug-file - UP-TO-DATE :default:default@ProcessResource... +[2025-07-09T18:53:02.910] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:53:02.910] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:53:02.911] [DEBUG] debug-file - Executing task :mypage:default@DoNativeStrip +[2025-07-09T18:53:02.911] [DEBUG] debug-file - Task 'mypage:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:02.912] [DEBUG] debug-file - Incremental task mypage:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:53:02.913] [DEBUG] debug-file - mypage : default@DoNativeStrip cost memory -13.902381896972656 +[2025-07-09T18:53:02.914] [INFO] debug-file - UP-TO-DATE :mypage:default@DoNativeStrip... +[2025-07-09T18:53:02.915] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:53:02.915] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:53:02.916] [DEBUG] debug-file - Executing task :register:default@DoNativeStrip +[2025-07-09T18:53:02.917] [DEBUG] debug-file - Task 'register:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:02.917] [DEBUG] debug-file - Incremental task register:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:53:02.917] [DEBUG] debug-file - register : default@DoNativeStrip cost memory 0.073760986328125 +[2025-07-09T18:53:02.917] [INFO] debug-file - UP-TO-DATE :register:default@DoNativeStrip... +[2025-07-09T18:53:02.918] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:53:02.919] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:53:02.920] [DEBUG] debug-file - Executing task :scene_single_video:default@DoNativeStrip +[2025-07-09T18:53:02.920] [DEBUG] debug-file - Task 'scene_single_video:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:02.921] [DEBUG] debug-file - Incremental task scene_single_video:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:53:02.921] [DEBUG] debug-file - scene_single_video : default@DoNativeStrip cost memory 0.07318115234375 +[2025-07-09T18:53:02.921] [INFO] debug-file - UP-TO-DATE :scene_single_video:default@DoNativeStrip... +[2025-07-09T18:53:02.922] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:53:02.922] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:53:02.923] [DEBUG] debug-file - Executing task :chatkit:default@DoNativeStrip +[2025-07-09T18:53:02.924] [DEBUG] debug-file - Task 'chatkit:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:02.924] [DEBUG] debug-file - Incremental task chatkit:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:53:02.924] [DEBUG] debug-file - chatkit : default@DoNativeStrip cost memory 0.079864501953125 +[2025-07-09T18:53:02.924] [INFO] debug-file - UP-TO-DATE :chatkit:default@DoNativeStrip... +[2025-07-09T18:53:02.925] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:53:02.926] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:53:02.926] [DEBUG] debug-file - Executing task :netease:default@BuildNativeWithCmake +[2025-07-09T18:53:02.926] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:53:02.926] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:53:02.926] [DEBUG] debug-file - netease : default@BuildNativeWithCmake cost memory 0.29421234130859375 +[2025-07-09T18:53:02.926] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 325 ms +[2025-07-09T18:53:02.926] [INFO] debug-file - Finished :netease:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:53:02.928] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:02.928] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:02.928] [DEBUG] debug-file - restool module names: default,mypage,basic,Home,register,polyv,scene_single_video,corekit,chatkit,chatkit_ui,netease,conversationkit_ui,common,localconversationkit_ui; moduleName=default, taskName=default@CompileResource +[2025-07-09T18:53:02.938] [DEBUG] debug-file - Executing task :default:default@CompileResource +[2025-07-09T18:53:03.007] [DEBUG] debug-file - Incremental task default:default@CompileResource pre-execution cost: 69 ms . +[2025-07-09T18:53:03.008] [DEBUG] debug-file - default : default@CompileResource cost memory 10.937828063964844 +[2025-07-09T18:53:03.009] [INFO] debug-file - UP-TO-DATE :default:default@CompileResource... +[2025-07-09T18:53:03.010] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:53:03.010] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:53:03.010] [DEBUG] debug-file - Executing task :Home:default@BuildNativeWithNinja +[2025-07-09T18:53:03.010] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:53:03.010] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:53:03.011] [DEBUG] debug-file - Home : default@BuildNativeWithNinja cost memory 0.06744384765625 +[2025-07-09T18:53:03.011] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 409 ms +[2025-07-09T18:53:03.011] [INFO] debug-file - Finished :Home:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:53:03.012] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:53:03.012] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:53:03.013] [DEBUG] debug-file - Executing task :chatkit_ui:default@BuildNativeWithNinja +[2025-07-09T18:53:03.013] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:53:03.013] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:53:03.014] [DEBUG] debug-file - chatkit_ui : default@BuildNativeWithNinja cost memory -14.493064880371094 +[2025-07-09T18:53:03.014] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 413 ms +[2025-07-09T18:53:03.015] [INFO] debug-file - Finished :chatkit_ui:default@BuildNativeWithNinja... after 2 ms +[2025-07-09T18:53:03.016] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:53:03.016] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:53:03.016] [DEBUG] debug-file - Executing task :conversationkit_ui:default@BuildNativeWithNinja +[2025-07-09T18:53:03.016] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:53:03.016] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:53:03.017] [DEBUG] debug-file - conversationkit_ui : default@BuildNativeWithNinja cost memory 0.06043243408203125 +[2025-07-09T18:53:03.017] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 416 ms +[2025-07-09T18:53:03.017] [INFO] debug-file - Finished :conversationkit_ui:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:53:03.018] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:53:03.018] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:53:03.019] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@BuildNativeWithNinja +[2025-07-09T18:53:03.019] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:53:03.019] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:53:03.019] [DEBUG] debug-file - localconversationkit_ui : default@BuildNativeWithNinja cost memory 0.06061553955078125 +[2025-07-09T18:53:03.019] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 418 ms +[2025-07-09T18:53:03.020] [INFO] debug-file - Finished :localconversationkit_ui:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:53:03.021] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:03.021] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:03.021] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-core-ijk. +[2025-07-09T18:53:03.022] [DEBUG] debug-file - Resolve native package @nimsdk/conversation. +[2025-07-09T18:53:03.022] [DEBUG] debug-file - Resolve native package @nimsdk/localconversation. +[2025-07-09T18:53:03.022] [DEBUG] debug-file - Resolve native package @nimsdk/message. +[2025-07-09T18:53:03.023] [DEBUG] debug-file - Resolve native package @nimsdk/team. +[2025-07-09T18:53:03.023] [DEBUG] debug-file - Resolve native package @nimsdk/user. +[2025-07-09T18:53:03.023] [DEBUG] debug-file - Resolve native package @nimsdk/friend. +[2025-07-09T18:53:03.024] [DEBUG] debug-file - Resolve native package @nimsdk/nim. +[2025-07-09T18:53:03.024] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-business. +[2025-07-09T18:53:03.025] [DEBUG] debug-file - Executing task :default:default@ConfigureCmake +[2025-07-09T18:53:03.025] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:03.025] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:03.025] [DEBUG] debug-file - default : default@ConfigureCmake cost memory 0.0688323974609375 +[2025-07-09T18:53:03.025] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 424 ms +[2025-07-09T18:53:03.025] [INFO] debug-file - Finished :default:default@ConfigureCmake... after 1 ms +[2025-07-09T18:53:03.027] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:03.027] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:03.031] [DEBUG] debug-file - Executing task :default:default@CompileArkTS +[2025-07-09T18:53:03.041] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:03.042] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:03.042] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.042] [DEBUG] debug-file - Collect obfuscation config from library basic. +[2025-07-09T18:53:03.042] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:53:03.042] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:53:03.043] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.043] [DEBUG] debug-file - Collect obfuscation config from library mypage. +[2025-07-09T18:53:03.043] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:53:03.043] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:53:03.044] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.044] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.044] [DEBUG] debug-file - Collect obfuscation config from library Home. +[2025-07-09T18:53:03.044] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:53:03.044] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:53:03.045] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.046] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.046] [DEBUG] debug-file - Collect obfuscation config from library scene_single_video. +[2025-07-09T18:53:03.046] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:53:03.046] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:53:03.046] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.046] [DEBUG] debug-file - Collect obfuscation config from library polyv. +[2025-07-09T18:53:03.047] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:53:03.047] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:53:03.048] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.048] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.048] [DEBUG] debug-file - Collect obfuscation config from library register. +[2025-07-09T18:53:03.049] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:53:03.049] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:53:03.049] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.049] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.050] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.051] [DEBUG] debug-file - Collect obfuscation config from dependency @polyvharmony/httpdns-api. +[2025-07-09T18:53:03.051] [DEBUG] debug-file - Collect obfuscation config from dependency @polyvharmony/httpdns-impl-local. +[2025-07-09T18:53:03.052] [DEBUG] debug-file - Collect obfuscation config from dependency @polyvharmony/httpdns-impl-ali. +[2025-07-09T18:53:03.052] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/conversation. +[2025-07-09T18:53:03.052] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/localconversation. +[2025-07-09T18:53:03.053] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/message. +[2025-07-09T18:53:03.053] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/team. +[2025-07-09T18:53:03.053] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/user. +[2025-07-09T18:53:03.054] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/friend. +[2025-07-09T18:53:03.054] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/nim. +[2025-07-09T18:53:03.054] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/base. +[2025-07-09T18:53:03.054] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.054] [DEBUG] debug-file - Collect obfuscation config from library corekit. +[2025-07-09T18:53:03.055] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:53:03.055] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:53:03.055] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.055] [DEBUG] debug-file - Collect obfuscation config from library chatkit. +[2025-07-09T18:53:03.056] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:53:03.056] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:53:03.058] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.059] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.059] [DEBUG] debug-file - Collect obfuscation config from library netease. +[2025-07-09T18:53:03.059] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:53:03.059] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:53:03.060] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.060] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.060] [DEBUG] debug-file - Collect obfuscation config from library conversationkit_ui. +[2025-07-09T18:53:03.060] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:53:03.060] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:53:03.061] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.061] [DEBUG] debug-file - Collect obfuscation config from library common. +[2025-07-09T18:53:03.061] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:53:03.061] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:53:03.062] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.062] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.062] [DEBUG] debug-file - Collect obfuscation config from library chatkit_ui. +[2025-07-09T18:53:03.063] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:53:03.063] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:53:03.063] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.063] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.064] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.065] [DEBUG] debug-file - Collect obfuscation config from dependency @nimkit/markdown. +[2025-07-09T18:53:03.065] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.065] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.066] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.066] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.066] [DEBUG] debug-file - Collect obfuscation config from library localconversationkit_ui. +[2025-07-09T18:53:03.066] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:53:03.066] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:53:03.067] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.067] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:53:03.096] [DEBUG] debug-file - default:default@CompileArkTS is not up-to-date, since the input file 'D:\202076work\hongmeng\newExpert\harmony\features\Home\src\main\ets' has been changed. +[2025-07-09T18:53:03.096] [DEBUG] debug-file - Incremental task default:default@CompileArkTS pre-execution cost: 20 ms . +[2025-07-09T18:53:03.123] [DEBUG] debug-file - build config: +[2025-07-09T18:53:03.123] [DEBUG] debug-file - { moduleType: 'entry', perf: 0, targetName: '.default', packageManagerType: 'ohpm', - localPropertiesPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/local.properties', + localPropertiesPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\local.properties', isPreview: false, isOhosTest: false, isLocalTest: false, - buildMode: 'Debug', + buildMode: 'Release', watchMode: 'false', - aceProfilePath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/resources/base/profile', - etsLoaderPath: '/Applications/DevEco-Studio.app/Contents/sdk/default/openharmony/ets/build-tools/ets-loader', - modulePath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert', + aceProfilePath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\res\\default\\resources\\base\\profile', + etsLoaderPath: 'D:\\Program Files\\Huawei\\DevEco Studioss\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader', + modulePath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', testFrameworkPar: { testMode: undefined, coveragePathFilter: undefined, @@ -1341,28 +5593,30 @@ }, needCoverageInsert: false, debugLine: false, - projectTopDir: '/Users/gandanxiangzhao/Downloads/Expert/harmony', - compileSdkVersion: 16, + projectTopDir: 'D:\\202076work\\hongmeng\\newExpert\\harmony', + compileSdkVersion: 17, compatibleSdkVersion: 14, compatibleSdkVersionStage: undefined, - bundleName: 'c***t', - etsLoaderVersion: '5.0.4.150', + bundleName: 'c***s', + etsLoaderVersion: '5.0.5.165', etsLoaderReleaseType: 'Release', aotCompileMode: 'type', - apPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/modules.ap', + apPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\modules.ap', entryModuleName: 'default', entryModuleVersion: '1.0.0', entryPackageName: 'expert', - allModuleNameHash: '299b4f2029b14cc8eb2c614a2786d917', - externalApiPaths: [ '/Applications/DevEco-Studio.app/Contents/sdk/default/hms/ets' ], + allModuleNameHash: '45f520d1ffaad6d8698c233baf217609', + externalApiPaths: [ + 'D:\\Program Files\\Huawei\\DevEco Studioss\\sdk\\default\\hms\\ets' + ], compilerTypes: undefined, isCrossplatform: false, hvigorPluginFile: undefined, compilePluginPath: undefined, - buildGeneratedProfilePath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/generated/profile/default', + buildGeneratedProfilePath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\generated\\profile\\default', bundleType: 'app', arkTSVersion: undefined, - apiVersion: 16, + apiVersion: 17, needCompleteSourcesMap: false, isFaMode: false, strictMode: { @@ -1370,7 +5624,7 @@ useNormalizedOHMUrl: true, noExternalImportByPath: true }, - buildDir: '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build', + buildDir: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build', deviceTypes: [ 'phone', 'tablet', '2in1' ], useNormalizedOHMUrl: true, pkgContextInfo: { @@ -1383,15 +5637,6 @@ isSO: false, dependencyAlias: '' }, - utils: { - packageName: 'utils', - bundleName: '*****', - moduleName: '', - version: '1.0.0', - entryPath: 'Index.ets', - isSO: false, - dependencyAlias: '' - }, mypage: { packageName: 'mypage', bundleName: '*****', @@ -1419,6 +5664,285 @@ isSO: false, dependencyAlias: '' }, + scene_single_video: { + packageName: 'scene_single_video', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + 'media-player-common': { + packageName: 'media-player-common', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/media-player-sdk': { + packageName: '@polyvharmony/media-player-sdk', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/media-player-core-ijk': { + packageName: '@polyvharmony/media-player-core-ijk', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/media-player-sdk-addon-cache-down': { + packageName: '@polyvharmony/media-player-sdk-addon-cache-down', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/httpdns-api': { + packageName: '@polyvharmony/httpdns-api', + bundleName: '*****', + moduleName: '', + version: '1.0.2', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/httpdns-impl-local': { + packageName: '@polyvharmony/httpdns-impl-local', + bundleName: '*****', + moduleName: '', + version: '1.0.2', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/httpdns-impl-ali': { + packageName: '@polyvharmony/httpdns-impl-ali', + bundleName: '*****', + moduleName: '', + version: '1.0.2', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/conversation': { + packageName: '@nimsdk/conversation', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/localconversation': { + packageName: '@nimsdk/localconversation', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/message': { + packageName: '@nimsdk/message', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/team': { + packageName: '@nimsdk/team', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/user': { + packageName: '@nimsdk/user', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/friend': { + packageName: '@nimsdk/friend', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/nim': { + packageName: '@nimsdk/nim', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/base': { + packageName: '@nimsdk/base', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/corekit': { + packageName: '@nimkit/corekit', + bundleName: '*****', + moduleName: '', + version: '1.1.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/chatkit': { + packageName: '@nimkit/chatkit', + bundleName: '*****', + moduleName: '', + version: '10.1.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + netease: { + packageName: 'netease', + bundleName: '*****', + moduleName: '', + version: '1.0.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/media-player-business': { + packageName: '@polyvharmony/media-player-business', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/media-player-core-api': { + packageName: '@polyvharmony/media-player-core-api', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/media-player-foundation': { + packageName: '@polyvharmony/media-player-foundation', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@aliyun/httpdns': { + packageName: '@aliyun/httpdns', + bundleName: '*****', + moduleName: '', + version: '1.1.1', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/vendor': { + packageName: '@nimsdk/vendor', + bundleName: '*****', + moduleName: '', + version: '1.0.0', + entryPath: 'Index.js', + isSO: false, + dependencyAlias: '' + }, + 'class-transformer': { + packageName: 'class-transformer', + bundleName: '*****', + moduleName: '', + version: '0.5.1', + entryPath: 'esm5/index.js', + isSO: false, + dependencyAlias: '' + }, + 'reflect-metadata': { + packageName: 'reflect-metadata', + bundleName: '*****', + moduleName: '', + version: '0.2.1', + entryPath: 'Reflect.js', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/conversationkit_ui': { + packageName: '@nimkit/conversationkit_ui', + bundleName: '*****', + moduleName: '', + version: '10.1.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/chatkit_ui': { + packageName: '@nimkit/chatkit_ui', + bundleName: '*****', + moduleName: '', + version: '10.1.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/common': { + packageName: '@nimkit/common', + bundleName: '*****', + moduleName: '', + version: '1.1.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/localconversationkit_ui': { + packageName: '@nimkit/localconversationkit_ui', + bundleName: '*****', + moduleName: '', + version: '10.1.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@ohos/httpclient': { + packageName: '@ohos/httpclient', + bundleName: '*****', + moduleName: '', + version: '2.0.2', + entryPath: 'index.ts', + isSO: false, + dependencyAlias: '' + }, '@ohos/crypto-js': { packageName: '@ohos/crypto-js', bundleName: '*****', @@ -1428,6 +5952,69 @@ isSO: false, dependencyAlias: '' }, + '@aliyun/logger': { + packageName: '@aliyun/logger', + bundleName: '*****', + moduleName: '', + version: '1.0.2', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@aliyun/error': { + packageName: '@aliyun/error', + bundleName: '*****', + moduleName: '', + version: '1.0.2', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/markdown': { + packageName: '@nimkit/markdown', + bundleName: '*****', + moduleName: '', + version: '1.1.0', + entryPath: 'Index.js', + isSO: false, + dependencyAlias: '' + }, + '@ohos/pinyin4js': { + packageName: '@ohos/pinyin4js', + bundleName: '*****', + moduleName: '', + version: '2.0.1', + entryPath: 'index.ets', + isSO: false, + dependencyAlias: '' + }, + pako: { + packageName: 'pako', + bundleName: '*****', + moduleName: '', + version: '2.1.0', + entryPath: 'dist/pako.esm.mjs', + isSO: false, + dependencyAlias: '' + }, + 'base64-js': { + packageName: 'base64-js', + bundleName: '*****', + moduleName: '', + version: '1.5.1', + entryPath: 'index.js', + isSO: false, + dependencyAlias: '' + }, + '@ohos/dataorm': { + packageName: '@ohos/dataorm', + bundleName: '*****', + moduleName: '', + version: '2.2.6', + entryPath: 'index.ts', + isSO: false, + dependencyAlias: '' + }, '@ohos/hypium': { packageName: '@ohos/hypium', bundleName: '*****', @@ -1454,6 +6041,78 @@ entryPath: 'src/main/', isSO: false, dependencyAlias: '' + }, + 'libplvsdl.so': { + packageName: 'libplvsdl.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libplvplayer_xcomponent.so': { + packageName: 'libplvplayer_xcomponent.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libplvplayer_napi.so': { + packageName: 'libplvplayer_napi.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libplvplayer.so': { + packageName: 'libplvplayer.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libplvffmpeg.so': { + packageName: 'libplvffmpeg.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libLebConnection.so': { + packageName: 'libLebConnection.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libc++_shared.so': { + packageName: 'libc++_shared.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libplvnative.so': { + packageName: 'libplvnative.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' } }, ohPackagePathMap: {}, @@ -1463,7 +6122,7 @@ definePermissions: undefined }, integratedHsp: false, - projectArkOption: undefined, + projectArkOption: { obfuscation: { ruleOptions: [Object], consumerRules: [] } }, sourceMapDir: undefined, branchElimination: false, transformLib: undefined, @@ -1472,543 +6131,20415 @@ resolveConflictMode: true, depName2RootPath: {}, depName2DepInfo: {}, - rootPathSet: [ '/Users/gandanxiangzhao/Downloads/Expert/harmony' ], + rootPathSet: [ 'D:\\202076work\\hongmeng\\newExpert\\harmony' ], useNativeResolver: true, shouldEmitJs: true, autoLazyImport: undefined, allowEmptyBundleName: false, singleFileEmit: false, - aceModuleJsonPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/ark_module.json', - appResource: '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/ResourceTable.txt', - rawFileResource: '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/resources/rawfile', - resourceTableHash: '2e7166b9b4207900250e35dbe2468f5b', + arkCompileCachePath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\cache\\default\\default@CompileArkTS\\esmodule', + reExportCheckMode: 'noCheck', + aceModuleJsonPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\res\\default\\ark_module.json', + appResource: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\res\\default\\ResourceTable.txt', + rawFileResource: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\res\\default\\resources\\rawfile', + resourceTableHash: 'fa307d675b5bf0bf887914133e63ea09', runtimeOS: 'HarmonyOS', - sdkInfo: 'false:16:5.0.4.150:Release', - aceModuleRoot: '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/src/main/ets', + sdkInfo: 'false:17:5.0.5.165:Release', + aceModuleRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\src\\main\\ets', compileMode: 'esmodule', - aceSuperVisualPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/src/main/supervisual', - aceBuildJson: '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader/default/loader.json', - cachePath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/cache/default/default@CompileArkTS/esmodule/debug', - aceModuleBuild: '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader_out/default/ets', + aceSuperVisualPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\src\\main\\supervisual', + aceBuildJson: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\loader\\default\\loader.json', + cachePath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\cache\\default\\default@CompileArkTS\\esmodule\\release', + aceModuleBuild: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\loader_out\\default\\ets', supportChunks: true, declaredFilesPath: undefined, pkgNameToPkgBriefInfo: { '@ohos/crypto-js': { - pkgRoot: '/Users/gandanxiangzhao/Downloads/Expert/harmony/oh_modules/.ohpm/@ohos+crypto-js@2.0.4/oh_modules/@ohos/crypto-js', + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@ohos+crypto-js@2.0.4\\oh_modules\\@ohos\\crypto-js', pkgName: '@ohos/crypto-js', sourceRoots: [Array] }, + '@ohos/dataorm': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@ohos+dataorm@2.2.6\\oh_modules\\@ohos\\dataorm', + pkgName: '@ohos/dataorm', + sourceRoots: [Array] + }, '@itcast/basic': { - pkgRoot: '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/basic', + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic', pkgName: '@itcast/basic', sourceRoots: [Array], originalSourceRoots: undefined }, - utils: { - pkgRoot: '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/utils', - pkgName: 'utils', - sourceRoots: [Array], - originalSourceRoots: undefined - }, mypage: { - pkgRoot: '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/mypage', + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage', pkgName: 'mypage', sourceRoots: [Array], originalSourceRoots: undefined }, home: { - pkgRoot: '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/Home', + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home', pkgName: 'home', sourceRoots: [Array], originalSourceRoots: undefined }, register: { - pkgRoot: '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/register', + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register', pkgName: 'register', sourceRoots: [Array], originalSourceRoots: undefined }, + scene_single_video: { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\scene_single_video', + pkgName: 'scene_single_video', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + 'media-player-common': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\polyv', + pkgName: 'media-player-common', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@polyvharmony/media-player-sdk': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+media-player-sdk@2.5.0\\oh_modules\\@polyvharmony\\media-player-sdk', + pkgName: '@polyvharmony/media-player-sdk', + sourceRoots: [Array] + }, + '@polyvharmony/media-player-core-ijk': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+media-player-core-ijk@2.5.0\\oh_modules\\@polyvharmony\\media-player-core-ijk', + pkgName: '@polyvharmony/media-player-core-ijk', + sourceRoots: [Array] + }, + '@polyvharmony/media-player-sdk-addon-cache-down': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\\oh_modules\\@polyvharmony\\media-player-sdk-addon-cache-down', + pkgName: '@polyvharmony/media-player-sdk-addon-cache-down', + sourceRoots: [Array] + }, + '@polyvharmony/httpdns-api': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+httpdns-api@1.0.2\\oh_modules\\@polyvharmony\\httpdns-api', + pkgName: '@polyvharmony/httpdns-api', + sourceRoots: [Array] + }, + '@polyvharmony/httpdns-impl-local': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+httpdns-impl-local@1.0.2\\oh_modules\\@polyvharmony\\httpdns-impl-local', + pkgName: '@polyvharmony/httpdns-impl-local', + sourceRoots: [Array] + }, + '@polyvharmony/httpdns-impl-ali': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+httpdns-impl-ali@1.0.2\\oh_modules\\@polyvharmony\\httpdns-impl-ali', + pkgName: '@polyvharmony/httpdns-impl-ali', + sourceRoots: [Array] + }, + '@nimsdk/conversation': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+conversation@10.9.10\\oh_modules\\@nimsdk\\conversation', + pkgName: '@nimsdk/conversation', + sourceRoots: [Array] + }, + '@nimsdk/localconversation': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+localconversation@10.9.10\\oh_modules\\@nimsdk\\localconversation', + pkgName: '@nimsdk/localconversation', + sourceRoots: [Array] + }, + '@nimsdk/message': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+message@10.9.10\\oh_modules\\@nimsdk\\message', + pkgName: '@nimsdk/message', + sourceRoots: [Array] + }, + '@nimsdk/team': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+team@10.9.10\\oh_modules\\@nimsdk\\team', + pkgName: '@nimsdk/team', + sourceRoots: [Array] + }, + '@nimsdk/user': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+user@10.9.10\\oh_modules\\@nimsdk\\user', + pkgName: '@nimsdk/user', + sourceRoots: [Array] + }, + '@nimsdk/friend': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+friend@10.9.10\\oh_modules\\@nimsdk\\friend', + pkgName: '@nimsdk/friend', + sourceRoots: [Array] + }, + '@nimsdk/nim': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+nim@10.9.10\\oh_modules\\@nimsdk\\nim', + pkgName: '@nimsdk/nim', + sourceRoots: [Array] + }, + '@nimsdk/base': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\\oh_modules\\@nimsdk\\base', + pkgName: '@nimsdk/base', + sourceRoots: [Array] + }, + '@nimkit/corekit': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit', + pkgName: '@nimkit/corekit', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@nimkit/chatkit': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit', + pkgName: '@nimkit/chatkit', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + netease: { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease', + pkgName: 'netease', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@polyvharmony/media-player-business': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+media-player-business@2.5.0\\oh_modules\\@polyvharmony\\media-player-business', + pkgName: '@polyvharmony/media-player-business', + sourceRoots: [Array] + }, + '@polyvharmony/media-player-core-api': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+media-player-core-api@2.5.0\\oh_modules\\@polyvharmony\\media-player-core-api', + pkgName: '@polyvharmony/media-player-core-api', + sourceRoots: [Array] + }, + '@polyvharmony/media-player-foundation': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+media-player-foundation@2.5.0\\oh_modules\\@polyvharmony\\media-player-foundation', + pkgName: '@polyvharmony/media-player-foundation', + sourceRoots: [Array] + }, + '@aliyun/httpdns': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@aliyun+httpdns@1.1.1\\oh_modules\\@aliyun\\httpdns', + pkgName: '@aliyun/httpdns', + sourceRoots: [Array] + }, + '@nimsdk/vendor': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+vendor@1.0.0\\oh_modules\\@nimsdk\\vendor', + pkgName: '@nimsdk/vendor', + sourceRoots: [Array] + }, + '@nimkit/conversationkit_ui': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\conversationkit_ui', + pkgName: '@nimkit/conversationkit_ui', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@nimkit/chatkit_ui': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit_ui', + pkgName: '@nimkit/chatkit_ui', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@nimkit/common': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\common', + pkgName: '@nimkit/common', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@nimkit/localconversationkit_ui': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\localconversationkit_ui', + pkgName: '@nimkit/localconversationkit_ui', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@ohos/httpclient': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@ohos+httpclient@2.0.2\\oh_modules\\@ohos\\httpclient', + pkgName: '@ohos/httpclient', + sourceRoots: [Array] + }, + '@aliyun/logger': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@aliyun+logger@1.0.2\\oh_modules\\@aliyun\\logger', + pkgName: '@aliyun/logger', + sourceRoots: [Array] + }, + '@aliyun/error': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@aliyun+error@1.0.2\\oh_modules\\@aliyun\\error', + pkgName: '@aliyun/error', + sourceRoots: [Array] + }, + '@nimkit/markdown': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimkit+markdown@1.1.0\\oh_modules\\@nimkit\\markdown', + pkgName: '@nimkit/markdown', + sourceRoots: [Array] + }, + '@ohos/pinyin4js': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@ohos+pinyin4js@2.0.1\\oh_modules\\@ohos\\pinyin4js', + pkgName: '@ohos/pinyin4js', + sourceRoots: [Array] + }, expert: { - pkgRoot: '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert', + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', originalSourceRoots: undefined, sourceRoots: [Array], pkgName: 'expert' } }, projectModel: { - '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/src/main': { + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\src\\main': { moduleName: 'default', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/src/ohosTest/ets': { + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\src\\ohosTest\\ets': { moduleName: 'default_test', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/src/ohosTest': { + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\src\\ohosTest': { moduleName: 'default_test', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert': { + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert': { moduleName: 'default', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/uicomponents/src/main': { - moduleName: 'uicomponents', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/uicomponents', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' - }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/uicomponents/build/default/intermediates/src/ohosTest/ets': { - moduleName: 'uicomponents_test', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/uicomponents', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' - }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/uicomponents/src/ohosTest': { - moduleName: 'uicomponents_test', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/uicomponents', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' - }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/uicomponents': { - moduleName: 'uicomponents', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/uicomponents', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' - }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/utils/src/main': { - moduleName: 'utils', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/utils', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' - }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/utils/build/default/intermediates/src/ohosTest/ets': { - moduleName: 'utils_test', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/utils', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' - }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/utils/src/ohosTest': { - moduleName: 'utils_test', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/utils', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' - }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/utils': { - moduleName: 'utils', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/utils', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' - }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/mypage/src/main': { + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage\\src\\main': { moduleName: 'mypage', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/mypage', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/mypage/build/default/intermediates/src/ohosTest/ets': { + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage\\build\\default\\intermediates\\src\\ohosTest\\ets': { moduleName: 'mypage_test', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/mypage', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/mypage/src/ohosTest': { + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage\\src\\ohosTest': { moduleName: 'mypage_test', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/mypage', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/mypage': { + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage': { moduleName: 'mypage', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/mypage', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/basic/src/main': { + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic\\src\\main': { moduleName: 'basic', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/basic', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/basic/build/default/intermediates/src/ohosTest/ets': { + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic\\build\\default\\intermediates\\src\\ohosTest\\ets': { moduleName: 'basic_test', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/basic', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/basic/src/ohosTest': { + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic\\src\\ohosTest': { moduleName: 'basic_test', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/basic', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/basic': { + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic': { moduleName: 'basic', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/basic', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/Home/src/main': { + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home\\src\\main': { moduleName: 'Home', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/Home', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/Home/build/default/intermediates/src/ohosTest/ets': { + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home\\build\\default\\intermediates\\src\\ohosTest\\ets': { moduleName: 'Home_test', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/Home', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/Home/src/ohosTest': { + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home\\src\\ohosTest': { moduleName: 'Home_test', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/Home', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/Home': { + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home': { moduleName: 'Home', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/Home', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/register/src/main': { + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register\\src\\main': { moduleName: 'register', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/register', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/register/build/default/intermediates/src/ohosTest/ets': { + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register\\build\\default\\intermediates\\src\\ohosTest\\ets': { moduleName: 'register_test', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/register', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/register/src/ohosTest': { + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register\\src\\ohosTest': { moduleName: 'register_test', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/register', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/register': { + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register': { moduleName: 'register', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/register', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' }, - '/Users/gandanxiangzhao/Downloads/Expert/harmony': { + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\polyv\\src\\main': { + moduleName: 'polyv', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\polyv', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\polyv': { + moduleName: 'polyv', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\polyv', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\scene_single_video\\src\\main': { + moduleName: 'scene_single_video', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\scene_single_video', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\scene_single_video': { + moduleName: 'scene_single_video', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\scene_single_video', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit\\src\\main': { + moduleName: 'corekit', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'corekit_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit\\src\\ohosTest': { + moduleName: 'corekit_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit': { + moduleName: 'corekit', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit\\src\\main': { + moduleName: 'chatkit', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'chatkit_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit\\src\\ohosTest': { + moduleName: 'chatkit_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit': { + moduleName: 'chatkit', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit_ui\\src\\main': { + moduleName: 'chatkit_ui', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit_ui', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit_ui': { + moduleName: 'chatkit_ui', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit_ui', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease\\src\\main': { + moduleName: 'netease', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'netease_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease\\src\\ohosTest': { + moduleName: 'netease_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease': { + moduleName: 'netease', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\conversationkit_ui\\src\\main': { + moduleName: 'conversationkit_ui', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\conversationkit_ui', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\conversationkit_ui': { + moduleName: 'conversationkit_ui', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\conversationkit_ui', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\common\\src\\main': { + moduleName: 'common', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\common', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\common': { + moduleName: 'common', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\common', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\localconversationkit_ui\\src\\main': { + moduleName: 'localconversationkit_ui', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\localconversationkit_ui', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\localconversationkit_ui': { + moduleName: 'localconversationkit_ui', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\localconversationkit_ui', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony': { moduleName: 'harmony', - modulePkgPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony', - belongProjectPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony' + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' } }, - pkgJsonFileHash: 'be0200c4c13f78486a8dec99448829c3', + pkgJsonFileHash: 'c5b4c4619e5c0b6eb2ff38daa97e9242', allModulePaths: [ - '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert', - '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/uicomponents', - '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/utils', - '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/mypage', - '/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/basic', - '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/Home', - '/Users/gandanxiangzhao/Downloads/Expert/harmony/features/register' + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\polyv', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\scene_single_video', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit_ui', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\conversationkit_ui', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\common', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\localconversationkit_ui' ], routerMap: {}, - obfuscationOptions: undefined, - compileBlockPkg: [], + obfuscationOptions: { + selfConfig: { ruleOptions: [Object], consumerRules: [] }, + sdkApis: [], + obfuscationCacheDir: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\cache\\default\\default@CompileArkTS\\esmodule\\release\\obfuscation', + exportRulePath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\obfuscation\\default\\obfuscation.txt', + dependencies: { libraries: [Array], hars: [Array] } + }, + compileBlockPkg: [ + '@polyvharmony/media-player-sdk', + '@polyvharmony/media-player-core-ijk', + '@polyvharmony/media-player-sdk-addon-cache-down', + '@polyvharmony/httpdns-api', + '@polyvharmony/httpdns-impl-local', + '@polyvharmony/httpdns-impl-ali', + '@nimsdk/conversation', + '@nimsdk/localconversation', + '@nimsdk/message', + '@nimsdk/team', + '@nimsdk/user', + '@nimsdk/friend', + '@nimsdk/nim', + '@nimsdk/base', + '@polyvharmony/media-player-business', + '@polyvharmony/media-player-core-api', + '@polyvharmony/media-player-foundation', + '@aliyun/httpdns', + '@aliyun/logger', + '@aliyun/error' + ], mockParams: { decorator: '@MockSetup', packageName: '@ohos/hamock', etsSourceRootPath: 'src/main/ets', - mockConfigPath: '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/src/mock/mock-config.json5', + mockConfigPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\src\\mock\\mock-config.json5', mockConfigKey2ModuleInfo: {} }, copyCodeResourceEnable: true, copyCodeResourceExcludes: [], + uiTransformOptimization: false, otherPaths: { '@ohos/crypto-js/*': [ - '../../../../../oh_modules/.ohpm/@ohos+crypto-js@2.0.4/oh_modules/@ohos/crypto-js/src/main/*' + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@ohos+crypto-js@2.0.4\\oh_modules\\@ohos\\crypto-js\\src\\main\\*' + ], + '@ohos/dataorm/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@ohos+dataorm@2.2.6\\oh_modules\\@ohos\\dataorm\\src\\main\\*' ], '@itcast/basic/*': [ - '../../../../../commons/basic/src/main/*', - '../../../../../commons/basic/build/default/generated/profile/default/*' - ], - 'utils/*': [ - '../../../../../commons/utils/src/main/*', - '../../../../../commons/utils/build/default/generated/profile/default/*' + '..\\..\\..\\..\\..\\commons\\basic\\src\\main\\*', + '..\\..\\..\\..\\..\\commons\\basic\\build\\default\\generated\\profile\\default\\*' ], 'mypage/*': [ - '../../../../../features/mypage/src/main/*', - '../../../../../features/mypage/build/default/generated/profile/default/*' + '..\\..\\..\\..\\..\\features\\mypage\\src\\main\\*', + '..\\..\\..\\..\\..\\features\\mypage\\build\\default\\generated\\profile\\default\\*' ], 'home/*': [ - '../../../../../features/Home/src/main/*', - '../../../../../features/Home/build/default/generated/profile/default/*' + '..\\..\\..\\..\\..\\features\\Home\\src\\main\\*', + '..\\..\\..\\..\\..\\features\\Home\\build\\default\\generated\\profile\\default\\*' ], 'register/*': [ - '../../../../../features/register/src/main/*', - '../../../../../features/register/build/default/generated/profile/default/*' + '..\\..\\..\\..\\..\\features\\register\\src\\main\\*', + '..\\..\\..\\..\\..\\features\\register\\build\\default\\generated\\profile\\default\\*' ], - 'expert/*': [ '../*', '../../../build/default/generated/profile/default/*' ] + 'scene_single_video/*': [ + '..\\..\\..\\..\\..\\scene_single_video\\src\\main\\*', + '..\\..\\..\\..\\..\\scene_single_video\\build\\default\\generated\\profile\\default\\*' + ], + 'media-player-common/*': [ + '..\\..\\..\\..\\..\\polyv\\src\\main\\*', + '..\\..\\..\\..\\..\\polyv\\build\\default\\generated\\profile\\default\\*' + ], + '@polyvharmony/media-player-sdk/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+media-player-sdk@2.5.0\\oh_modules\\@polyvharmony\\media-player-sdk\\src\\main\\*' + ], + '@polyvharmony/media-player-core-ijk/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+media-player-core-ijk@2.5.0\\oh_modules\\@polyvharmony\\media-player-core-ijk\\src\\main\\*' + ], + '@polyvharmony/media-player-sdk-addon-cache-down/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\\oh_modules\\@polyvharmony\\media-player-sdk-addon-cache-down\\src\\main\\*' + ], + '@polyvharmony/httpdns-api/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+httpdns-api@1.0.2\\oh_modules\\@polyvharmony\\httpdns-api\\src\\main\\*' + ], + '@polyvharmony/httpdns-impl-local/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+httpdns-impl-local@1.0.2\\oh_modules\\@polyvharmony\\httpdns-impl-local\\src\\main\\*' + ], + '@polyvharmony/httpdns-impl-ali/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+httpdns-impl-ali@1.0.2\\oh_modules\\@polyvharmony\\httpdns-impl-ali\\src\\main\\*' + ], + '@nimsdk/conversation/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+conversation@10.9.10\\oh_modules\\@nimsdk\\conversation\\src\\main\\*' + ], + '@nimsdk/localconversation/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+localconversation@10.9.10\\oh_modules\\@nimsdk\\localconversation\\src\\main\\*' + ], + '@nimsdk/message/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+message@10.9.10\\oh_modules\\@nimsdk\\message\\src\\main\\*' + ], + '@nimsdk/team/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+team@10.9.10\\oh_modules\\@nimsdk\\team\\src\\main\\*' + ], + '@nimsdk/user/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+user@10.9.10\\oh_modules\\@nimsdk\\user\\src\\main\\*' + ], + '@nimsdk/friend/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+friend@10.9.10\\oh_modules\\@nimsdk\\friend\\src\\main\\*' + ], + '@nimsdk/nim/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+nim@10.9.10\\oh_modules\\@nimsdk\\nim\\src\\main\\*' + ], + '@nimsdk/base/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\\oh_modules\\@nimsdk\\base\\src\\main\\*' + ], + '@nimkit/corekit/*': [ + '..\\..\\..\\..\\..\\corekit\\src\\main\\*', + '..\\..\\..\\..\\..\\corekit\\build\\default\\generated\\profile\\default\\*' + ], + '@nimkit/chatkit/*': [ + '..\\..\\..\\..\\..\\chatkit\\src\\main\\*', + '..\\..\\..\\..\\..\\chatkit\\build\\default\\generated\\profile\\default\\*' + ], + 'netease/*': [ + '..\\..\\..\\..\\..\\features\\netease\\src\\main\\*', + '..\\..\\..\\..\\..\\features\\netease\\build\\default\\generated\\profile\\default\\*' + ], + '@polyvharmony/media-player-business/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+media-player-business@2.5.0\\oh_modules\\@polyvharmony\\media-player-business\\src\\main\\*' + ], + '@polyvharmony/media-player-core-api/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+media-player-core-api@2.5.0\\oh_modules\\@polyvharmony\\media-player-core-api\\src\\main\\*' + ], + '@polyvharmony/media-player-foundation/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+media-player-foundation@2.5.0\\oh_modules\\@polyvharmony\\media-player-foundation\\src\\main\\*' + ], + '@aliyun/httpdns/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@aliyun+httpdns@1.1.1\\oh_modules\\@aliyun\\httpdns\\src\\main\\*' + ], + '@nimsdk/vendor/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+vendor@1.0.0\\oh_modules\\@nimsdk\\vendor\\src\\main\\*' + ], + '@nimkit/conversationkit_ui/*': [ + '..\\..\\..\\..\\..\\conversationkit_ui\\src\\main\\*', + '..\\..\\..\\..\\..\\conversationkit_ui\\build\\default\\generated\\profile\\default\\*' + ], + '@nimkit/chatkit_ui/*': [ + '..\\..\\..\\..\\..\\chatkit_ui\\src\\main\\*', + '..\\..\\..\\..\\..\\chatkit_ui\\build\\default\\generated\\profile\\default\\*' + ], + '@nimkit/common/*': [ + '..\\..\\..\\..\\..\\common\\src\\main\\*', + '..\\..\\..\\..\\..\\common\\build\\default\\generated\\profile\\default\\*' + ], + '@nimkit/localconversationkit_ui/*': [ + '..\\..\\..\\..\\..\\localconversationkit_ui\\src\\main\\*', + '..\\..\\..\\..\\..\\localconversationkit_ui\\build\\default\\generated\\profile\\default\\*' + ], + '@ohos/httpclient/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@ohos+httpclient@2.0.2\\oh_modules\\@ohos\\httpclient\\src\\main\\*' + ], + '@aliyun/logger/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@aliyun+logger@1.0.2\\oh_modules\\@aliyun\\logger\\src\\main\\*' + ], + '@aliyun/error/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@aliyun+error@1.0.2\\oh_modules\\@aliyun\\error\\src\\main\\*' + ], + '@nimkit/markdown/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimkit+markdown@1.1.0\\oh_modules\\@nimkit\\markdown\\src\\main\\*' + ], + '@ohos/pinyin4js/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@ohos+pinyin4js@2.0.1\\oh_modules\\@ohos\\pinyin4js\\src\\main\\*' + ], + 'expert/*': [ + '..\\*', + '..\\..\\..\\build\\default\\generated\\profile\\default\\*' + ] }, collectImportersConfig: undefined } -[2025-05-12T14:15:53.270] [DEBUG] debug-file - Compile arkts with external api path: /Applications/DevEco-Studio.app/Contents/sdk/default/hms/ets -[2025-05-12T14:15:53.270] [DEBUG] debug-file - default@CompileArkTS work[101] is submitted. -[2025-05-12T14:15:53.271] [DEBUG] debug-file - default@CompileArkTS work[101] is pushed to ready queue. -[2025-05-12T14:15:53.271] [DEBUG] debug-file - A work dispatched to worker[7] failed because unable to get work from ready queue. -[2025-05-12T14:15:53.271] [DEBUG] debug-file - A work dispatched to worker[6] failed because unable to get work from ready queue. -[2025-05-12T14:15:53.271] [DEBUG] debug-file - A work dispatched to worker[5] failed because unable to get work from ready queue. -[2025-05-12T14:15:53.271] [DEBUG] debug-file - default@CompileArkTS work[101] has been dispatched to worker[4]. -[2025-05-12T14:15:53.271] [DEBUG] debug-file - default@CompileArkTS work[101] is dispatched. -[2025-05-12T14:15:53.271] [DEBUG] debug-file - CopyResources startTime: 20766706878083 -[2025-05-12T14:15:53.271] [DEBUG] debug-file - default@CompileArkTS work[102] is submitted. -[2025-05-12T14:15:53.272] [DEBUG] debug-file - default@CompileArkTS work[102] is pushed to ready queue. -[2025-05-12T14:15:53.272] [DEBUG] debug-file - A work dispatched to worker[7] failed because unable to get work from ready queue. -[2025-05-12T14:15:53.272] [DEBUG] debug-file - Create resident worker with id: 6. -[2025-05-12T14:15:53.273] [DEBUG] debug-file - default@CompileArkTS work[102] has been dispatched to worker[6]. -[2025-05-12T14:15:53.273] [DEBUG] debug-file - default@CompileArkTS work[102] is dispatched. -[2025-05-12T14:15:53.273] [DEBUG] debug-file - default : default@CompileArkTS cost memory 2.4249954223632812 -[2025-05-12T14:15:53.273] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.273] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.274] [DEBUG] debug-file - Executing task :default:default@BuildJS -[2025-05-12T14:15:53.275] [DEBUG] debug-file - default : default@BuildJS cost memory 0.16757965087890625 -[2025-05-12T14:15:53.275] [DEBUG] debug-file - runTaskFromQueue task cost before running: 356 ms -[2025-05-12T14:15:53.276] [INFO] debug-file - Finished :default:default@BuildJS... after 2 ms -[2025-05-12T14:15:53.276] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.276] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.277] [DEBUG] debug-file - Executing task :mypage:default@DoNativeStrip -[2025-05-12T14:15:53.277] [DEBUG] debug-file - Task 'mypage:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms -[2025-05-12T14:15:53.277] [DEBUG] debug-file - Incremental task mypage:default@DoNativeStrip pre-execution cost: 1 ms . -[2025-05-12T14:15:53.277] [DEBUG] debug-file - mypage : default@DoNativeStrip cost memory 0.058837890625 -[2025-05-12T14:15:53.277] [INFO] debug-file - UP-TO-DATE :mypage:default@DoNativeStrip... -[2025-05-12T14:15:53.278] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.278] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.280] [DEBUG] debug-file - Executing task :Home:default@DoNativeStrip -[2025-05-12T14:15:53.280] [DEBUG] debug-file - Task 'Home:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms -[2025-05-12T14:15:53.280] [DEBUG] debug-file - Incremental task Home:default@DoNativeStrip pre-execution cost: 1 ms . -[2025-05-12T14:15:53.280] [DEBUG] debug-file - Home : default@DoNativeStrip cost memory 0.05875396728515625 -[2025-05-12T14:15:53.280] [INFO] debug-file - UP-TO-DATE :Home:default@DoNativeStrip... -[2025-05-12T14:15:53.281] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined -[2025-05-12T14:15:53.281] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined -[2025-05-12T14:15:53.282] [DEBUG] debug-file - Executing task :register:default@DoNativeStrip -[2025-05-12T14:15:53.282] [DEBUG] debug-file - Task 'register:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms -[2025-05-12T14:15:53.282] [DEBUG] debug-file - Incremental task register:default@DoNativeStrip pre-execution cost: 1 ms . -[2025-05-12T14:15:53.282] [DEBUG] debug-file - register : default@DoNativeStrip cost memory 0.0579833984375 -[2025-05-12T14:15:53.282] [INFO] debug-file - UP-TO-DATE :register:default@DoNativeStrip... -[2025-05-12T14:15:53.282] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.282] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.282] [DEBUG] debug-file - Executing task :default:default@BuildNativeWithNinja -[2025-05-12T14:15:53.282] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.282] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.283] [DEBUG] debug-file - default : default@BuildNativeWithNinja cost memory 0.05843353271484375 -[2025-05-12T14:15:53.283] [DEBUG] debug-file - runTaskFromQueue task cost before running: 363 ms -[2025-05-12T14:15:53.283] [INFO] debug-file - Finished :default:default@BuildNativeWithNinja... after 1 ms -[2025-05-12T14:15:53.283] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.283] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.283] [DEBUG] debug-file - Executing task :default:default@ProcessLibs -[2025-05-12T14:15:53.288] [DEBUG] debug-file - Incremental task default:default@ProcessLibs pre-execution cost: 1 ms . -[2025-05-12T14:15:53.288] [DEBUG] debug-file - default : default@ProcessLibs cost memory 0.8963699340820312 -[2025-05-12T14:15:53.288] [INFO] debug-file - UP-TO-DATE :default:default@ProcessLibs... -[2025-05-12T14:15:53.288] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.288] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.289] [DEBUG] debug-file - Executing task :default:default@DoNativeStrip -[2025-05-12T14:15:53.289] [DEBUG] debug-file - Task 'default:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms -[2025-05-12T14:15:53.289] [DEBUG] debug-file - Incremental task default:default@DoNativeStrip pre-execution cost: 1 ms . -[2025-05-12T14:15:53.289] [DEBUG] debug-file - default : default@DoNativeStrip cost memory 0.0579376220703125 -[2025-05-12T14:15:53.289] [INFO] debug-file - UP-TO-DATE :default:default@DoNativeStrip... -[2025-05-12T14:15:53.290] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.290] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.291] [DEBUG] debug-file - Executing task :default:default@CacheNativeLibs -[2025-05-12T14:15:53.291] [DEBUG] debug-file - Task 'default:default@CacheNativeLibs' cost while wrapping incremental declarations: 1 ms -[2025-05-12T14:15:53.291] [DEBUG] debug-file - Incremental task default:default@CacheNativeLibs pre-execution cost: 1 ms . -[2025-05-12T14:15:53.291] [DEBUG] debug-file - default : default@CacheNativeLibs cost memory 0.0713958740234375 -[2025-05-12T14:15:53.291] [INFO] debug-file - UP-TO-DATE :default:default@CacheNativeLibs... -[2025-05-12T14:15:53.664] [DEBUG] debug-file - worker[6] has one work done. -[2025-05-12T14:15:53.664] [DEBUG] debug-file - CopyResources is end, endTime: 20767099269916 -[2025-05-12T14:15:53.664] [DEBUG] debug-file - default@CompileArkTS work[102] done. -[2025-05-12T14:15:53.765] [DEBUG] debug-file - A work dispatched to worker[6] failed because unable to get work from ready queue. -[2025-05-12T14:15:53.953] [DEBUG] debug-file - worker[4] has one work done. -[2025-05-12T14:15:53.955] [DEBUG] debug-file - default@CompileArkTS work[101] done. -[2025-05-12T14:15:53.955] [DEBUG] debug-file - A work dispatched to worker[4] failed because unable to get work from ready queue. -[2025-05-12T14:15:53.956] [INFO] debug-file - Finished :default:default@CompileArkTS... after 695 ms -[2025-05-12T14:15:53.956] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.956] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.957] [DEBUG] debug-file - Executing task :default:default@GeneratePkgModuleJson -[2025-05-12T14:15:53.957] [DEBUG] debug-file - Task 'default:default@GeneratePkgModuleJson' cost while wrapping incremental declarations: 1 ms -[2025-05-12T14:15:53.957] [DEBUG] debug-file - Incremental task default:default@GeneratePkgModuleJson pre-execution cost: 1 ms . -[2025-05-12T14:15:53.957] [DEBUG] debug-file - default : default@GeneratePkgModuleJson cost memory 0.05804443359375 -[2025-05-12T14:15:53.957] [INFO] debug-file - UP-TO-DATE :default:default@GeneratePkgModuleJson... -[2025-05-12T14:15:53.957] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.957] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.959] [DEBUG] debug-file - Executing task :default:default@PackageHap -[2025-05-12T14:15:53.961] [DEBUG] debug-file - default:default@PackageHap is not up-to-date, since the input file '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader_out/default/ets' has been changed. -[2025-05-12T14:15:53.961] [DEBUG] debug-file - Incremental task default:default@PackageHap pre-execution cost: 2 ms . -[2025-05-12T14:15:53.961] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:53.961] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:53.962] [DEBUG] debug-file - Use tool [/Applications/DevEco-Studio.app/Contents/sdk/default/openharmony/toolchains/lib/app_packing_tool.jar] +[2025-07-09T18:53:03.125] [DEBUG] debug-file - Compile arkts with external api path: D:\Program Files\Huawei\DevEco Studioss\sdk\default\hms\ets +[2025-07-09T18:53:03.126] [DEBUG] debug-file - default@CompileArkTS work[70] is submitted. +[2025-07-09T18:53:03.126] [DEBUG] debug-file - default@CompileArkTS work[70] is pushed to ready queue. +[2025-07-09T18:53:03.126] [DEBUG] debug-file - A work dispatched to worker[15] failed because unable to get work from ready queue. +[2025-07-09T18:53:03.126] [DEBUG] debug-file - A work dispatched to worker[14] failed because unable to get work from ready queue. +[2025-07-09T18:53:03.126] [DEBUG] debug-file - A work dispatched to worker[13] failed because unable to get work from ready queue. +[2025-07-09T18:53:03.126] [DEBUG] debug-file - A work dispatched to worker[12] failed because unable to get work from ready queue. +[2025-07-09T18:53:03.126] [DEBUG] debug-file - A work dispatched to worker[11] failed because unable to get work from ready queue. +[2025-07-09T18:53:03.126] [DEBUG] debug-file - A work dispatched to worker[10] failed because unable to get work from ready queue. +[2025-07-09T18:53:03.127] [DEBUG] debug-file - A work dispatched to worker[9] failed because unable to get work from ready queue. +[2025-07-09T18:53:03.127] [DEBUG] debug-file - A work dispatched to worker[8] failed because unable to get work from ready queue. +[2025-07-09T18:53:03.127] [DEBUG] debug-file - A work dispatched to worker[7] failed because unable to get work from ready queue. +[2025-07-09T18:53:03.127] [DEBUG] debug-file - A work dispatched to worker[6] failed because unable to get work from ready queue. +[2025-07-09T18:53:03.127] [DEBUG] debug-file - A work dispatched to worker[5] failed because unable to get work from ready queue. +[2025-07-09T18:53:03.127] [DEBUG] debug-file - default@CompileArkTS work[70] has been dispatched to worker[4]. +[2025-07-09T18:53:03.127] [DEBUG] debug-file - default@CompileArkTS work[70] is dispatched. +[2025-07-09T18:53:03.127] [DEBUG] debug-file - CopyResources startTime: 36740854451000 +[2025-07-09T18:53:03.127] [DEBUG] debug-file - default@CompileArkTS work[71] is submitted. +[2025-07-09T18:53:03.128] [DEBUG] debug-file - default@CompileArkTS work[71] is pushed to ready queue. +[2025-07-09T18:53:03.128] [DEBUG] debug-file - A work dispatched to worker[15] failed because unable to get work from ready queue. +[2025-07-09T18:53:03.128] [DEBUG] debug-file - Create resident worker with id: 14. +[2025-07-09T18:53:03.129] [DEBUG] debug-file - default@CompileArkTS work[71] has been dispatched to worker[14]. +[2025-07-09T18:53:03.129] [DEBUG] debug-file - default@CompileArkTS work[71] is dispatched. +[2025-07-09T18:53:03.129] [DEBUG] debug-file - default : default@CompileArkTS cost memory 10.899406433105469 +[2025-07-09T18:53:03.131] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:03.131] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:03.134] [DEBUG] debug-file - Executing task :default:default@BuildJS +[2025-07-09T18:53:03.140] [DEBUG] debug-file - default : default@BuildJS cost memory 0.6220245361328125 +[2025-07-09T18:53:03.140] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 539 ms +[2025-07-09T18:53:03.140] [INFO] debug-file - Finished :default:default@BuildJS... after 7 ms +[2025-07-09T18:53:03.142] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:53:03.142] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:53:03.142] [DEBUG] debug-file - Executing task :Home:default@ProcessLibs +[2025-07-09T18:53:03.145] [DEBUG] debug-file - Incremental task Home:default@ProcessLibs pre-execution cost: 2 ms . +[2025-07-09T18:53:03.145] [DEBUG] debug-file - Home : default@ProcessLibs cost memory 0.13362884521484375 +[2025-07-09T18:53:03.146] [INFO] debug-file - UP-TO-DATE :Home:default@ProcessLibs... +[2025-07-09T18:53:03.147] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:53:03.148] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:53:03.148] [DEBUG] debug-file - Executing task :chatkit_ui:default@ProcessLibs +[2025-07-09T18:53:03.150] [DEBUG] debug-file - Incremental task chatkit_ui:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:53:03.151] [DEBUG] debug-file - chatkit_ui : default@ProcessLibs cost memory 0.13126373291015625 +[2025-07-09T18:53:03.151] [INFO] debug-file - UP-TO-DATE :chatkit_ui:default@ProcessLibs... +[2025-07-09T18:53:03.153] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:53:03.153] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:53:03.153] [DEBUG] debug-file - Executing task :conversationkit_ui:default@ProcessLibs +[2025-07-09T18:53:03.155] [DEBUG] debug-file - Incremental task conversationkit_ui:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:53:03.155] [DEBUG] debug-file - conversationkit_ui : default@ProcessLibs cost memory 0.13198089599609375 +[2025-07-09T18:53:03.155] [INFO] debug-file - UP-TO-DATE :conversationkit_ui:default@ProcessLibs... +[2025-07-09T18:53:03.157] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:53:03.158] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:53:03.159] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@ProcessLibs +[2025-07-09T18:53:03.160] [DEBUG] debug-file - Incremental task localconversationkit_ui:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:53:03.161] [DEBUG] debug-file - localconversationkit_ui : default@ProcessLibs cost memory 0.1326904296875 +[2025-07-09T18:53:03.161] [INFO] debug-file - UP-TO-DATE :localconversationkit_ui:default@ProcessLibs... +[2025-07-09T18:53:03.162] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:03.162] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:03.163] [DEBUG] debug-file - Executing task :default:default@BuildNativeWithCmake +[2025-07-09T18:53:03.163] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:03.163] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:03.163] [DEBUG] debug-file - default : default@BuildNativeWithCmake cost memory 0.06905364990234375 +[2025-07-09T18:53:03.163] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 562 ms +[2025-07-09T18:53:03.163] [INFO] debug-file - Finished :default:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:53:03.165] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:53:03.165] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:53:03.167] [DEBUG] debug-file - Executing task :Home:default@DoNativeStrip +[2025-07-09T18:53:03.167] [DEBUG] debug-file - Task 'Home:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:03.168] [DEBUG] debug-file - Incremental task Home:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:53:03.168] [DEBUG] debug-file - Home : default@DoNativeStrip cost memory 0.073455810546875 +[2025-07-09T18:53:03.168] [INFO] debug-file - UP-TO-DATE :Home:default@DoNativeStrip... +[2025-07-09T18:53:03.169] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:53:03.169] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:53:03.171] [DEBUG] debug-file - Executing task :chatkit_ui:default@DoNativeStrip +[2025-07-09T18:53:03.171] [DEBUG] debug-file - Task 'chatkit_ui:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:03.172] [DEBUG] debug-file - Incremental task chatkit_ui:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:53:03.172] [DEBUG] debug-file - chatkit_ui : default@DoNativeStrip cost memory 0.07280731201171875 +[2025-07-09T18:53:03.172] [INFO] debug-file - UP-TO-DATE :chatkit_ui:default@DoNativeStrip... +[2025-07-09T18:53:03.173] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:53:03.173] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:53:03.176] [DEBUG] debug-file - Executing task :conversationkit_ui:default@DoNativeStrip +[2025-07-09T18:53:03.176] [DEBUG] debug-file - Task 'conversationkit_ui:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:03.177] [DEBUG] debug-file - Incremental task conversationkit_ui:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:53:03.177] [DEBUG] debug-file - conversationkit_ui : default@DoNativeStrip cost memory 0.0735321044921875 +[2025-07-09T18:53:03.177] [INFO] debug-file - UP-TO-DATE :conversationkit_ui:default@DoNativeStrip... +[2025-07-09T18:53:03.179] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:53:03.179] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:53:03.182] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@DoNativeStrip +[2025-07-09T18:53:03.182] [DEBUG] debug-file - Task 'localconversationkit_ui:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:03.183] [DEBUG] debug-file - Incremental task localconversationkit_ui:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:53:03.183] [DEBUG] debug-file - localconversationkit_ui : default@DoNativeStrip cost memory 0.07369232177734375 +[2025-07-09T18:53:03.183] [INFO] debug-file - UP-TO-DATE :localconversationkit_ui:default@DoNativeStrip... +[2025-07-09T18:53:03.186] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:53:03.186] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:53:03.187] [DEBUG] debug-file - Executing task :netease:default@BuildNativeWithNinja +[2025-07-09T18:53:03.187] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:53:03.187] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:53:03.187] [DEBUG] debug-file - netease : default@BuildNativeWithNinja cost memory 0.0690460205078125 +[2025-07-09T18:53:03.188] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 586 ms +[2025-07-09T18:53:03.188] [INFO] debug-file - Finished :netease:default@BuildNativeWithNinja... after 2 ms +[2025-07-09T18:53:03.190] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:53:03.190] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:53:03.190] [DEBUG] debug-file - Executing task :netease:default@ProcessLibs +[2025-07-09T18:53:03.192] [DEBUG] debug-file - Incremental task netease:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:53:03.192] [DEBUG] debug-file - netease : default@ProcessLibs cost memory 0.1339111328125 +[2025-07-09T18:53:03.192] [INFO] debug-file - UP-TO-DATE :netease:default@ProcessLibs... +[2025-07-09T18:53:03.194] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:53:03.194] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:53:03.196] [DEBUG] debug-file - Executing task :netease:default@DoNativeStrip +[2025-07-09T18:53:03.196] [DEBUG] debug-file - Task 'netease:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:03.196] [DEBUG] debug-file - Incremental task netease:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:53:03.196] [DEBUG] debug-file - netease : default@DoNativeStrip cost memory 0.07384490966796875 +[2025-07-09T18:53:03.196] [INFO] debug-file - UP-TO-DATE :netease:default@DoNativeStrip... +[2025-07-09T18:53:03.198] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:03.198] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:03.198] [DEBUG] debug-file - Executing task :default:default@BuildNativeWithNinja +[2025-07-09T18:53:03.198] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:03.198] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:03.199] [DEBUG] debug-file - default : default@BuildNativeWithNinja cost memory 0.25146484375 +[2025-07-09T18:53:03.199] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 597 ms +[2025-07-09T18:53:03.199] [INFO] debug-file - Finished :default:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:53:03.200] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:03.200] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:03.201] [DEBUG] debug-file - Executing task :default:default@ProcessLibs +[2025-07-09T18:53:03.232] [DEBUG] debug-file - Incremental task default:default@ProcessLibs pre-execution cost: 11 ms . +[2025-07-09T18:53:03.232] [DEBUG] debug-file - default : default@ProcessLibs cost memory 4.8237152099609375 +[2025-07-09T18:53:03.233] [INFO] debug-file - UP-TO-DATE :default:default@ProcessLibs... +[2025-07-09T18:53:03.235] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:03.235] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:03.237] [DEBUG] debug-file - Executing task :default:default@DoNativeStrip +[2025-07-09T18:53:03.237] [DEBUG] debug-file - Task 'default:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:03.239] [DEBUG] debug-file - Incremental task default:default@DoNativeStrip pre-execution cost: 3 ms . +[2025-07-09T18:53:03.240] [DEBUG] debug-file - default : default@DoNativeStrip cost memory 0.416107177734375 +[2025-07-09T18:53:03.240] [INFO] debug-file - UP-TO-DATE :default:default@DoNativeStrip... +[2025-07-09T18:53:03.241] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:03.241] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:03.243] [DEBUG] debug-file - Executing task :default:default@CacheNativeLibs +[2025-07-09T18:53:03.243] [DEBUG] debug-file - Task 'default:default@CacheNativeLibs' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:03.246] [DEBUG] debug-file - Incremental task default:default@CacheNativeLibs pre-execution cost: 3 ms . +[2025-07-09T18:53:03.246] [DEBUG] debug-file - default : default@CacheNativeLibs cost memory 0.42943572998046875 +[2025-07-09T18:53:03.246] [INFO] debug-file - UP-TO-DATE :default:default@CacheNativeLibs... +[2025-07-09T18:53:03.854] [DEBUG] debug-file - worker[14] has one work done. +[2025-07-09T18:53:03.854] [DEBUG] debug-file - CopyResources is end, endTime: 36741581086400 +[2025-07-09T18:53:03.854] [DEBUG] debug-file - default@CompileArkTS work[71] done. +[2025-07-09T18:53:03.854] [DEBUG] debug-file - A work dispatched to worker[14] failed because unable to get work from ready queue. +[2025-07-09T18:53:08.172] [DEBUG] debug-file - worker[4] has one work done. +[2025-07-09T18:53:08.176] [DEBUG] debug-file - default@CompileArkTS work[70] done. +[2025-07-09T18:53:08.176] [DEBUG] debug-file - A work dispatched to worker[4] failed because unable to get work from ready queue. +[2025-07-09T18:53:08.180] [INFO] debug-file - Finished :default:default@CompileArkTS... after 5 s 141 ms +[2025-07-09T18:53:08.182] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:08.182] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:08.182] [DEBUG] debug-file - Executing task :default:default@GeneratePkgModuleJson +[2025-07-09T18:53:08.182] [DEBUG] debug-file - Task 'default:default@GeneratePkgModuleJson' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:53:08.183] [DEBUG] debug-file - Incremental task default:default@GeneratePkgModuleJson pre-execution cost: 1 ms . +[2025-07-09T18:53:08.183] [DEBUG] debug-file - default : default@GeneratePkgModuleJson cost memory 0.07012939453125 +[2025-07-09T18:53:08.183] [INFO] debug-file - UP-TO-DATE :default:default@GeneratePkgModuleJson... +[2025-07-09T18:53:08.185] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:08.185] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:08.189] [DEBUG] debug-file - Executing task :default:default@PackageHap +[2025-07-09T18:53:08.193] [WARN] debug-file - Bytecode HARs [@polyvharmony/media-player-sdk, @polyvharmony/media-player-core-ijk, @polyvharmony/media-player-sdk-addon-cache-down, @polyvharmony/httpdns-api, @polyvharmony/httpdns-impl-local, @polyvharmony/httpdns-impl-ali, @nimsdk/conversation, @nimsdk/localconversation, @nimsdk/message, @nimsdk/team, @nimsdk/user, @nimsdk/friend, @nimsdk/nim, @nimsdk/base, @polyvharmony/media-player-business, @polyvharmony/media-player-core-api, @polyvharmony/media-player-foundation, @aliyun/httpdns, @aliyun/logger, @aliyun/error] to integrate are not obfuscated and will not be obfuscated later. +[2025-07-09T18:53:08.193] [WARN] debug-file - If obfuscation is needed, enable obfuscation settings in this build process; failing to do so may prevent future obfuscation. + Properly configure obfuscation rules to avoid runtime issues. +[2025-07-09T18:53:08.214] [DEBUG] debug-file - default:default@PackageHap is not up-to-date, since the input file 'D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader_out\default\ets' has been changed. +[2025-07-09T18:53:08.215] [DEBUG] debug-file - Incremental task default:default@PackageHap pre-execution cost: 22 ms . +[2025-07-09T18:53:08.215] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:08.215] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:08.216] [DEBUG] debug-file - Use tool [D:\Program Files\Huawei\DevEco Studioss\sdk\default\openharmony\toolchains\lib\app_packing_tool.jar] [ 'java', - '-Dfile.encoding=utf-8', + '-Dfile.encoding=GBK', '-jar', - '/Applications/DevEco-Studio.app/Contents/sdk/default/openharmony/toolchains/lib/app_packing_tool.jar', + 'D:\\Program Files\\Huawei\\DevEco Studioss\\sdk\\default\\openharmony\\toolchains\\lib\\app_packing_tool.jar', '--mode', 'hap', '--force', 'true', '--lib-path', - '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/stripped_native_libs/default', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\stripped_native_libs\\default', '--json-path', - '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/package/default/module.json', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\package\\default\\module.json', '--resources-path', - '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/resources', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\res\\default\\resources', '--index-path', - '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/resources.index', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\res\\default\\resources.index', '--pack-info-path', - '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/outputs/default/pack.info', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\outputs\\default\\pack.info', '--out-path', - '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/outputs/default/default-default-unsigned.hap', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\outputs\\default\\default-default-unsigned.hap', '--ets-path', - '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader_out/default/ets', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\loader_out\\default\\ets', '--pkg-context-path', - '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader/default/pkgContextInfo.json' + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\loader\\default\\pkgContextInfo.json' ] -[2025-05-12T14:15:53.962] [DEBUG] debug-file - default@PackageHap work[103] is submitted. -[2025-05-12T14:15:53.962] [DEBUG] debug-file - default@PackageHap work[103] is pushed to ready queue. -[2025-05-12T14:15:53.962] [DEBUG] debug-file - A work dispatched to worker[7] failed because unable to get work from ready queue. -[2025-05-12T14:15:53.962] [DEBUG] debug-file - default@PackageHap work[103] has been dispatched to worker[6]. -[2025-05-12T14:15:53.962] [DEBUG] debug-file - default@PackageHap work[103] is dispatched. -[2025-05-12T14:15:53.968] [DEBUG] debug-file - default : default@PackageHap cost memory 0.9118804931640625 -[2025-05-12T14:15:53.988] [DEBUG] debug-file - current process memoryUsage: { - rss: 611270656, - heapTotal: 75546624, - heapUsed: 51170520, - external: 2644820, - arrayBuffers: 673931 -} os memoryUsage :15.848876953125 -[2025-05-12T14:15:54.193] [DEBUG] debug-file - worker[6] has one work done. -[2025-05-12T14:15:54.193] [DEBUG] debug-file - default@PackageHap work[103] done. -[2025-05-12T14:15:54.193] [DEBUG] debug-file - A work dispatched to worker[6] failed because unable to get work from ready queue. -[2025-05-12T14:15:54.194] [INFO] debug-file - Finished :default:default@PackageHap... after 216 ms -[2025-05-12T14:15:54.194] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:54.194] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:54.195] [DEBUG] debug-file - Executing task :default:default@SignHap -[2025-05-12T14:15:54.195] [WARN] debug-file - Will skip sign 'hos_hap'. No signingConfigs profile is configured in current project. - If needed, configure the signingConfigs in /Users/gandanxiangzhao/Downloads/Expert/harmony/build-profile.json5. -[2025-05-12T14:15:54.195] [DEBUG] debug-file - default:default@SignHap is not up-to-date, since the input file '/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/outputs/default/default-default-unsigned.hap' has been changed. -[2025-05-12T14:15:54.195] [DEBUG] debug-file - Incremental task default:default@SignHap pre-execution cost: 1 ms . -[2025-05-12T14:15:54.195] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:54.195] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:54.196] [DEBUG] debug-file - default : default@SignHap cost memory 0.105133056640625 -[2025-05-12T14:15:54.196] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 276 ms -[2025-05-12T14:15:54.196] [INFO] debug-file - Finished :default:default@SignHap... after 1 ms -[2025-05-12T14:15:54.196] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:54.196] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:54.196] [DEBUG] debug-file - Executing task :default:default@CollectDebugSymbol -[2025-05-12T14:15:54.197] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"} at undefined -[2025-05-12T14:15:54.197] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","utils":"file:../../commons/utils","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register"}} at undefined -[2025-05-12T14:15:54.197] [DEBUG] debug-file - default : default@CollectDebugSymbol cost memory 0.213226318359375 -[2025-05-12T14:15:54.198] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 278 ms -[2025-05-12T14:15:54.198] [INFO] debug-file - Finished :default:default@CollectDebugSymbol... after 2 ms -[2025-05-12T14:15:54.198] [DEBUG] debug-file - Executing task :default:assembleHap -[2025-05-12T14:15:54.198] [DEBUG] debug-file - default : assembleHap cost memory 0.01131439208984375 -[2025-05-12T14:15:54.198] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 278 ms -[2025-05-12T14:15:54.198] [INFO] debug-file - Finished :default:assembleHap... after 1 ms -[2025-05-12T14:15:54.199] [DEBUG] debug-file - BUILD SUCCESSFUL in 1 s 279 ms -[2025-05-12T14:15:54.199] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@PreBuild is up-to-date. -[2025-05-12T14:15:54.199] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@PreBuild is up-to-date. -[2025-05-12T14:15:54.199] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task utils:default@PreBuild is up-to-date. -[2025-05-12T14:15:54.199] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@PreBuild is up-to-date. -[2025-05-12T14:15:54.199] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@PreBuild is up-to-date. -[2025-05-12T14:15:54.199] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@PreBuild is up-to-date. -[2025-05-12T14:15:54.199] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@GenerateMetadata is up-to-date. -[2025-05-12T14:15:54.199] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@GeneratePkgContextInfo is up-to-date. -[2025-05-12T14:15:54.199] [DEBUG] debug-file - Update task default:default@ProcessIntegratedHsp output file:/Users/gandanxiangzhao/Downloads/Expert/harmony/build/cache/default/integrated_hsp/integratedHspCache.json cache. -[2025-05-12T14:15:54.199] [DEBUG] debug-file - Incremental task default:default@ProcessIntegratedHsp post-execution cost:1 ms . -[2025-05-12T14:15:54.199] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@CreateHarBuildProfile is up-to-date. -[2025-05-12T14:15:54.199] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@MergeProfile is up-to-date. -[2025-05-12T14:15:54.199] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task utils:default@CreateHarBuildProfile is up-to-date. -[2025-05-12T14:15:54.199] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task utils:default@MergeProfile is up-to-date. -[2025-05-12T14:15:54.199] [DEBUG] debug-file - Update task default:default@SyscapTransform input file:/Applications/DevEco-Studio.app/Contents/sdk/default/openharmony/toolchains/syscap_tool cache by regenerate. -[2025-05-12T14:15:54.199] [DEBUG] debug-file - Update task default:default@SyscapTransform input file:/Applications/DevEco-Studio.app/Contents/sdk/default/openharmony/ets/api/device-define cache by regenerate. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - Update task default:default@SyscapTransform output file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/syscap/default/rpcid.sc cache. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - Incremental task default:default@SyscapTransform post-execution cost:1 ms . -[2025-05-12T14:15:54.200] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessRouterMap is up-to-date. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@CreateHarBuildProfile is up-to-date. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@CreateHarBuildProfile is up-to-date. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@CreateHarBuildProfile is up-to-date. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@MergeProfile is up-to-date. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@MergeProfile is up-to-date. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@MergeProfile is up-to-date. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@GenerateLoaderJson is up-to-date. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@CreateBuildProfile is up-to-date. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@MergeProfile is up-to-date. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@ProcessLibs is up-to-date. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@MakePackInfo is up-to-date. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessProfile is up-to-date. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task utils:default@ProcessLibs is up-to-date. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@DoNativeStrip is up-to-date. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessResource is up-to-date. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task utils:default@DoNativeStrip is up-to-date. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@CompileResource is up-to-date. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@ProcessLibs is up-to-date. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@ProcessLibs is up-to-date. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@ProcessLibs is up-to-date. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader/default cache by regenerate. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/basic/Index.ets cache by regenerate. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/utils/Index.ets cache by regenerate. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/features/mypage/Index.ets cache by regenerate. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/features/Home/Index.ets cache by regenerate. -[2025-05-12T14:15:54.200] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/features/register/Index.ets cache by regenerate. -[2025-05-12T14:15:54.201] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/oh_modules/.ohpm/@ohos+crypto-js@2.0.4/oh_modules/@ohos/crypto-js/index.ts cache by regenerate. -[2025-05-12T14:15:54.201] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/basic/src/main/ets cache by regenerate. -[2025-05-12T14:15:54.201] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/utils/src/main/ets cache by regenerate. -[2025-05-12T14:15:54.201] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/features/mypage/src/main/ets cache from map. -[2025-05-12T14:15:54.201] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/features/Home/src/main/ets cache by regenerate. -[2025-05-12T14:15:54.201] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/features/register/src/main/ets cache by regenerate. -[2025-05-12T14:15:54.201] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/resources/rawfile cache by regenerate. -[2025-05-12T14:15:54.201] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/ResourceTable.txt cache by regenerate. -[2025-05-12T14:15:54.201] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/ark_module.json cache by regenerate. -[2025-05-12T14:15:54.201] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/resources/base/profile cache by regenerate. -[2025-05-12T14:15:54.201] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/src/main/ets cache by regenerate. -[2025-05-12T14:15:54.202] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader/default/pkgContextInfo.json cache by regenerate. -[2025-05-12T14:15:54.202] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/generated/profile/default/BuildProfile.ets cache by regenerate. -[2025-05-12T14:15:54.202] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/basic/BuildProfile.ets cache by regenerate. -[2025-05-12T14:15:54.202] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/utils/BuildProfile.ets cache by regenerate. -[2025-05-12T14:15:54.202] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/features/mypage/BuildProfile.ets cache by regenerate. -[2025-05-12T14:15:54.202] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/features/Home/BuildProfile.ets cache by regenerate. -[2025-05-12T14:15:54.202] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/features/register/BuildProfile.ets cache by regenerate. -[2025-05-12T14:15:54.202] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/src/mock/mock-config.json5 cache by regenerate. -[2025-05-12T14:15:54.202] [DEBUG] debug-file - Update task default:default@CompileArkTS output file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader_out/default/ets cache. -[2025-05-12T14:15:54.202] [DEBUG] debug-file - Incremental task default:default@CompileArkTS post-execution cost:3 ms . -[2025-05-12T14:15:54.202] [DEBUG] debug-file - Update task default:default@BuildJS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader/default cache by regenerate. -[2025-05-12T14:15:54.203] [DEBUG] debug-file - Update task default:default@BuildJS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/basic/Index.ets cache by regenerate. -[2025-05-12T14:15:54.203] [DEBUG] debug-file - Update task default:default@BuildJS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/commons/utils/Index.ets cache by regenerate. -[2025-05-12T14:15:54.203] [DEBUG] debug-file - Update task default:default@BuildJS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/features/mypage/Index.ets cache by regenerate. -[2025-05-12T14:15:54.203] [DEBUG] debug-file - Update task default:default@BuildJS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/features/Home/Index.ets cache by regenerate. -[2025-05-12T14:15:54.203] [DEBUG] debug-file - Update task default:default@BuildJS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/features/register/Index.ets cache by regenerate. -[2025-05-12T14:15:54.203] [DEBUG] debug-file - Update task default:default@BuildJS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/oh_modules/.ohpm/@ohos+crypto-js@2.0.4/oh_modules/@ohos/crypto-js/index.ts cache by regenerate. -[2025-05-12T14:15:54.203] [DEBUG] debug-file - Update task default:default@BuildJS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/oh_modules/.ohpm/@ohos+crypto-js@2.0.4/oh_modules/@ohos/crypto-js/src/main/js cache by regenerate. -[2025-05-12T14:15:54.203] [DEBUG] debug-file - Update task default:default@BuildJS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/resources/rawfile cache by regenerate. -[2025-05-12T14:15:54.203] [DEBUG] debug-file - Update task default:default@BuildJS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/ResourceTable.txt cache by regenerate. -[2025-05-12T14:15:54.203] [DEBUG] debug-file - Update task default:default@BuildJS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/ark_module.json cache by regenerate. -[2025-05-12T14:15:54.203] [DEBUG] debug-file - Update task default:default@BuildJS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/resources/base/profile cache by regenerate. -[2025-05-12T14:15:54.203] [DEBUG] debug-file - Update task default:default@BuildJS input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader/default/pkgContextInfo.json cache by regenerate. -[2025-05-12T14:15:54.203] [DEBUG] debug-file - Update task default:default@BuildJS output file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader_out/default/js cache. -[2025-05-12T14:15:54.203] [DEBUG] debug-file - Incremental task default:default@BuildJS post-execution cost:1 ms . -[2025-05-12T14:15:54.203] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@DoNativeStrip is up-to-date. -[2025-05-12T14:15:54.203] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@DoNativeStrip is up-to-date. -[2025-05-12T14:15:54.203] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@DoNativeStrip is up-to-date. -[2025-05-12T14:15:54.203] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessLibs is up-to-date. -[2025-05-12T14:15:54.203] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@DoNativeStrip is up-to-date. -[2025-05-12T14:15:54.203] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@CacheNativeLibs is up-to-date. -[2025-05-12T14:15:54.203] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@GeneratePkgModuleJson is up-to-date. -[2025-05-12T14:15:54.203] [DEBUG] debug-file - Update task default:default@PackageHap input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/stripped_native_libs/default cache by regenerate. -[2025-05-12T14:15:54.203] [DEBUG] debug-file - Update task default:default@PackageHap input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/module.json cache by regenerate. -[2025-05-12T14:15:54.203] [DEBUG] debug-file - Update task default:default@PackageHap input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/resources cache by regenerate. -[2025-05-12T14:15:54.204] [DEBUG] debug-file - Update task default:default@PackageHap input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/res/default/resources.index cache by regenerate. -[2025-05-12T14:15:54.204] [DEBUG] debug-file - Update task default:default@PackageHap input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/outputs/default/pack.info cache by regenerate. -[2025-05-12T14:15:54.204] [DEBUG] debug-file - Update task default:default@PackageHap input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader_out/default/ets cache from map. -[2025-05-12T14:15:54.204] [DEBUG] debug-file - Update task default:default@PackageHap input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader/default/pkgContextInfo.json cache by regenerate. -[2025-05-12T14:15:54.204] [DEBUG] debug-file - Update task default:default@PackageHap input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader_out/default/ets/sourceMaps.map cache by regenerate. -[2025-05-12T14:15:54.204] [DEBUG] debug-file - Update task default:default@PackageHap input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/generated/profile/default/BuildProfile.ets cache by regenerate. -[2025-05-12T14:15:54.204] [DEBUG] debug-file - Update task default:default@PackageHap output file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/outputs/default/default-default-unsigned.hap cache. -[2025-05-12T14:15:54.204] [DEBUG] debug-file - Update task default:default@PackageHap output file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/source_map/default/sourceMaps.map cache. -[2025-05-12T14:15:54.204] [DEBUG] debug-file - Update task default:default@PackageHap output file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/outputs/default/mapping/sourceMaps.map cache. -[2025-05-12T14:15:54.204] [DEBUG] debug-file - Incremental task default:default@PackageHap post-execution cost:2 ms . -[2025-05-12T14:15:54.205] [DEBUG] debug-file - Update task default:default@SignHap input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/outputs/default/default-default-unsigned.hap cache from map. -[2025-05-12T14:15:54.205] [DEBUG] debug-file - Update task default:default@SignHap output file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/outputs/default/default-default-signed.hap cache. -[2025-05-12T14:15:54.205] [DEBUG] debug-file - Incremental task default:default@SignHap post-execution cost:1 ms . -[2025-05-12T14:15:54.205] [DEBUG] debug-file - Update task default:default@CollectDebugSymbol input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/loader_out/default/ets/sourceMaps.map cache by regenerate. -[2025-05-12T14:15:54.205] [DEBUG] debug-file - Update task default:default@CollectDebugSymbol input file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/intermediates/libs/default cache by regenerate. -[2025-05-12T14:15:54.205] [DEBUG] debug-file - Update task default:default@CollectDebugSymbol output file:/Users/gandanxiangzhao/Downloads/Expert/harmony/products/expert/build/default/outputs/default/symbol cache. -[2025-05-12T14:15:54.205] [DEBUG] debug-file - Incremental task default:default@CollectDebugSymbol post-execution cost:1 ms . -[2025-05-12T14:15:54.215] [DEBUG] debug-file - Cleanup worker 6. -[2025-05-12T14:15:54.215] [DEBUG] debug-file - Worker 6 has been cleaned up. -[2025-05-12T14:15:54.215] [DEBUG] debug-file - Current idle worker size: 1. -[2025-05-12T14:15:54.215] [DEBUG] debug-file - Current resident worker size: 2. -[2025-05-12T14:15:54.216] [DEBUG] debug-file - hvigor build process will be closed. -[2025-05-12T14:15:54.217] [DEBUG] debug-file - session manager: send message to worker process. -[2025-05-12T14:15:54.218] [DEBUG] debug-file - session manager: send message to worker process. -[2025-05-12T14:15:54.218] [DEBUG] debug-file - watch worker: worker id should be larger than 0. Nothing will be sent to any worker thread. -[2025-05-12T14:15:54.218] [DEBUG] debug-file - watch worker: worker id should be larger than 0. Nothing will be sent to any worker thread. -[2025-05-12T14:15:54.219] [DEBUG] debug-file - worker[6] exits with exit code 1. +[2025-07-09T18:53:08.217] [DEBUG] debug-file - default@PackageHap work[72] is submitted. +[2025-07-09T18:53:08.218] [DEBUG] debug-file - default@PackageHap work[72] is pushed to ready queue. +[2025-07-09T18:53:08.218] [DEBUG] debug-file - A work dispatched to worker[15] failed because unable to get work from ready queue. +[2025-07-09T18:53:08.218] [DEBUG] debug-file - default@PackageHap work[72] has been dispatched to worker[14]. +[2025-07-09T18:53:08.218] [DEBUG] debug-file - default@PackageHap work[72] is dispatched. +[2025-07-09T18:53:08.234] [DEBUG] debug-file - default : default@PackageHap cost memory -9.022727966308594 +[2025-07-09T18:53:08.285] [DEBUG] debug-file - current process memoryUsage: { + rss: 1029062656, + heapTotal: 76013568, + heapUsed: 55241864, + external: 2681535, + arrayBuffers: 629233 +} os memoryUsage :19.37657928466797 +[2025-07-09T18:53:08.826] [DEBUG] debug-file - worker[14] has one work done. +[2025-07-09T18:53:08.826] [DEBUG] debug-file - default@PackageHap work[72] done. +[2025-07-09T18:53:08.826] [DEBUG] debug-file - A work dispatched to worker[14] failed because unable to get work from ready queue. +[2025-07-09T18:53:08.827] [INFO] debug-file - Finished :default:default@PackageHap... after 590 ms +[2025-07-09T18:53:08.829] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:08.829] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:08.830] [DEBUG] debug-file - Executing task :default:default@SignHap +[2025-07-09T18:53:08.831] [DEBUG] debug-file - default:default@SignHap is not up-to-date, since the input file 'D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\default-default-unsigned.hap' has been changed. +[2025-07-09T18:53:08.831] [DEBUG] debug-file - Incremental task default:default@SignHap pre-execution cost: 1 ms . +[2025-07-09T18:53:08.831] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:08.831] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:08.868] [DEBUG] debug-file - java daemon socket received message:{"code":0,"message":"verify profile success"} +[2025-07-09T18:53:08.874] [DEBUG] debug-file - java daemon socket close code:1000 reason:close by user +[2025-07-09T18:53:09.177] [DEBUG] debug-file - java daemon socket received message:{"code":0,"message":"sign app success"} +[2025-07-09T18:53:09.178] [DEBUG] debug-file - default : default@SignHap cost memory 0.9756088256835938 +[2025-07-09T18:53:09.178] [DEBUG] debug-file - runTaskFromQueue task cost before running: 7 s 576 ms +[2025-07-09T18:53:09.178] [INFO] debug-file - Finished :default:default@SignHap... after 348 ms +[2025-07-09T18:53:09.180] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:09.180] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:09.180] [DEBUG] debug-file - Executing task :default:default@CollectDebugSymbol +[2025-07-09T18:53:09.185] [DEBUG] debug-file - default:default@CollectDebugSymbol is not up-to-date, since the input file 'D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\cache\default\default@CompileArkTS\esmodule\release\sourceMaps.map' has been changed. +[2025-07-09T18:53:09.185] [DEBUG] debug-file - Incremental task default:default@CollectDebugSymbol pre-execution cost: 4 ms . +[2025-07-09T18:53:09.185] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:53:09.185] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:53:09.189] [DEBUG] debug-file - nameCache.json for module default does not exists +[2025-07-09T18:53:09.189] [DEBUG] debug-file - default : default@CollectDebugSymbol cost memory 0.5483322143554688 +[2025-07-09T18:53:09.189] [DEBUG] debug-file - runTaskFromQueue task cost before running: 7 s 588 ms +[2025-07-09T18:53:09.191] [INFO] debug-file - Finished :default:default@CollectDebugSymbol... after 10 ms +[2025-07-09T18:53:09.192] [DEBUG] debug-file - Executing task :default:assembleHap +[2025-07-09T18:53:09.192] [DEBUG] debug-file - default : assembleHap cost memory 0.01139068603515625 +[2025-07-09T18:53:09.192] [DEBUG] debug-file - runTaskFromQueue task cost before running: 7 s 590 ms +[2025-07-09T18:53:09.192] [INFO] debug-file - Finished :default:assembleHap... after 1 ms +[2025-07-09T18:53:09.201] [DEBUG] debug-file - BUILD SUCCESSFUL in 7 s 599 ms +[2025-07-09T18:53:09.201] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@PreBuild is up-to-date. +[2025-07-09T18:53:09.201] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@PreBuild is up-to-date. +[2025-07-09T18:53:09.201] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@PreBuild is up-to-date. +[2025-07-09T18:53:09.201] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@PreBuild is up-to-date. +[2025-07-09T18:53:09.201] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task scene_single_video:default@PreBuild is up-to-date. +[2025-07-09T18:53:09.201] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task polyv:default@PreBuild is up-to-date. +[2025-07-09T18:53:09.202] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@PreBuild is up-to-date. +[2025-07-09T18:53:09.202] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task corekit:default@PreBuild is up-to-date. +[2025-07-09T18:53:09.202] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit:default@PreBuild is up-to-date. +[2025-07-09T18:53:09.202] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task netease:default@PreBuild is up-to-date. +[2025-07-09T18:53:09.202] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task conversationkit_ui:default@PreBuild is up-to-date. +[2025-07-09T18:53:09.202] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task common:default@PreBuild is up-to-date. +[2025-07-09T18:53:09.202] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit_ui:default@PreBuild is up-to-date. +[2025-07-09T18:53:09.202] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task localconversationkit_ui:default@PreBuild is up-to-date. +[2025-07-09T18:53:09.202] [DEBUG] debug-file - Update task default:default@CreateModuleInfo output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\generated\profile\default\ModuleInfo.ts cache. +[2025-07-09T18:53:09.202] [DEBUG] debug-file - Incremental task default:default@CreateModuleInfo post-execution cost:1 ms . +[2025-07-09T18:53:09.202] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@GenerateMetadata is up-to-date. +[2025-07-09T18:53:09.202] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@GeneratePkgContextInfo is up-to-date. +[2025-07-09T18:53:09.203] [DEBUG] debug-file - Update task default:default@ProcessIntegratedHsp output file:D:\202076work\hongmeng\newExpert\harmony\build\cache\default\integrated_hsp\integratedHspCache.json cache. +[2025-07-09T18:53:09.203] [DEBUG] debug-file - Incremental task default:default@ProcessIntegratedHsp post-execution cost:1 ms . +[2025-07-09T18:53:09.203] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:53:09.203] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@MergeProfile is up-to-date. +[2025-07-09T18:53:09.203] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task polyv:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:53:09.203] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task polyv:default@MergeProfile is up-to-date. +[2025-07-09T18:53:09.203] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task corekit:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:53:09.203] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task corekit:default@MergeProfile is up-to-date. +[2025-07-09T18:53:09.203] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task common:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:53:09.203] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task common:default@MergeProfile is up-to-date. +[2025-07-09T18:53:09.203] [DEBUG] debug-file - Update task default:default@SyscapTransform input file:D:\Program Files\Huawei\DevEco Studioss\sdk\default\openharmony\toolchains\syscap_tool.exe cache by regenerate. +[2025-07-09T18:53:09.204] [DEBUG] debug-file - Update task default:default@SyscapTransform input file:D:\Program Files\Huawei\DevEco Studioss\sdk\default\openharmony\ets\api\device-define cache by regenerate. +[2025-07-09T18:53:09.204] [DEBUG] debug-file - Update task default:default@SyscapTransform output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\syscap\default\rpcid.sc cache. +[2025-07-09T18:53:09.204] [DEBUG] debug-file - Incremental task default:default@SyscapTransform post-execution cost:1 ms . +[2025-07-09T18:53:09.204] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessRouterMap is up-to-date. +[2025-07-09T18:53:09.204] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:53:09.204] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:53:09.204] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@MergeProfile is up-to-date. +[2025-07-09T18:53:09.204] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@MergeProfile is up-to-date. +[2025-07-09T18:53:09.204] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task scene_single_video:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:53:09.204] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task scene_single_video:default@MergeProfile is up-to-date. +[2025-07-09T18:53:09.204] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit:default@MergeProfile is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@GenerateLoaderJson is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@MergeProfile is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit_ui:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task conversationkit_ui:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task localconversationkit_ui:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit_ui:default@MergeProfile is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task conversationkit_ui:default@MergeProfile is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task localconversationkit_ui:default@MergeProfile is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@ProcessLibs is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task polyv:default@ProcessLibs is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task netease:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task corekit:default@ProcessLibs is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task netease:default@MergeProfile is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task common:default@ProcessLibs is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@DoNativeStrip is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task polyv:default@DoNativeStrip is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@CreateBuildProfile is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task corekit:default@DoNativeStrip is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@MergeProfile is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task common:default@DoNativeStrip is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@MakePackInfo is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessProfile is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@ProcessLibs is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@ProcessLibs is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task scene_single_video:default@ProcessLibs is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit:default@ProcessLibs is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessResource is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@DoNativeStrip is up-to-date. +[2025-07-09T18:53:09.205] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@DoNativeStrip is up-to-date. +[2025-07-09T18:53:09.206] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task scene_single_video:default@DoNativeStrip is up-to-date. +[2025-07-09T18:53:09.206] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit:default@DoNativeStrip is up-to-date. +[2025-07-09T18:53:09.206] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@CompileResource is up-to-date. +[2025-07-09T18:53:09.209] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader\default cache by regenerate. +[2025-07-09T18:53:09.209] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\commons\basic\Index.ets cache by regenerate. +[2025-07-09T18:53:09.209] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\mypage\Index.ets cache by regenerate. +[2025-07-09T18:53:09.209] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\Home\Index.ets cache by regenerate. +[2025-07-09T18:53:09.209] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\register\Index.ets cache by regenerate. +[2025-07-09T18:53:09.210] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\scene_single_video\Index.ets cache by regenerate. +[2025-07-09T18:53:09.210] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\polyv\Index.ets cache by regenerate. +[2025-07-09T18:53:09.210] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\corekit\Index.ets cache by regenerate. +[2025-07-09T18:53:09.210] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit\Index.ets cache by regenerate. +[2025-07-09T18:53:09.210] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\netease\Index.ets cache by regenerate. +[2025-07-09T18:53:09.210] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\Index.js cache by regenerate. +[2025-07-09T18:53:09.210] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:53:09.210] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:53:09.210] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\common\Index.ets cache by regenerate. +[2025-07-09T18:53:09.210] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:53:09.211] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\index.ts cache by regenerate. +[2025-07-09T18:53:09.211] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js\index.ts cache by regenerate. +[2025-07-09T18:53:09.211] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown\Index.js cache by regenerate. +[2025-07-09T18:53:09.211] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js\index.ets cache by regenerate. +[2025-07-09T18:53:09.211] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm\index.ts cache by regenerate. +[2025-07-09T18:53:09.211] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\commons\basic\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.213] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\mypage\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.214] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\Home\src\main\ets cache from map. +[2025-07-09T18:53:09.214] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\register\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.215] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\scene_single_video\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.216] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\polyv\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.225] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk@2.5.0\oh_modules\@polyvharmony\media-player-sdk\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.226] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-ijk@2.5.0\oh_modules\@polyvharmony\media-player-core-ijk\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.228] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\oh_modules\@polyvharmony\media-player-sdk-addon-cache-down\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.231] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-api@1.0.2\oh_modules\@polyvharmony\httpdns-api\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.231] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-impl-local@1.0.2\oh_modules\@polyvharmony\httpdns-impl-local\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.231] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-impl-ali@1.0.2\oh_modules\@polyvharmony\httpdns-impl-ali\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.232] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.235] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+localconversation@10.9.10\oh_modules\@nimsdk\localconversation\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.238] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.245] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.247] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.248] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.250] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.267] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.280] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\corekit\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.280] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.282] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\netease\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.284] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-business@2.5.0\oh_modules\@polyvharmony\media-player-business\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.296] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-api@2.5.0\oh_modules\@polyvharmony\media-player-core-api\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.298] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-foundation@2.5.0\oh_modules\@polyvharmony\media-player-foundation\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.302] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+httpdns@1.1.1\oh_modules\@aliyun\httpdns\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.307] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.354] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.355] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.358] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\common\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.361] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.362] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.368] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+logger@1.0.2\oh_modules\@aliyun\logger\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.368] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+error@1.0.2\oh_modules\@aliyun\error\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.368] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.373] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.374] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.378] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources\rawfile cache by regenerate. +[2025-07-09T18:53:09.381] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\ResourceTable.txt cache by regenerate. +[2025-07-09T18:53:09.381] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\ark_module.json cache by regenerate. +[2025-07-09T18:53:09.382] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources\base\profile cache by regenerate. +[2025-07-09T18:53:09.382] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\src\main\ets cache by regenerate. +[2025-07-09T18:53:09.385] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader\default\pkgContextInfo.json cache by regenerate. +[2025-07-09T18:53:09.385] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\generated\profile\default\BuildProfile.ets cache by regenerate. +[2025-07-09T18:53:09.386] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\commons\basic\BuildProfile.ets cache by regenerate. +[2025-07-09T18:53:09.386] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\mypage\BuildProfile.ets cache by regenerate. +[2025-07-09T18:53:09.386] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\Home\BuildProfile.ets cache by regenerate. +[2025-07-09T18:53:09.386] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\register\BuildProfile.ets cache by regenerate. +[2025-07-09T18:53:09.386] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\scene_single_video\BuildProfile.ets cache by regenerate. +[2025-07-09T18:53:09.386] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\polyv\BuildProfile.ets cache by regenerate. +[2025-07-09T18:53:09.386] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\corekit\BuildProfile.ets cache by regenerate. +[2025-07-09T18:53:09.386] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit\BuildProfile.ets cache by regenerate. +[2025-07-09T18:53:09.386] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\netease\BuildProfile.ets cache by regenerate. +[2025-07-09T18:53:09.387] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\BuildProfile.ets cache by regenerate. +[2025-07-09T18:53:09.387] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\BuildProfile.ets cache by regenerate. +[2025-07-09T18:53:09.387] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\common\BuildProfile.ets cache by regenerate. +[2025-07-09T18:53:09.387] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\BuildProfile.ets cache by regenerate. +[2025-07-09T18:53:09.387] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\src\mock\mock-config.json5 cache by regenerate. +[2025-07-09T18:53:09.387] [DEBUG] debug-file - Update task default:default@CompileArkTS output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader_out\default\ets cache. +[2025-07-09T18:53:09.387] [DEBUG] debug-file - Incremental task default:default@CompileArkTS post-execution cost:182 ms . +[2025-07-09T18:53:09.389] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader\default cache by regenerate. +[2025-07-09T18:53:09.390] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\commons\basic\Index.ets cache by regenerate. +[2025-07-09T18:53:09.390] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\features\mypage\Index.ets cache by regenerate. +[2025-07-09T18:53:09.390] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\features\Home\Index.ets cache by regenerate. +[2025-07-09T18:53:09.390] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\features\register\Index.ets cache by regenerate. +[2025-07-09T18:53:09.390] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\scene_single_video\Index.ets cache by regenerate. +[2025-07-09T18:53:09.390] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\polyv\Index.ets cache by regenerate. +[2025-07-09T18:53:09.390] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\corekit\Index.ets cache by regenerate. +[2025-07-09T18:53:09.391] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit\Index.ets cache by regenerate. +[2025-07-09T18:53:09.391] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\features\netease\Index.ets cache by regenerate. +[2025-07-09T18:53:09.391] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\Index.js cache by regenerate. +[2025-07-09T18:53:09.391] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:53:09.391] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:53:09.391] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\common\Index.ets cache by regenerate. +[2025-07-09T18:53:09.391] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:53:09.391] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\index.ts cache by regenerate. +[2025-07-09T18:53:09.391] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js\index.ts cache by regenerate. +[2025-07-09T18:53:09.391] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown\Index.js cache by regenerate. +[2025-07-09T18:53:09.392] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js\index.ets cache by regenerate. +[2025-07-09T18:53:09.392] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm\index.ts cache by regenerate. +[2025-07-09T18:53:09.392] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js\src\main\js cache by regenerate. +[2025-07-09T18:53:09.392] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources\rawfile cache by regenerate. +[2025-07-09T18:53:09.396] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\ResourceTable.txt cache by regenerate. +[2025-07-09T18:53:09.396] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\ark_module.json cache by regenerate. +[2025-07-09T18:53:09.396] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources\base\profile cache by regenerate. +[2025-07-09T18:53:09.396] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader\default\pkgContextInfo.json cache by regenerate. +[2025-07-09T18:53:09.396] [DEBUG] debug-file - Update task default:default@BuildJS output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader_out\default\js cache. +[2025-07-09T18:53:09.396] [DEBUG] debug-file - Incremental task default:default@BuildJS post-execution cost:10 ms . +[2025-07-09T18:53:09.396] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@ProcessLibs is up-to-date. +[2025-07-09T18:53:09.396] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit_ui:default@ProcessLibs is up-to-date. +[2025-07-09T18:53:09.396] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task conversationkit_ui:default@ProcessLibs is up-to-date. +[2025-07-09T18:53:09.397] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task localconversationkit_ui:default@ProcessLibs is up-to-date. +[2025-07-09T18:53:09.397] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@DoNativeStrip is up-to-date. +[2025-07-09T18:53:09.397] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit_ui:default@DoNativeStrip is up-to-date. +[2025-07-09T18:53:09.397] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task conversationkit_ui:default@DoNativeStrip is up-to-date. +[2025-07-09T18:53:09.397] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task localconversationkit_ui:default@DoNativeStrip is up-to-date. +[2025-07-09T18:53:09.397] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task netease:default@ProcessLibs is up-to-date. +[2025-07-09T18:53:09.397] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task netease:default@DoNativeStrip is up-to-date. +[2025-07-09T18:53:09.397] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessLibs is up-to-date. +[2025-07-09T18:53:09.397] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@DoNativeStrip is up-to-date. +[2025-07-09T18:53:09.397] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@CacheNativeLibs is up-to-date. +[2025-07-09T18:53:09.397] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@GeneratePkgModuleJson is up-to-date. +[2025-07-09T18:53:09.398] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\stripped_native_libs\default cache by regenerate. +[2025-07-09T18:53:09.399] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\module.json cache by regenerate. +[2025-07-09T18:53:09.399] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources cache by regenerate. +[2025-07-09T18:53:09.414] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources.index cache by regenerate. +[2025-07-09T18:53:09.414] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\pack.info cache by regenerate. +[2025-07-09T18:53:09.414] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader_out\default\ets cache from map. +[2025-07-09T18:53:09.414] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader\default\pkgContextInfo.json cache by regenerate. +[2025-07-09T18:53:09.414] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\cache\default\default@CompileArkTS\esmodule\release\sourceMaps.map cache by regenerate. +[2025-07-09T18:53:09.415] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\generated\profile\default\BuildProfile.ets cache by regenerate. +[2025-07-09T18:53:09.415] [DEBUG] debug-file - Update task default:default@PackageHap output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\default-default-unsigned.hap cache. +[2025-07-09T18:53:09.415] [DEBUG] debug-file - Update task default:default@PackageHap output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\source_map\default\sourceMaps.map cache. +[2025-07-09T18:53:09.415] [DEBUG] debug-file - Update task default:default@PackageHap output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\mapping\sourceMaps.map cache. +[2025-07-09T18:53:09.415] [DEBUG] debug-file - Incremental task default:default@PackageHap post-execution cost:19 ms . +[2025-07-09T18:53:09.415] [DEBUG] debug-file - Update task default:default@SignHap input file:D:/202076work/鸿蒙专家端测试证书.cer cache by regenerate. +[2025-07-09T18:53:09.416] [DEBUG] debug-file - Update task default:default@SignHap input file:D:/202076work/profile测试Debug.p7b cache by regenerate. +[2025-07-09T18:53:09.416] [DEBUG] debug-file - Update task default:default@SignHap input file:D:/202076work/gdxzExport.p12 cache by regenerate. +[2025-07-09T18:53:09.416] [DEBUG] debug-file - Update task default:default@SignHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\default-default-unsigned.hap cache from map. +[2025-07-09T18:53:09.416] [DEBUG] debug-file - Update task default:default@SignHap output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\default-default-signed.hap cache. +[2025-07-09T18:53:09.416] [DEBUG] debug-file - Incremental task default:default@SignHap post-execution cost:1 ms . +[2025-07-09T18:53:09.417] [DEBUG] debug-file - Update task default:default@CollectDebugSymbol input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\cache\default\default@CompileArkTS\esmodule\release\sourceMaps.map cache from map. +[2025-07-09T18:53:09.417] [DEBUG] debug-file - Update task default:default@CollectDebugSymbol input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\libs\default cache by regenerate. +[2025-07-09T18:53:09.419] [DEBUG] debug-file - Update task default:default@CollectDebugSymbol output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\symbol cache. +[2025-07-09T18:53:09.420] [DEBUG] debug-file - Incremental task default:default@CollectDebugSymbol post-execution cost:5 ms . +[2025-07-09T18:53:09.467] [DEBUG] debug-file - Cleanup worker 14. +[2025-07-09T18:53:09.467] [DEBUG] debug-file - Worker 14 has been cleaned up. +[2025-07-09T18:53:09.467] [DEBUG] debug-file - Current idle worker size: 1. +[2025-07-09T18:53:09.467] [DEBUG] debug-file - Current resident worker size: 2. +[2025-07-09T18:53:09.468] [DEBUG] debug-file - hvigor build process will be closed. +[2025-07-09T18:53:09.469] [DEBUG] debug-file - java daemon socket close code:1000 reason:close by user +[2025-07-09T18:53:09.471] [DEBUG] debug-file - session manager: send message to worker process. +[2025-07-09T18:53:09.471] [DEBUG] debug-file - session manager: send message to worker process. +[2025-07-09T18:53:09.473] [DEBUG] debug-file - watch worker: worker id should be larger than 0. Nothing will be sent to any worker thread. +[2025-07-09T18:53:09.474] [DEBUG] debug-file - watch worker: worker id should be larger than 0. Nothing will be sent to any worker thread. +[2025-07-09T18:53:09.480] [DEBUG] debug-file - worker[14] exits with exit code 1. +[2025-07-09T18:55:45.349] [DEBUG] debug-file - session manager: set active socket. socketId=SwGZXldt6zDzScj3AAAh +[2025-07-09T18:55:45.363] [DEBUG] debug-file - watch worker: worker id should be larger than 0. Nothing will be sent to any worker thread. +[2025-07-09T18:55:45.405] [DEBUG] debug-file - Hvigor init with startParameters:{ + hvigorfileTypeCheck: false, + parallelExecution: true, + incrementalExecution: true, + printStackTrace: true, + daemon: true, + analyze: 0, + logLevel: Level { level: 20000, levelStr: 'INFO', colour: 'green' } +} +[2025-07-09T18:55:45.448] [DEBUG] debug-file - Cache service initialization finished in 43 ms +[2025-07-09T18:55:45.457] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\hvigorfile.ts +[2025-07-09T18:55:45.461] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:55:45.461] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:55:45.475] [DEBUG] debug-file - Start initialize project's product build option map with build mode release. +[2025-07-09T18:55:45.475] [DEBUG] debug-file - Picking option from product 'default' with build mode 'release'. +[2025-07-09T18:55:45.475] [DEBUG] debug-file - Product 'default' build option: {} +[2025-07-09T18:55:45.476] [DEBUG] debug-file - End initialize project's product build option map with build mode 'release'. +[2025-07-09T18:55:45.477] [DEBUG] debug-file - Product 'default' using build option: { + "debuggable": false, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + } +} in this build. +[2025-07-09T18:55:45.496] [DEBUG] debug-file - Start recording SDK configuration permission data. +[2025-07-09T18:55:45.534] [DEBUG] debug-file - Sdk init in 42 ms +[2025-07-09T18:55:45.550] [DEBUG] debug-file - Project task initialization takes 16 ms +[2025-07-09T18:55:45.550] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:55:45.550] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\hvigorfile.ts +[2025-07-09T18:55:45.550] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\hvigorfile.ts +[2025-07-09T18:55:45.555] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\products\expert\hvigorfile.ts +[2025-07-09T18:55:45.558] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:55:45.558] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:55:45.567] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=default, buildMode=release +[2025-07-09T18:55:45.567] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:55:45.568] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:55:45.568] [DEBUG] debug-file - Module 'default' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + } + } + } +} +[2025-07-09T18:55:45.568] [DEBUG] debug-file - Module 'default' target 'ohosTest' build option: { + "debuggable": true, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "default" +} +[2025-07-09T18:55:45.568] [DEBUG] debug-file - End initialize module-target build option map, moduleName=default +[2025-07-09T18:55:45.568] [DEBUG] debug-file - Module 'default' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + } + } + } +} in this build. +[2025-07-09T18:55:45.571] [DEBUG] debug-file - Module default task initialization takes 2 ms +[2025-07-09T18:55:45.571] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:55:45.571] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\products\expert\hvigorfile.ts +[2025-07-09T18:55:45.571] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\products\expert\hvigorfile.ts +[2025-07-09T18:55:45.576] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\features\mypage\hvigorfile.ts +[2025-07-09T18:55:45.579] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:55:45.579] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:55:45.587] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=mypage, buildMode=release +[2025-07-09T18:55:45.587] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:55:45.587] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:55:45.587] [DEBUG] debug-file - Module 'mypage' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:55:45.587] [DEBUG] debug-file - Module 'mypage' target 'ohosTest' build option: { + "debuggable": true, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "default" +} +[2025-07-09T18:55:45.587] [DEBUG] debug-file - End initialize module-target build option map, moduleName=mypage +[2025-07-09T18:55:45.587] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:45.589] [DEBUG] debug-file - Module mypage task initialization takes 1 ms +[2025-07-09T18:55:45.589] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:55:45.589] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\features\mypage\hvigorfile.ts +[2025-07-09T18:55:45.589] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\features\mypage\hvigorfile.ts +[2025-07-09T18:55:45.594] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\commons\basic\hvigorfile.ts +[2025-07-09T18:55:45.596] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:55:45.596] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:55:45.599] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=basic, buildMode=release +[2025-07-09T18:55:45.600] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:55:45.600] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:55:45.601] [DEBUG] debug-file - Module 'basic' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:55:45.601] [DEBUG] debug-file - Module 'basic' target 'ohosTest' build option: { + "debuggable": true, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "default" +} +[2025-07-09T18:55:45.601] [DEBUG] debug-file - End initialize module-target build option map, moduleName=basic +[2025-07-09T18:55:45.601] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:45.603] [DEBUG] debug-file - Module basic task initialization takes 1 ms +[2025-07-09T18:55:45.603] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:55:45.603] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\commons\basic\hvigorfile.ts +[2025-07-09T18:55:45.603] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\commons\basic\hvigorfile.ts +[2025-07-09T18:55:45.607] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\features\Home\hvigorfile.ts +[2025-07-09T18:55:45.609] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:55:45.609] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:55:45.613] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=Home, buildMode=release +[2025-07-09T18:55:45.613] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:55:45.613] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:55:45.613] [DEBUG] debug-file - Module 'Home' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:55:45.613] [DEBUG] debug-file - Module 'Home' target 'ohosTest' build option: { + "debuggable": true, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "default" +} +[2025-07-09T18:55:45.613] [DEBUG] debug-file - End initialize module-target build option map, moduleName=Home +[2025-07-09T18:55:45.613] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:45.615] [DEBUG] debug-file - Module Home task initialization takes 1 ms +[2025-07-09T18:55:45.615] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:55:45.615] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\features\Home\hvigorfile.ts +[2025-07-09T18:55:45.615] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\features\Home\hvigorfile.ts +[2025-07-09T18:55:45.620] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\features\register\hvigorfile.ts +[2025-07-09T18:55:45.623] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:55:45.623] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:55:45.626] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=register, buildMode=release +[2025-07-09T18:55:45.626] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:55:45.626] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:55:45.627] [DEBUG] debug-file - Module 'register' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:55:45.627] [DEBUG] debug-file - Module 'register' target 'ohosTest' build option: { + "debuggable": true, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "default" +} +[2025-07-09T18:55:45.627] [DEBUG] debug-file - End initialize module-target build option map, moduleName=register +[2025-07-09T18:55:45.627] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:45.628] [DEBUG] debug-file - Module register task initialization takes 1 ms +[2025-07-09T18:55:45.628] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:55:45.628] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\features\register\hvigorfile.ts +[2025-07-09T18:55:45.628] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\features\register\hvigorfile.ts +[2025-07-09T18:55:45.632] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\polyv\hvigorfile.ts +[2025-07-09T18:55:45.634] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:55:45.634] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:55:45.637] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=polyv, buildMode=release +[2025-07-09T18:55:45.637] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:55:45.637] [DEBUG] debug-file - Module 'polyv' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} +[2025-07-09T18:55:45.638] [DEBUG] debug-file - End initialize module-target build option map, moduleName=polyv +[2025-07-09T18:55:45.638] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:45.639] [DEBUG] debug-file - Module polyv task initialization takes 1 ms +[2025-07-09T18:55:45.639] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:55:45.639] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\polyv\hvigorfile.ts +[2025-07-09T18:55:45.639] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\polyv\hvigorfile.ts +[2025-07-09T18:55:45.643] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\scene_single_video\hvigorfile.ts +[2025-07-09T18:55:45.644] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:55:45.644] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:55:45.648] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=scene_single_video, buildMode=release +[2025-07-09T18:55:45.648] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:55:45.648] [DEBUG] debug-file - Module 'scene_single_video' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} +[2025-07-09T18:55:45.648] [DEBUG] debug-file - End initialize module-target build option map, moduleName=scene_single_video +[2025-07-09T18:55:45.648] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:45.650] [DEBUG] debug-file - Module scene_single_video task initialization takes 1 ms +[2025-07-09T18:55:45.650] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:55:45.650] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\scene_single_video\hvigorfile.ts +[2025-07-09T18:55:45.650] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\scene_single_video\hvigorfile.ts +[2025-07-09T18:55:45.654] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\corekit\hvigorfile.ts +[2025-07-09T18:55:45.656] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:55:45.656] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:55:45.659] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=corekit, buildMode=release +[2025-07-09T18:55:45.659] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:55:45.659] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:55:45.659] [DEBUG] debug-file - Module 'corekit' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:55:45.659] [DEBUG] debug-file - Module 'corekit' target 'ohosTest' build option: { + "debuggable": true, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "default" +} +[2025-07-09T18:55:45.659] [DEBUG] debug-file - End initialize module-target build option map, moduleName=corekit +[2025-07-09T18:55:45.659] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:45.661] [DEBUG] debug-file - Module corekit task initialization takes 1 ms +[2025-07-09T18:55:45.661] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:55:45.661] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\corekit\hvigorfile.ts +[2025-07-09T18:55:45.661] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\corekit\hvigorfile.ts +[2025-07-09T18:55:45.666] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\chatkit\hvigorfile.ts +[2025-07-09T18:55:45.668] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:55:45.668] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:55:45.671] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=chatkit, buildMode=release +[2025-07-09T18:55:45.671] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:55:45.672] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:55:45.672] [DEBUG] debug-file - Module 'chatkit' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:55:45.672] [DEBUG] debug-file - Module 'chatkit' target 'ohosTest' build option: { + "debuggable": true, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "default" +} +[2025-07-09T18:55:45.672] [DEBUG] debug-file - End initialize module-target build option map, moduleName=chatkit +[2025-07-09T18:55:45.672] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:45.673] [DEBUG] debug-file - Module chatkit task initialization takes 1 ms +[2025-07-09T18:55:45.673] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:55:45.673] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\chatkit\hvigorfile.ts +[2025-07-09T18:55:45.673] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\chatkit\hvigorfile.ts +[2025-07-09T18:55:45.677] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\hvigorfile.ts +[2025-07-09T18:55:45.680] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:55:45.680] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:55:45.683] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=chatkit_ui, buildMode=release +[2025-07-09T18:55:45.683] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:55:45.683] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:55:45.684] [DEBUG] debug-file - End initialize module-target build option map, moduleName=chatkit_ui +[2025-07-09T18:55:45.684] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:45.685] [DEBUG] debug-file - Module chatkit_ui task initialization takes 1 ms +[2025-07-09T18:55:45.685] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:55:45.686] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\hvigorfile.ts +[2025-07-09T18:55:45.686] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\hvigorfile.ts +[2025-07-09T18:55:45.690] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\features\netease\hvigorfile.ts +[2025-07-09T18:55:45.691] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:55:45.691] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:55:45.696] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=netease, buildMode=release +[2025-07-09T18:55:45.696] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:55:45.696] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:55:45.696] [DEBUG] debug-file - Module 'netease' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:55:45.696] [DEBUG] debug-file - Module 'netease' target 'ohosTest' build option: { + "debuggable": true, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "default" +} +[2025-07-09T18:55:45.696] [DEBUG] debug-file - End initialize module-target build option map, moduleName=netease +[2025-07-09T18:55:45.697] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:45.698] [DEBUG] debug-file - Module netease task initialization takes 1 ms +[2025-07-09T18:55:45.698] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:55:45.698] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\features\netease\hvigorfile.ts +[2025-07-09T18:55:45.698] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\features\netease\hvigorfile.ts +[2025-07-09T18:55:45.704] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\hvigorfile.ts +[2025-07-09T18:55:45.706] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:55:45.706] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:55:45.710] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=conversationkit_ui, buildMode=release +[2025-07-09T18:55:45.710] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:55:45.710] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:55:45.710] [DEBUG] debug-file - End initialize module-target build option map, moduleName=conversationkit_ui +[2025-07-09T18:55:45.710] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:45.712] [DEBUG] debug-file - Module conversationkit_ui task initialization takes 1 ms +[2025-07-09T18:55:45.712] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:55:45.712] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\hvigorfile.ts +[2025-07-09T18:55:45.712] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\hvigorfile.ts +[2025-07-09T18:55:45.716] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\common\hvigorfile.ts +[2025-07-09T18:55:45.718] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:55:45.718] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:55:45.721] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=common, buildMode=release +[2025-07-09T18:55:45.721] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:55:45.721] [DEBUG] debug-file - Module 'common' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:55:45.722] [DEBUG] debug-file - End initialize module-target build option map, moduleName=common +[2025-07-09T18:55:45.722] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:45.723] [DEBUG] debug-file - Module common task initialization takes 1 ms +[2025-07-09T18:55:45.723] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:55:45.723] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\common\hvigorfile.ts +[2025-07-09T18:55:45.723] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\common\hvigorfile.ts +[2025-07-09T18:55:45.728] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\hvigorfile.ts +[2025-07-09T18:55:45.730] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:55:45.730] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:55:45.733] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=localconversationkit_ui, buildMode=release +[2025-07-09T18:55:45.733] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:55:45.733] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:55:45.734] [DEBUG] debug-file - End initialize module-target build option map, moduleName=localconversationkit_ui +[2025-07-09T18:55:45.734] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:45.735] [DEBUG] debug-file - Module localconversationkit_ui task initialization takes 1 ms +[2025-07-09T18:55:45.735] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:55:45.735] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\hvigorfile.ts +[2025-07-09T18:55:45.735] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\hvigorfile.ts +[2025-07-09T18:55:45.754] [DEBUG] debug-file - hvigorfile, resolve hvigorfile dependencies in 18 ms +[2025-07-09T18:55:45.755] [DEBUG] debug-file - project has submodules:default,mypage,basic,Home,register,polyv,scene_single_video,corekit,chatkit,chatkit_ui,netease,conversationkit_ui,common,localconversationkit_ui +[2025-07-09T18:55:45.755] [DEBUG] debug-file - module:mypage no need to execute packageHap +[2025-07-09T18:55:45.755] [DEBUG] debug-file - module:basic no need to execute packageHap +[2025-07-09T18:55:45.755] [DEBUG] debug-file - module:Home no need to execute packageHap +[2025-07-09T18:55:45.755] [DEBUG] debug-file - module:register no need to execute packageHap +[2025-07-09T18:55:45.755] [DEBUG] debug-file - module:polyv no need to execute packageHap +[2025-07-09T18:55:45.755] [DEBUG] debug-file - module:scene_single_video no need to execute packageHap +[2025-07-09T18:55:45.755] [DEBUG] debug-file - module:corekit no need to execute packageHap +[2025-07-09T18:55:45.755] [DEBUG] debug-file - module:chatkit no need to execute packageHap +[2025-07-09T18:55:45.755] [DEBUG] debug-file - module:chatkit_ui no need to execute packageHap +[2025-07-09T18:55:45.755] [DEBUG] debug-file - module:netease no need to execute packageHap +[2025-07-09T18:55:45.755] [DEBUG] debug-file - module:conversationkit_ui no need to execute packageHap +[2025-07-09T18:55:45.755] [DEBUG] debug-file - module:common no need to execute packageHap +[2025-07-09T18:55:45.755] [DEBUG] debug-file - module:localconversationkit_ui no need to execute packageHap +[2025-07-09T18:55:45.756] [DEBUG] debug-file - start to load updatedOhPackageInfo to the disk +[2025-07-09T18:55:45.770] [DEBUG] debug-file - load to the disk finished +[2025-07-09T18:55:45.772] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:55:45.785] [DEBUG] debug-file - Module harmony Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:55:45.785] [DEBUG] debug-file - Module harmony's total dependency: 3 +[2025-07-09T18:55:45.786] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:55:46.022] [DEBUG] debug-file - Module default Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\commons\basic,D:\202076work\hongmeng\newExpert\harmony\features\mypage,D:\202076work\hongmeng\newExpert\harmony\features\Home,D:\202076work\hongmeng\newExpert\harmony\features\register,D:\202076work\hongmeng\newExpert\harmony\scene_single_video,D:\202076work\hongmeng\newExpert\harmony\polyv,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk@2.5.0\oh_modules\@polyvharmony\media-player-sdk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-ijk@2.5.0\oh_modules\@polyvharmony\media-player-core-ijk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\oh_modules\@polyvharmony\media-player-sdk-addon-cache-down,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-api@1.0.2\oh_modules\@polyvharmony\httpdns-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-impl-local@1.0.2\oh_modules\@polyvharmony\httpdns-impl-local,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-impl-ali@1.0.2\oh_modules\@polyvharmony\httpdns-impl-ali,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+localconversation@10.9.10\oh_modules\@nimsdk\localconversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base,D:\202076work\hongmeng\newExpert\harmony\corekit,D:\202076work\hongmeng\newExpert\harmony\chatkit,D:\202076work\hongmeng\newExpert\harmony\features\netease,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-business@2.5.0\oh_modules\@polyvharmony\media-player-business,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-api@2.5.0\oh_modules\@polyvharmony\media-player-core-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-foundation@2.5.0\oh_modules\@polyvharmony\media-player-foundation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+httpdns@1.1.1\oh_modules\@aliyun\httpdns,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\class-transformer@0.5.1\oh_modules\class-transformer,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata,D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui,D:\202076work\hongmeng\newExpert\harmony\chatkit_ui,D:\202076work\hongmeng\newExpert\harmony\common,D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+logger@1.0.2\oh_modules\@aliyun\logger,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+error@1.0.2\oh_modules\@aliyun\error,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\pako@2.1.0\oh_modules\pako,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\base64-js@1.5.1\oh_modules\base64-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm +[2025-07-09T18:55:46.022] [DEBUG] debug-file - Module default's total dependency: 43 +[2025-07-09T18:55:46.026] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:55:46.027] [DEBUG] debug-file - Module mypage Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\commons\basic,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:55:46.027] [DEBUG] debug-file - Module mypage's total dependency: 4 +[2025-07-09T18:55:46.029] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:55:46.030] [DEBUG] debug-file - Module basic Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:55:46.030] [DEBUG] debug-file - Module basic's total dependency: 3 +[2025-07-09T18:55:46.032] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:55:46.034] [DEBUG] debug-file - Module Home Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\commons\basic,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk@2.5.0\oh_modules\@polyvharmony\media-player-sdk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\oh_modules\@polyvharmony\media-player-sdk-addon-cache-down,D:\202076work\hongmeng\newExpert\harmony\scene_single_video,D:\202076work\hongmeng\newExpert\harmony\polyv,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-business@2.5.0\oh_modules\@polyvharmony\media-player-business,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-api@2.5.0\oh_modules\@polyvharmony\media-player-core-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-foundation@2.5.0\oh_modules\@polyvharmony\media-player-foundation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-ijk@2.5.0\oh_modules\@polyvharmony\media-player-core-ijk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-api@1.0.2\oh_modules\@polyvharmony\httpdns-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\pako@2.1.0\oh_modules\pako,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\base64-js@1.5.1\oh_modules\base64-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:55:46.034] [DEBUG] debug-file - Module Home's total dependency: 16 +[2025-07-09T18:55:46.035] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:55:46.036] [DEBUG] debug-file - Module register Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\commons\basic,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:55:46.036] [DEBUG] debug-file - Module register's total dependency: 4 +[2025-07-09T18:55:46.038] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:55:46.039] [DEBUG] debug-file - Module polyv Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk@2.5.0\oh_modules\@polyvharmony\media-player-sdk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\oh_modules\@polyvharmony\media-player-sdk-addon-cache-down,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-business@2.5.0\oh_modules\@polyvharmony\media-player-business,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-api@2.5.0\oh_modules\@polyvharmony\media-player-core-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-foundation@2.5.0\oh_modules\@polyvharmony\media-player-foundation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-ijk@2.5.0\oh_modules\@polyvharmony\media-player-core-ijk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-api@1.0.2\oh_modules\@polyvharmony\httpdns-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\pako@2.1.0\oh_modules\pako,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\base64-js@1.5.1\oh_modules\base64-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:55:46.039] [DEBUG] debug-file - Module polyv's total dependency: 13 +[2025-07-09T18:55:46.040] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:55:46.041] [DEBUG] debug-file - Module scene_single_video Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\polyv,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk@2.5.0\oh_modules\@polyvharmony\media-player-sdk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\oh_modules\@polyvharmony\media-player-sdk-addon-cache-down,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-business@2.5.0\oh_modules\@polyvharmony\media-player-business,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-api@2.5.0\oh_modules\@polyvharmony\media-player-core-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-foundation@2.5.0\oh_modules\@polyvharmony\media-player-foundation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-ijk@2.5.0\oh_modules\@polyvharmony\media-player-core-ijk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-api@1.0.2\oh_modules\@polyvharmony\httpdns-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\pako@2.1.0\oh_modules\pako,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\base64-js@1.5.1\oh_modules\base64-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:55:46.041] [DEBUG] debug-file - Module scene_single_video's total dependency: 14 +[2025-07-09T18:55:46.042] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:55:46.043] [DEBUG] debug-file - Module corekit Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:55:46.043] [DEBUG] debug-file - Module corekit's total dependency: 3 +[2025-07-09T18:55:46.044] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:55:46.046] [DEBUG] debug-file - Module chatkit Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base,D:\202076work\hongmeng\newExpert\harmony\corekit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\class-transformer@0.5.1\oh_modules\class-transformer,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm +[2025-07-09T18:55:46.046] [DEBUG] debug-file - Module chatkit's total dependency: 13 +[2025-07-09T18:55:46.047] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:55:46.049] [DEBUG] debug-file - Module chatkit_ui Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\common,D:\202076work\hongmeng\newExpert\harmony\chatkit,D:\202076work\hongmeng\newExpert\harmony\corekit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\class-transformer@0.5.1\oh_modules\class-transformer,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown,D:\202076work\hongmeng\newExpert\harmony\commons\basic,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm +[2025-07-09T18:55:46.049] [DEBUG] debug-file - Module chatkit_ui's total dependency: 18 +[2025-07-09T18:55:46.051] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:55:46.052] [DEBUG] debug-file - Module netease Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\commons\basic,D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui,D:\202076work\hongmeng\newExpert\harmony\chatkit_ui,D:\202076work\hongmeng\newExpert\harmony\chatkit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base,D:\202076work\hongmeng\newExpert\harmony\common,D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui,D:\202076work\hongmeng\newExpert\harmony\corekit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\class-transformer@0.5.1\oh_modules\class-transformer,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm +[2025-07-09T18:55:46.052] [DEBUG] debug-file - Module netease's total dependency: 21 +[2025-07-09T18:55:46.053] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:55:46.054] [DEBUG] debug-file - Module conversationkit_ui Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\common,D:\202076work\hongmeng\newExpert\harmony\chatkit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim,D:\202076work\hongmeng\newExpert\harmony\corekit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\class-transformer@0.5.1\oh_modules\class-transformer,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm +[2025-07-09T18:55:46.055] [DEBUG] debug-file - Module conversationkit_ui's total dependency: 16 +[2025-07-09T18:55:46.056] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:55:46.058] [DEBUG] debug-file - Module common Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:55:46.058] [DEBUG] debug-file - Module common's total dependency: 4 +[2025-07-09T18:55:46.059] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:55:46.060] [DEBUG] debug-file - Module localconversationkit_ui Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\common,D:\202076work\hongmeng\newExpert\harmony\chatkit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim,D:\202076work\hongmeng\newExpert\harmony\corekit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\class-transformer@0.5.1\oh_modules\class-transformer,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm +[2025-07-09T18:55:46.060] [DEBUG] debug-file - Module localconversationkit_ui's total dependency: 16 +[2025-07-09T18:55:46.061] [DEBUG] debug-file - Configuration phase cost:609 ms +[2025-07-09T18:55:46.067] [DEBUG] debug-file - Configuration task cost before running: 699 ms +[2025-07-09T18:55:46.068] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.068] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.070] [DEBUG] debug-file - Executing task :default:default@PreBuild +[2025-07-09T18:55:46.083] [DEBUG] debug-file - Incremental task default:default@PreBuild pre-execution cost: 3 ms . +[2025-07-09T18:55:46.083] [DEBUG] debug-file - default : default@PreBuild cost memory 2.0640106201171875 +[2025-07-09T18:55:46.084] [INFO] debug-file - UP-TO-DATE :default:default@PreBuild... +[2025-07-09T18:55:46.085] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:55:46.085] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:55:46.086] [DEBUG] debug-file - Executing task :basic:default@PreBuild +[2025-07-09T18:55:46.088] [DEBUG] debug-file - Incremental task basic:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:55:46.088] [DEBUG] debug-file - basic : default@PreBuild cost memory 0.23046112060546875 +[2025-07-09T18:55:46.089] [INFO] debug-file - UP-TO-DATE :basic:default@PreBuild... +[2025-07-09T18:55:46.090] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:55:46.090] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:55:46.091] [DEBUG] debug-file - Executing task :mypage:default@PreBuild +[2025-07-09T18:55:46.093] [DEBUG] debug-file - Incremental task mypage:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:55:46.093] [DEBUG] debug-file - mypage : default@PreBuild cost memory 0.2373199462890625 +[2025-07-09T18:55:46.093] [INFO] debug-file - UP-TO-DATE :mypage:default@PreBuild... +[2025-07-09T18:55:46.094] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:55:46.094] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:55:46.095] [DEBUG] debug-file - Executing task :Home:default@PreBuild +[2025-07-09T18:55:46.098] [DEBUG] debug-file - Incremental task Home:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:55:46.098] [DEBUG] debug-file - Home : default@PreBuild cost memory 0.24666595458984375 +[2025-07-09T18:55:46.099] [INFO] debug-file - UP-TO-DATE :Home:default@PreBuild... +[2025-07-09T18:55:46.100] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:55:46.100] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:55:46.101] [DEBUG] debug-file - Executing task :scene_single_video:default@PreBuild +[2025-07-09T18:55:46.103] [DEBUG] debug-file - Incremental task scene_single_video:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:55:46.103] [DEBUG] debug-file - scene_single_video : default@PreBuild cost memory 0.235931396484375 +[2025-07-09T18:55:46.104] [INFO] debug-file - UP-TO-DATE :scene_single_video:default@PreBuild... +[2025-07-09T18:55:46.105] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:55:46.105] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:55:46.106] [DEBUG] debug-file - Executing task :polyv:default@PreBuild +[2025-07-09T18:55:46.108] [DEBUG] debug-file - Incremental task polyv:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:55:46.108] [DEBUG] debug-file - polyv : default@PreBuild cost memory 0.23244476318359375 +[2025-07-09T18:55:46.108] [INFO] debug-file - UP-TO-DATE :polyv:default@PreBuild... +[2025-07-09T18:55:46.109] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:55:46.110] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:55:46.110] [DEBUG] debug-file - Executing task :register:default@PreBuild +[2025-07-09T18:55:46.113] [DEBUG] debug-file - Incremental task register:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:55:46.113] [DEBUG] debug-file - register : default@PreBuild cost memory 0.23583984375 +[2025-07-09T18:55:46.114] [INFO] debug-file - UP-TO-DATE :register:default@PreBuild... +[2025-07-09T18:55:46.115] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:55:46.115] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:55:46.115] [DEBUG] debug-file - Executing task :corekit:default@PreBuild +[2025-07-09T18:55:46.118] [DEBUG] debug-file - Incremental task corekit:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:55:46.118] [DEBUG] debug-file - corekit : default@PreBuild cost memory 0.2332763671875 +[2025-07-09T18:55:46.119] [INFO] debug-file - UP-TO-DATE :corekit:default@PreBuild... +[2025-07-09T18:55:46.120] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:55:46.120] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:55:46.121] [DEBUG] debug-file - Executing task :chatkit:default@PreBuild +[2025-07-09T18:55:46.123] [DEBUG] debug-file - Incremental task chatkit:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:55:46.123] [DEBUG] debug-file - chatkit : default@PreBuild cost memory 0.248291015625 +[2025-07-09T18:55:46.124] [INFO] debug-file - UP-TO-DATE :chatkit:default@PreBuild... +[2025-07-09T18:55:46.124] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:55:46.125] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:55:46.126] [DEBUG] debug-file - Executing task :netease:default@PreBuild +[2025-07-09T18:55:46.129] [DEBUG] debug-file - Incremental task netease:default@PreBuild pre-execution cost: 3 ms . +[2025-07-09T18:55:46.129] [DEBUG] debug-file - netease : default@PreBuild cost memory 0.2686309814453125 +[2025-07-09T18:55:46.130] [INFO] debug-file - UP-TO-DATE :netease:default@PreBuild... +[2025-07-09T18:55:46.131] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:55:46.131] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:55:46.132] [DEBUG] debug-file - Executing task :conversationkit_ui:default@PreBuild +[2025-07-09T18:55:46.134] [DEBUG] debug-file - Incremental task conversationkit_ui:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:55:46.135] [DEBUG] debug-file - conversationkit_ui : default@PreBuild cost memory 0.2572479248046875 +[2025-07-09T18:55:46.135] [INFO] debug-file - UP-TO-DATE :conversationkit_ui:default@PreBuild... +[2025-07-09T18:55:46.136] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:55:46.136] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:55:46.137] [DEBUG] debug-file - Executing task :common:default@PreBuild +[2025-07-09T18:55:46.140] [DEBUG] debug-file - Incremental task common:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:55:46.140] [DEBUG] debug-file - common : default@PreBuild cost memory 0.24462890625 +[2025-07-09T18:55:46.140] [INFO] debug-file - UP-TO-DATE :common:default@PreBuild... +[2025-07-09T18:55:46.141] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:55:46.141] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:55:46.143] [DEBUG] debug-file - Executing task :chatkit_ui:default@PreBuild +[2025-07-09T18:55:46.145] [DEBUG] debug-file - Incremental task chatkit_ui:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:55:46.146] [DEBUG] debug-file - chatkit_ui : default@PreBuild cost memory 0.29266357421875 +[2025-07-09T18:55:46.146] [INFO] debug-file - UP-TO-DATE :chatkit_ui:default@PreBuild... +[2025-07-09T18:55:46.147] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:55:46.147] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:55:46.149] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@PreBuild +[2025-07-09T18:55:46.151] [DEBUG] debug-file - Incremental task localconversationkit_ui:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:55:46.151] [DEBUG] debug-file - localconversationkit_ui : default@PreBuild cost memory 0.2559967041015625 +[2025-07-09T18:55:46.152] [INFO] debug-file - UP-TO-DATE :localconversationkit_ui:default@PreBuild... +[2025-07-09T18:55:46.153] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.153] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.153] [DEBUG] debug-file - Executing task :default:default@CreateModuleInfo +[2025-07-09T18:55:46.154] [DEBUG] debug-file - Task 'default:default@CreateModuleInfo' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.154] [DEBUG] debug-file - default : default@CreateModuleInfo cost memory 0.0600433349609375 +[2025-07-09T18:55:46.154] [DEBUG] debug-file - runTaskFromQueue task cost before running: 787 ms +[2025-07-09T18:55:46.154] [INFO] debug-file - Finished :default:default@CreateModuleInfo... after 1 ms +[2025-07-09T18:55:46.156] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.156] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.159] [DEBUG] debug-file - Executing task :default:default@GenerateMetadata +[2025-07-09T18:55:46.160] [DEBUG] debug-file - Task 'default:default@GenerateMetadata' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.160] [DEBUG] debug-file - Incremental task default:default@GenerateMetadata pre-execution cost: 1 ms . +[2025-07-09T18:55:46.160] [DEBUG] debug-file - default : default@GenerateMetadata cost memory 0.09610748291015625 +[2025-07-09T18:55:46.160] [INFO] debug-file - UP-TO-DATE :default:default@GenerateMetadata... +[2025-07-09T18:55:46.162] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.162] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.162] [DEBUG] debug-file - Executing task :default:default@PreCheckSyscap +[2025-07-09T18:55:46.162] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.162] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.163] [DEBUG] debug-file - default : default@PreCheckSyscap cost memory 0.069366455078125 +[2025-07-09T18:55:46.163] [DEBUG] debug-file - runTaskFromQueue task cost before running: 795 ms +[2025-07-09T18:55:46.163] [INFO] debug-file - Finished :default:default@PreCheckSyscap... after 1 ms +[2025-07-09T18:55:46.164] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.164] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.181] [DEBUG] debug-file - Executing task :default:default@GeneratePkgContextInfo +[2025-07-09T18:55:46.181] [DEBUG] debug-file - Task 'default:default@GeneratePkgContextInfo' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.182] [DEBUG] debug-file - Incremental task default:default@GeneratePkgContextInfo pre-execution cost: 1 ms . +[2025-07-09T18:55:46.182] [DEBUG] debug-file - default : default@GeneratePkgContextInfo cost memory 0.2090911865234375 +[2025-07-09T18:55:46.182] [INFO] debug-file - UP-TO-DATE :default:default@GeneratePkgContextInfo... +[2025-07-09T18:55:46.184] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.184] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.185] [DEBUG] debug-file - Executing task :default:default@ProcessIntegratedHsp +[2025-07-09T18:55:46.186] [DEBUG] debug-file - default:default@ProcessIntegratedHsp is not up-to-date, since the output file 'D:\202076work\hongmeng\newExpert\harmony\build\cache\default\integrated_hsp\integratedHspCache.json' does not exist. +[2025-07-09T18:55:46.186] [DEBUG] debug-file - Incremental task default:default@ProcessIntegratedHsp pre-execution cost: 1 ms . +[2025-07-09T18:55:46.186] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.186] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.187] [DEBUG] debug-file - default : default@ProcessIntegratedHsp cost memory 0.1494903564453125 +[2025-07-09T18:55:46.187] [DEBUG] debug-file - runTaskFromQueue task cost before running: 819 ms +[2025-07-09T18:55:46.187] [INFO] debug-file - Finished :default:default@ProcessIntegratedHsp... after 2 ms +[2025-07-09T18:55:46.188] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:55:46.188] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:55:46.189] [DEBUG] debug-file - Executing task :basic:default@CreateHarBuildProfile +[2025-07-09T18:55:46.189] [DEBUG] debug-file - Task 'basic:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.189] [DEBUG] debug-file - Incremental task basic:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:55:46.189] [DEBUG] debug-file - basic : default@CreateHarBuildProfile cost memory 0.0810394287109375 +[2025-07-09T18:55:46.189] [INFO] debug-file - UP-TO-DATE :basic:default@CreateHarBuildProfile... +[2025-07-09T18:55:46.191] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:55:46.191] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:55:46.191] [DEBUG] debug-file - Executing task :basic:default@ConfigureCmake +[2025-07-09T18:55:46.191] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:55:46.191] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:55:46.191] [DEBUG] debug-file - basic : default@ConfigureCmake cost memory 0.03624725341796875 +[2025-07-09T18:55:46.191] [DEBUG] debug-file - runTaskFromQueue task cost before running: 824 ms +[2025-07-09T18:55:46.191] [INFO] debug-file - Finished :basic:default@ConfigureCmake... after 1 ms +[2025-07-09T18:55:46.192] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:55:46.192] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:55:46.193] [DEBUG] debug-file - Executing task :basic:default@MergeProfile +[2025-07-09T18:55:46.194] [DEBUG] debug-file - Incremental task basic:default@MergeProfile pre-execution cost: 1 ms . +[2025-07-09T18:55:46.195] [DEBUG] debug-file - basic : default@MergeProfile cost memory 0.15274810791015625 +[2025-07-09T18:55:46.195] [INFO] debug-file - UP-TO-DATE :basic:default@MergeProfile... +[2025-07-09T18:55:46.196] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:55:46.196] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:55:46.196] [DEBUG] debug-file - Executing task :polyv:default@CreateHarBuildProfile +[2025-07-09T18:55:46.196] [DEBUG] debug-file - Task 'polyv:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.197] [DEBUG] debug-file - Incremental task polyv:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:55:46.197] [DEBUG] debug-file - polyv : default@CreateHarBuildProfile cost memory 0.081298828125 +[2025-07-09T18:55:46.197] [INFO] debug-file - UP-TO-DATE :polyv:default@CreateHarBuildProfile... +[2025-07-09T18:55:46.198] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:55:46.198] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:55:46.198] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-business. +[2025-07-09T18:55:46.199] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-core-ijk. +[2025-07-09T18:55:46.199] [DEBUG] debug-file - Executing task :polyv:default@ConfigureCmake +[2025-07-09T18:55:46.199] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:55:46.199] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:55:46.199] [DEBUG] debug-file - polyv : default@ConfigureCmake cost memory 0.039306640625 +[2025-07-09T18:55:46.199] [DEBUG] debug-file - runTaskFromQueue task cost before running: 832 ms +[2025-07-09T18:55:46.199] [INFO] debug-file - Finished :polyv:default@ConfigureCmake... after 1 ms +[2025-07-09T18:55:46.200] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:55:46.200] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:55:46.201] [DEBUG] debug-file - Executing task :polyv:default@MergeProfile +[2025-07-09T18:55:46.205] [DEBUG] debug-file - Incremental task polyv:default@MergeProfile pre-execution cost: 3 ms . +[2025-07-09T18:55:46.205] [DEBUG] debug-file - polyv : default@MergeProfile cost memory 0.3850860595703125 +[2025-07-09T18:55:46.206] [INFO] debug-file - UP-TO-DATE :polyv:default@MergeProfile... +[2025-07-09T18:55:46.207] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:55:46.207] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:55:46.207] [DEBUG] debug-file - Executing task :corekit:default@CreateHarBuildProfile +[2025-07-09T18:55:46.208] [DEBUG] debug-file - Task 'corekit:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.208] [DEBUG] debug-file - Incremental task corekit:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:55:46.208] [DEBUG] debug-file - corekit : default@CreateHarBuildProfile cost memory 0.080718994140625 +[2025-07-09T18:55:46.208] [INFO] debug-file - UP-TO-DATE :corekit:default@CreateHarBuildProfile... +[2025-07-09T18:55:46.209] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:55:46.209] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:55:46.209] [DEBUG] debug-file - Executing task :corekit:default@ConfigureCmake +[2025-07-09T18:55:46.209] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:55:46.209] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:55:46.209] [DEBUG] debug-file - corekit : default@ConfigureCmake cost memory 0.037261962890625 +[2025-07-09T18:55:46.209] [DEBUG] debug-file - runTaskFromQueue task cost before running: 842 ms +[2025-07-09T18:55:46.210] [INFO] debug-file - Finished :corekit:default@ConfigureCmake... after 1 ms +[2025-07-09T18:55:46.210] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:55:46.211] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:55:46.211] [DEBUG] debug-file - Executing task :corekit:default@MergeProfile +[2025-07-09T18:55:46.212] [DEBUG] debug-file - Incremental task corekit:default@MergeProfile pre-execution cost: 1 ms . +[2025-07-09T18:55:46.212] [DEBUG] debug-file - corekit : default@MergeProfile cost memory 0.15511322021484375 +[2025-07-09T18:55:46.212] [INFO] debug-file - UP-TO-DATE :corekit:default@MergeProfile... +[2025-07-09T18:55:46.213] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:55:46.213] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:55:46.214] [DEBUG] debug-file - Executing task :common:default@CreateHarBuildProfile +[2025-07-09T18:55:46.214] [DEBUG] debug-file - Task 'common:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.214] [DEBUG] debug-file - Incremental task common:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:55:46.214] [DEBUG] debug-file - common : default@CreateHarBuildProfile cost memory 0.08029937744140625 +[2025-07-09T18:55:46.215] [INFO] debug-file - UP-TO-DATE :common:default@CreateHarBuildProfile... +[2025-07-09T18:55:46.216] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:55:46.216] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:55:46.216] [DEBUG] debug-file - Executing task :common:default@ConfigureCmake +[2025-07-09T18:55:46.216] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:55:46.216] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:55:46.216] [DEBUG] debug-file - common : default@ConfigureCmake cost memory 0.03870391845703125 +[2025-07-09T18:55:46.216] [DEBUG] debug-file - runTaskFromQueue task cost before running: 849 ms +[2025-07-09T18:55:46.216] [INFO] debug-file - Finished :common:default@ConfigureCmake... after 1 ms +[2025-07-09T18:55:46.217] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:55:46.217] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:55:46.218] [DEBUG] debug-file - Executing task :common:default@MergeProfile +[2025-07-09T18:55:46.219] [DEBUG] debug-file - Incremental task common:default@MergeProfile pre-execution cost: 1 ms . +[2025-07-09T18:55:46.219] [DEBUG] debug-file - common : default@MergeProfile cost memory 0.1806640625 +[2025-07-09T18:55:46.220] [INFO] debug-file - UP-TO-DATE :common:default@MergeProfile... +[2025-07-09T18:55:46.222] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.222] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.222] [DEBUG] debug-file - Executing task :default:default@SyscapTransform +[2025-07-09T18:55:46.223] [DEBUG] debug-file - File: 'D:\202076work\hongmeng\newExpert\harmony\products\expert\src\main\syscap.json' from 'sysCapJsonPath' is not exists, just ignore. +[2025-07-09T18:55:46.223] [DEBUG] debug-file - Task 'default:default@SyscapTransform' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.224] [DEBUG] debug-file - default:default@SyscapTransform is not up-to-date, since the output file 'D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\syscap\default\rpcid.sc' does not exist. +[2025-07-09T18:55:46.224] [DEBUG] debug-file - Incremental task default:default@SyscapTransform pre-execution cost: 1 ms . +[2025-07-09T18:55:46.224] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.224] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.224] [DEBUG] debug-file - default : default@SyscapTransform cost memory 0.18372344970703125 +[2025-07-09T18:55:46.224] [DEBUG] debug-file - runTaskFromQueue task cost before running: 857 ms +[2025-07-09T18:55:46.224] [INFO] debug-file - Finished :default:default@SyscapTransform... after 2 ms +[2025-07-09T18:55:46.226] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.226] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.227] [DEBUG] debug-file - Executing task :default:default@ProcessRouterMap +[2025-07-09T18:55:46.238] [DEBUG] debug-file - Incremental task default:default@ProcessRouterMap pre-execution cost: 7 ms . +[2025-07-09T18:55:46.238] [DEBUG] debug-file - default : default@ProcessRouterMap cost memory 0.8826217651367188 +[2025-07-09T18:55:46.241] [INFO] debug-file - UP-TO-DATE :default:default@ProcessRouterMap... +[2025-07-09T18:55:46.242] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:55:46.242] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:55:46.242] [DEBUG] debug-file - Executing task :mypage:default@CreateHarBuildProfile +[2025-07-09T18:55:46.243] [DEBUG] debug-file - Task 'mypage:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.243] [DEBUG] debug-file - Incremental task mypage:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:55:46.243] [DEBUG] debug-file - mypage : default@CreateHarBuildProfile cost memory 0.0818939208984375 +[2025-07-09T18:55:46.243] [INFO] debug-file - UP-TO-DATE :mypage:default@CreateHarBuildProfile... +[2025-07-09T18:55:46.244] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:55:46.244] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:55:46.245] [DEBUG] debug-file - Executing task :register:default@CreateHarBuildProfile +[2025-07-09T18:55:46.245] [DEBUG] debug-file - Task 'register:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.245] [DEBUG] debug-file - Incremental task register:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:55:46.245] [DEBUG] debug-file - register : default@CreateHarBuildProfile cost memory 0.08111572265625 +[2025-07-09T18:55:46.245] [INFO] debug-file - UP-TO-DATE :register:default@CreateHarBuildProfile... +[2025-07-09T18:55:46.247] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:55:46.247] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:55:46.247] [DEBUG] debug-file - Executing task :basic:default@BuildNativeWithCmake +[2025-07-09T18:55:46.247] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:55:46.247] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:55:46.247] [DEBUG] debug-file - basic : default@BuildNativeWithCmake cost memory 0.03726959228515625 +[2025-07-09T18:55:46.247] [DEBUG] debug-file - runTaskFromQueue task cost before running: 880 ms +[2025-07-09T18:55:46.247] [INFO] debug-file - Finished :basic:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:55:46.248] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:55:46.248] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:55:46.249] [DEBUG] debug-file - Executing task :mypage:default@MergeProfile +[2025-07-09T18:55:46.251] [DEBUG] debug-file - Incremental task mypage:default@MergeProfile pre-execution cost: 2 ms . +[2025-07-09T18:55:46.251] [DEBUG] debug-file - mypage : default@MergeProfile cost memory 0.189453125 +[2025-07-09T18:55:46.251] [INFO] debug-file - UP-TO-DATE :mypage:default@MergeProfile... +[2025-07-09T18:55:46.252] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:55:46.252] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:55:46.253] [DEBUG] debug-file - Executing task :register:default@MergeProfile +[2025-07-09T18:55:46.254] [DEBUG] debug-file - Incremental task register:default@MergeProfile pre-execution cost: 1 ms . +[2025-07-09T18:55:46.254] [DEBUG] debug-file - register : default@MergeProfile cost memory 0.18924713134765625 +[2025-07-09T18:55:46.255] [INFO] debug-file - UP-TO-DATE :register:default@MergeProfile... +[2025-07-09T18:55:46.256] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:55:46.256] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:55:46.256] [DEBUG] debug-file - Executing task :scene_single_video:default@CreateHarBuildProfile +[2025-07-09T18:55:46.256] [DEBUG] debug-file - Task 'scene_single_video:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.257] [DEBUG] debug-file - Incremental task scene_single_video:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:55:46.257] [DEBUG] debug-file - scene_single_video : default@CreateHarBuildProfile cost memory 0.08104705810546875 +[2025-07-09T18:55:46.257] [INFO] debug-file - UP-TO-DATE :scene_single_video:default@CreateHarBuildProfile... +[2025-07-09T18:55:46.258] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:55:46.258] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:55:46.258] [DEBUG] debug-file - Executing task :polyv:default@BuildNativeWithCmake +[2025-07-09T18:55:46.258] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:55:46.258] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:55:46.258] [DEBUG] debug-file - polyv : default@BuildNativeWithCmake cost memory 0.0403594970703125 +[2025-07-09T18:55:46.258] [DEBUG] debug-file - runTaskFromQueue task cost before running: 891 ms +[2025-07-09T18:55:46.259] [INFO] debug-file - Finished :polyv:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:55:46.259] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:55:46.259] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:55:46.260] [DEBUG] debug-file - Executing task :scene_single_video:default@MergeProfile +[2025-07-09T18:55:46.264] [DEBUG] debug-file - Incremental task scene_single_video:default@MergeProfile pre-execution cost: 2 ms . +[2025-07-09T18:55:46.264] [DEBUG] debug-file - scene_single_video : default@MergeProfile cost memory 0.42006683349609375 +[2025-07-09T18:55:46.264] [INFO] debug-file - UP-TO-DATE :scene_single_video:default@MergeProfile... +[2025-07-09T18:55:46.265] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:55:46.265] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:55:46.266] [DEBUG] debug-file - Executing task :chatkit:default@CreateHarBuildProfile +[2025-07-09T18:55:46.266] [DEBUG] debug-file - Task 'chatkit:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.266] [DEBUG] debug-file - Incremental task chatkit:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:55:46.267] [DEBUG] debug-file - chatkit : default@CreateHarBuildProfile cost memory 0.0806427001953125 +[2025-07-09T18:55:46.267] [INFO] debug-file - UP-TO-DATE :chatkit:default@CreateHarBuildProfile... +[2025-07-09T18:55:46.268] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:55:46.268] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:55:46.268] [DEBUG] debug-file - Executing task :corekit:default@BuildNativeWithCmake +[2025-07-09T18:55:46.268] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:55:46.268] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:55:46.268] [DEBUG] debug-file - corekit : default@BuildNativeWithCmake cost memory 0.03729248046875 +[2025-07-09T18:55:46.269] [DEBUG] debug-file - runTaskFromQueue task cost before running: 901 ms +[2025-07-09T18:55:46.269] [INFO] debug-file - Finished :corekit:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:55:46.270] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:55:46.270] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:55:46.270] [DEBUG] debug-file - Executing task :chatkit:default@MergeProfile +[2025-07-09T18:55:46.276] [DEBUG] debug-file - Incremental task chatkit:default@MergeProfile pre-execution cost: 4 ms . +[2025-07-09T18:55:46.276] [DEBUG] debug-file - chatkit : default@MergeProfile cost memory -12.355133056640625 +[2025-07-09T18:55:46.277] [INFO] debug-file - UP-TO-DATE :chatkit:default@MergeProfile... +[2025-07-09T18:55:46.278] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:55:46.278] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:55:46.278] [DEBUG] debug-file - Executing task :common:default@BuildNativeWithCmake +[2025-07-09T18:55:46.279] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:55:46.279] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:55:46.279] [DEBUG] debug-file - common : default@BuildNativeWithCmake cost memory 0.03875732421875 +[2025-07-09T18:55:46.279] [DEBUG] debug-file - runTaskFromQueue task cost before running: 911 ms +[2025-07-09T18:55:46.279] [INFO] debug-file - Finished :common:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:55:46.280] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.280] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.281] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.281] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.281] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.281] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.281] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.281] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.281] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.281] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.281] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.281] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.281] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.281] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.281] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.289] [DEBUG] debug-file - Executing task :default:default@GenerateLoaderJson +[2025-07-09T18:55:46.291] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.291] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.291] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.291] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.291] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.291] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.291] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.291] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.291] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.291] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.291] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.291] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.291] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.293] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.293] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.293] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.293] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.293] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.294] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.296] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.297] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.297] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.298] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.298] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.298] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.298] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.337] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.337] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.337] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.337] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.337] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.337] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.337] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.337] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.337] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.337] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.337] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.337] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.337] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.340] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.340] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.340] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.340] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.340] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.340] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.343] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.343] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.343] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.344] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.344] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.344] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.344] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.348] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.348] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.349] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.349] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.349] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.349] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.352] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.352] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.352] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.353] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.353] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.353] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.353] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.451] [DEBUG] debug-file - Incremental task default:default@GenerateLoaderJson pre-execution cost: 116 ms . +[2025-07-09T18:55:46.451] [DEBUG] debug-file - default : default@GenerateLoaderJson cost memory 12.08203125 +[2025-07-09T18:55:46.453] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.453] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.453] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.453] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.453] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.453] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.453] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.453] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.454] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.454] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.454] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.454] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.454] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.456] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.456] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.456] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.456] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.456] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.456] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.459] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.459] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.459] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.460] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.460] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.460] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.460] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.461] [INFO] debug-file - UP-TO-DATE :default:default@GenerateLoaderJson... +[2025-07-09T18:55:46.463] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:55:46.463] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:55:46.463] [DEBUG] debug-file - Executing task :mypage:default@ConfigureCmake +[2025-07-09T18:55:46.463] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:55:46.463] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:55:46.464] [DEBUG] debug-file - mypage : default@ConfigureCmake cost memory 0.0390777587890625 +[2025-07-09T18:55:46.464] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 96 ms +[2025-07-09T18:55:46.464] [INFO] debug-file - Finished :mypage:default@ConfigureCmake... after 1 ms +[2025-07-09T18:55:46.465] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:55:46.465] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:55:46.465] [DEBUG] debug-file - Executing task :basic:default@BuildNativeWithNinja +[2025-07-09T18:55:46.465] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:55:46.465] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:55:46.466] [DEBUG] debug-file - basic : default@BuildNativeWithNinja cost memory 0.05753326416015625 +[2025-07-09T18:55:46.466] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 99 ms +[2025-07-09T18:55:46.466] [INFO] debug-file - Finished :basic:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:55:46.467] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:55:46.467] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:55:46.468] [DEBUG] debug-file - Executing task :register:default@ConfigureCmake +[2025-07-09T18:55:46.468] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:55:46.468] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:55:46.468] [DEBUG] debug-file - register : default@ConfigureCmake cost memory 0.039031982421875 +[2025-07-09T18:55:46.468] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 101 ms +[2025-07-09T18:55:46.468] [INFO] debug-file - Finished :register:default@ConfigureCmake... after 1 ms +[2025-07-09T18:55:46.469] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:55:46.469] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:55:46.470] [DEBUG] debug-file - Executing task :Home:default@CreateHarBuildProfile +[2025-07-09T18:55:46.470] [DEBUG] debug-file - Task 'Home:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.470] [DEBUG] debug-file - Incremental task Home:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:55:46.470] [DEBUG] debug-file - Home : default@CreateHarBuildProfile cost memory 0.07991790771484375 +[2025-07-09T18:55:46.470] [INFO] debug-file - UP-TO-DATE :Home:default@CreateHarBuildProfile... +[2025-07-09T18:55:46.471] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:55:46.472] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:55:46.472] [DEBUG] debug-file - Executing task :polyv:default@BuildNativeWithNinja +[2025-07-09T18:55:46.472] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:55:46.472] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:55:46.472] [DEBUG] debug-file - polyv : default@BuildNativeWithNinja cost memory 0.05989837646484375 +[2025-07-09T18:55:46.472] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 105 ms +[2025-07-09T18:55:46.473] [INFO] debug-file - Finished :polyv:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:55:46.474] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:55:46.474] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:55:46.474] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-business. +[2025-07-09T18:55:46.475] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-core-ijk. +[2025-07-09T18:55:46.475] [DEBUG] debug-file - Executing task :scene_single_video:default@ConfigureCmake +[2025-07-09T18:55:46.475] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:55:46.475] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:55:46.475] [DEBUG] debug-file - scene_single_video : default@ConfigureCmake cost memory 0.04038238525390625 +[2025-07-09T18:55:46.475] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 108 ms +[2025-07-09T18:55:46.475] [INFO] debug-file - Finished :scene_single_video:default@ConfigureCmake... after 1 ms +[2025-07-09T18:55:46.476] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:55:46.476] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:55:46.477] [DEBUG] debug-file - Executing task :Home:default@MergeProfile +[2025-07-09T18:55:46.482] [DEBUG] debug-file - Incremental task Home:default@MergeProfile pre-execution cost: 2 ms . +[2025-07-09T18:55:46.482] [DEBUG] debug-file - Home : default@MergeProfile cost memory 0.4824981689453125 +[2025-07-09T18:55:46.482] [INFO] debug-file - UP-TO-DATE :Home:default@MergeProfile... +[2025-07-09T18:55:46.483] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:55:46.483] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:55:46.484] [DEBUG] debug-file - Executing task :chatkit_ui:default@CreateHarBuildProfile +[2025-07-09T18:55:46.484] [DEBUG] debug-file - Task 'chatkit_ui:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.484] [DEBUG] debug-file - Incremental task chatkit_ui:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:55:46.484] [DEBUG] debug-file - chatkit_ui : default@CreateHarBuildProfile cost memory 0.07861328125 +[2025-07-09T18:55:46.484] [INFO] debug-file - UP-TO-DATE :chatkit_ui:default@CreateHarBuildProfile... +[2025-07-09T18:55:46.485] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:55:46.485] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:55:46.486] [DEBUG] debug-file - Executing task :conversationkit_ui:default@CreateHarBuildProfile +[2025-07-09T18:55:46.486] [DEBUG] debug-file - Task 'conversationkit_ui:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.486] [DEBUG] debug-file - Incremental task conversationkit_ui:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:55:46.486] [DEBUG] debug-file - conversationkit_ui : default@CreateHarBuildProfile cost memory 0.0791473388671875 +[2025-07-09T18:55:46.487] [INFO] debug-file - UP-TO-DATE :conversationkit_ui:default@CreateHarBuildProfile... +[2025-07-09T18:55:46.488] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:55:46.488] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:55:46.488] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@CreateHarBuildProfile +[2025-07-09T18:55:46.488] [DEBUG] debug-file - Task 'localconversationkit_ui:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.489] [DEBUG] debug-file - Incremental task localconversationkit_ui:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:55:46.489] [DEBUG] debug-file - localconversationkit_ui : default@CreateHarBuildProfile cost memory 0.0793304443359375 +[2025-07-09T18:55:46.489] [INFO] debug-file - UP-TO-DATE :localconversationkit_ui:default@CreateHarBuildProfile... +[2025-07-09T18:55:46.490] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:55:46.490] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:55:46.490] [DEBUG] debug-file - Executing task :corekit:default@BuildNativeWithNinja +[2025-07-09T18:55:46.490] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:55:46.490] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:55:46.491] [DEBUG] debug-file - corekit : default@BuildNativeWithNinja cost memory 0.056884765625 +[2025-07-09T18:55:46.491] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 123 ms +[2025-07-09T18:55:46.491] [INFO] debug-file - Finished :corekit:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:55:46.492] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:55:46.492] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:55:46.492] [DEBUG] debug-file - Resolve native package @nimsdk/conversation. +[2025-07-09T18:55:46.493] [DEBUG] debug-file - Resolve native package @nimsdk/message. +[2025-07-09T18:55:46.493] [DEBUG] debug-file - Resolve native package @nimsdk/team. +[2025-07-09T18:55:46.493] [DEBUG] debug-file - Resolve native package @nimsdk/user. +[2025-07-09T18:55:46.494] [DEBUG] debug-file - Resolve native package @nimsdk/friend. +[2025-07-09T18:55:46.494] [DEBUG] debug-file - Resolve native package @nimsdk/nim. +[2025-07-09T18:55:46.494] [DEBUG] debug-file - Executing task :chatkit:default@ConfigureCmake +[2025-07-09T18:55:46.495] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:55:46.495] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:55:46.495] [DEBUG] debug-file - chatkit : default@ConfigureCmake cost memory 0.04815673828125 +[2025-07-09T18:55:46.495] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 127 ms +[2025-07-09T18:55:46.495] [INFO] debug-file - Finished :chatkit:default@ConfigureCmake... after 1 ms +[2025-07-09T18:55:46.496] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:55:46.496] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:55:46.496] [DEBUG] debug-file - Executing task :chatkit_ui:default@MergeProfile +[2025-07-09T18:55:46.503] [DEBUG] debug-file - Incremental task chatkit_ui:default@MergeProfile pre-execution cost: 3 ms . +[2025-07-09T18:55:46.503] [DEBUG] debug-file - chatkit_ui : default@MergeProfile cost memory 0.5762863159179688 +[2025-07-09T18:55:46.503] [INFO] debug-file - UP-TO-DATE :chatkit_ui:default@MergeProfile... +[2025-07-09T18:55:46.504] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:55:46.504] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:55:46.505] [DEBUG] debug-file - Executing task :conversationkit_ui:default@MergeProfile +[2025-07-09T18:55:46.510] [DEBUG] debug-file - Incremental task conversationkit_ui:default@MergeProfile pre-execution cost: 2 ms . +[2025-07-09T18:55:46.510] [DEBUG] debug-file - conversationkit_ui : default@MergeProfile cost memory 0.5065383911132812 +[2025-07-09T18:55:46.510] [INFO] debug-file - UP-TO-DATE :conversationkit_ui:default@MergeProfile... +[2025-07-09T18:55:46.511] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:55:46.511] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:55:46.511] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@MergeProfile +[2025-07-09T18:55:46.517] [DEBUG] debug-file - Incremental task localconversationkit_ui:default@MergeProfile pre-execution cost: 3 ms . +[2025-07-09T18:55:46.517] [DEBUG] debug-file - localconversationkit_ui : default@MergeProfile cost memory 0.5068740844726562 +[2025-07-09T18:55:46.517] [INFO] debug-file - UP-TO-DATE :localconversationkit_ui:default@MergeProfile... +[2025-07-09T18:55:46.519] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:55:46.519] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:55:46.519] [DEBUG] debug-file - Executing task :common:default@BuildNativeWithNinja +[2025-07-09T18:55:46.519] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:55:46.519] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:55:46.520] [DEBUG] debug-file - common : default@BuildNativeWithNinja cost memory 0.05834197998046875 +[2025-07-09T18:55:46.520] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 152 ms +[2025-07-09T18:55:46.520] [INFO] debug-file - Finished :common:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:55:46.521] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:55:46.521] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:55:46.522] [DEBUG] debug-file - Executing task :mypage:default@BuildNativeWithCmake +[2025-07-09T18:55:46.522] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:55:46.522] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:55:46.522] [DEBUG] debug-file - mypage : default@BuildNativeWithCmake cost memory 0.0391082763671875 +[2025-07-09T18:55:46.522] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 155 ms +[2025-07-09T18:55:46.522] [INFO] debug-file - Finished :mypage:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:55:46.523] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:55:46.523] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:55:46.523] [DEBUG] debug-file - Executing task :basic:default@ProcessLibs +[2025-07-09T18:55:46.525] [DEBUG] debug-file - Incremental task basic:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:55:46.525] [DEBUG] debug-file - basic : default@ProcessLibs cost memory 0.1329803466796875 +[2025-07-09T18:55:46.525] [INFO] debug-file - UP-TO-DATE :basic:default@ProcessLibs... +[2025-07-09T18:55:46.526] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:55:46.526] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:55:46.526] [DEBUG] debug-file - Executing task :register:default@BuildNativeWithCmake +[2025-07-09T18:55:46.526] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:55:46.526] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:55:46.526] [DEBUG] debug-file - register : default@BuildNativeWithCmake cost memory 0.0390625 +[2025-07-09T18:55:46.526] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 159 ms +[2025-07-09T18:55:46.526] [INFO] debug-file - Finished :register:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:55:46.527] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:55:46.527] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:55:46.528] [DEBUG] debug-file - Executing task :polyv:default@ProcessLibs +[2025-07-09T18:55:46.529] [DEBUG] debug-file - Incremental task polyv:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:55:46.529] [DEBUG] debug-file - polyv : default@ProcessLibs cost memory 0.1295166015625 +[2025-07-09T18:55:46.529] [INFO] debug-file - UP-TO-DATE :polyv:default@ProcessLibs... +[2025-07-09T18:55:46.530] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:55:46.530] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:55:46.531] [DEBUG] debug-file - Executing task :scene_single_video:default@BuildNativeWithCmake +[2025-07-09T18:55:46.531] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:55:46.531] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:55:46.531] [DEBUG] debug-file - scene_single_video : default@BuildNativeWithCmake cost memory 0.03990936279296875 +[2025-07-09T18:55:46.531] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 164 ms +[2025-07-09T18:55:46.531] [INFO] debug-file - Finished :scene_single_video:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:55:46.532] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:55:46.532] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:55:46.533] [DEBUG] debug-file - Executing task :netease:default@CreateHarBuildProfile +[2025-07-09T18:55:46.533] [DEBUG] debug-file - Task 'netease:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.533] [DEBUG] debug-file - Incremental task netease:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:55:46.533] [DEBUG] debug-file - netease : default@CreateHarBuildProfile cost memory 0.0791473388671875 +[2025-07-09T18:55:46.534] [INFO] debug-file - UP-TO-DATE :netease:default@CreateHarBuildProfile... +[2025-07-09T18:55:46.535] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:55:46.535] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:55:46.535] [DEBUG] debug-file - Executing task :corekit:default@ProcessLibs +[2025-07-09T18:55:46.537] [DEBUG] debug-file - Incremental task corekit:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:55:46.537] [DEBUG] debug-file - corekit : default@ProcessLibs cost memory 0.12909698486328125 +[2025-07-09T18:55:46.537] [INFO] debug-file - UP-TO-DATE :corekit:default@ProcessLibs... +[2025-07-09T18:55:46.538] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:55:46.538] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:55:46.538] [DEBUG] debug-file - Executing task :chatkit:default@BuildNativeWithCmake +[2025-07-09T18:55:46.538] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:55:46.538] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:55:46.539] [DEBUG] debug-file - chatkit : default@BuildNativeWithCmake cost memory 0.04816436767578125 +[2025-07-09T18:55:46.539] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 171 ms +[2025-07-09T18:55:46.539] [INFO] debug-file - Finished :chatkit:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:55:46.540] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:55:46.540] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:55:46.540] [DEBUG] debug-file - Executing task :netease:default@MergeProfile +[2025-07-09T18:55:46.547] [DEBUG] debug-file - Incremental task netease:default@MergeProfile pre-execution cost: 3 ms . +[2025-07-09T18:55:46.547] [DEBUG] debug-file - netease : default@MergeProfile cost memory 0.6742095947265625 +[2025-07-09T18:55:46.548] [INFO] debug-file - UP-TO-DATE :netease:default@MergeProfile... +[2025-07-09T18:55:46.549] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:55:46.549] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:55:46.549] [DEBUG] debug-file - Executing task :common:default@ProcessLibs +[2025-07-09T18:55:46.551] [DEBUG] debug-file - Incremental task common:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:55:46.551] [DEBUG] debug-file - common : default@ProcessLibs cost memory 0.12918853759765625 +[2025-07-09T18:55:46.551] [INFO] debug-file - UP-TO-DATE :common:default@ProcessLibs... +[2025-07-09T18:55:46.552] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:55:46.552] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:55:46.554] [DEBUG] debug-file - Executing task :basic:default@DoNativeStrip +[2025-07-09T18:55:46.554] [DEBUG] debug-file - Task 'basic:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.554] [DEBUG] debug-file - Incremental task basic:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:55:46.554] [DEBUG] debug-file - basic : default@DoNativeStrip cost memory 0.07276153564453125 +[2025-07-09T18:55:46.554] [INFO] debug-file - UP-TO-DATE :basic:default@DoNativeStrip... +[2025-07-09T18:55:46.556] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:55:46.556] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:55:46.557] [DEBUG] debug-file - Executing task :polyv:default@DoNativeStrip +[2025-07-09T18:55:46.557] [DEBUG] debug-file - Task 'polyv:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.557] [DEBUG] debug-file - Incremental task polyv:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:55:46.557] [DEBUG] debug-file - polyv : default@DoNativeStrip cost memory 0.0719146728515625 +[2025-07-09T18:55:46.557] [INFO] debug-file - UP-TO-DATE :polyv:default@DoNativeStrip... +[2025-07-09T18:55:46.558] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:55:46.558] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:55:46.559] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-business. +[2025-07-09T18:55:46.559] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-core-ijk. +[2025-07-09T18:55:46.560] [DEBUG] debug-file - Executing task :Home:default@ConfigureCmake +[2025-07-09T18:55:46.560] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:55:46.560] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:55:46.560] [DEBUG] debug-file - Home : default@ConfigureCmake cost memory 0.0460357666015625 +[2025-07-09T18:55:46.560] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 192 ms +[2025-07-09T18:55:46.560] [INFO] debug-file - Finished :Home:default@ConfigureCmake... after 1 ms +[2025-07-09T18:55:46.561] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.561] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.562] [DEBUG] debug-file - Executing task :default:default@CreateBuildProfile +[2025-07-09T18:55:46.562] [DEBUG] debug-file - Task 'default:default@CreateBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.563] [DEBUG] debug-file - Incremental task default:default@CreateBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:55:46.563] [DEBUG] debug-file - default : default@CreateBuildProfile cost memory 0.09857177734375 +[2025-07-09T18:55:46.563] [INFO] debug-file - UP-TO-DATE :default:default@CreateBuildProfile... +[2025-07-09T18:55:46.564] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:55:46.564] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:55:46.566] [DEBUG] debug-file - Executing task :corekit:default@DoNativeStrip +[2025-07-09T18:55:46.566] [DEBUG] debug-file - Task 'corekit:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.566] [DEBUG] debug-file - Incremental task corekit:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:55:46.566] [DEBUG] debug-file - corekit : default@DoNativeStrip cost memory 0.072479248046875 +[2025-07-09T18:55:46.566] [INFO] debug-file - UP-TO-DATE :corekit:default@DoNativeStrip... +[2025-07-09T18:55:46.567] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:55:46.567] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:55:46.568] [DEBUG] debug-file - Resolve native package @nimsdk/conversation. +[2025-07-09T18:55:46.568] [DEBUG] debug-file - Resolve native package @nimsdk/message. +[2025-07-09T18:55:46.569] [DEBUG] debug-file - Resolve native package @nimsdk/team. +[2025-07-09T18:55:46.569] [DEBUG] debug-file - Resolve native package @nimsdk/user. +[2025-07-09T18:55:46.569] [DEBUG] debug-file - Resolve native package @nimsdk/friend. +[2025-07-09T18:55:46.570] [DEBUG] debug-file - Resolve native package @nimsdk/nim. +[2025-07-09T18:55:46.570] [DEBUG] debug-file - Executing task :chatkit_ui:default@ConfigureCmake +[2025-07-09T18:55:46.570] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:55:46.570] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:55:46.570] [DEBUG] debug-file - chatkit_ui : default@ConfigureCmake cost memory 0.04767608642578125 +[2025-07-09T18:55:46.571] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 203 ms +[2025-07-09T18:55:46.571] [INFO] debug-file - Finished :chatkit_ui:default@ConfigureCmake... after 1 ms +[2025-07-09T18:55:46.572] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:55:46.572] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:55:46.572] [DEBUG] debug-file - Resolve native package @nimsdk/conversation. +[2025-07-09T18:55:46.572] [DEBUG] debug-file - Resolve native package @nimsdk/message. +[2025-07-09T18:55:46.573] [DEBUG] debug-file - Resolve native package @nimsdk/team. +[2025-07-09T18:55:46.573] [DEBUG] debug-file - Resolve native package @nimsdk/user. +[2025-07-09T18:55:46.573] [DEBUG] debug-file - Resolve native package @nimsdk/friend. +[2025-07-09T18:55:46.574] [DEBUG] debug-file - Resolve native package @nimsdk/nim. +[2025-07-09T18:55:46.574] [DEBUG] debug-file - Executing task :conversationkit_ui:default@ConfigureCmake +[2025-07-09T18:55:46.574] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:55:46.574] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:55:46.574] [DEBUG] debug-file - conversationkit_ui : default@ConfigureCmake cost memory 0.04045867919921875 +[2025-07-09T18:55:46.574] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 207 ms +[2025-07-09T18:55:46.574] [INFO] debug-file - Finished :conversationkit_ui:default@ConfigureCmake... after 1 ms +[2025-07-09T18:55:46.575] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:55:46.575] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:55:46.575] [DEBUG] debug-file - Resolve native package @nimsdk/conversation. +[2025-07-09T18:55:46.576] [DEBUG] debug-file - Resolve native package @nimsdk/message. +[2025-07-09T18:55:46.576] [DEBUG] debug-file - Resolve native package @nimsdk/team. +[2025-07-09T18:55:46.576] [DEBUG] debug-file - Resolve native package @nimsdk/user. +[2025-07-09T18:55:46.577] [DEBUG] debug-file - Resolve native package @nimsdk/friend. +[2025-07-09T18:55:46.577] [DEBUG] debug-file - Resolve native package @nimsdk/nim. +[2025-07-09T18:55:46.578] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@ConfigureCmake +[2025-07-09T18:55:46.578] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:55:46.578] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:55:46.578] [DEBUG] debug-file - localconversationkit_ui : default@ConfigureCmake cost memory 0.04051971435546875 +[2025-07-09T18:55:46.578] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 211 ms +[2025-07-09T18:55:46.578] [INFO] debug-file - Finished :localconversationkit_ui:default@ConfigureCmake... after 1 ms +[2025-07-09T18:55:46.579] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.579] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.580] [DEBUG] debug-file - Executing task :default:default@MergeProfile +[2025-07-09T18:55:46.595] [DEBUG] debug-file - Incremental task default:default@MergeProfile pre-execution cost: 6 ms . +[2025-07-09T18:55:46.595] [DEBUG] debug-file - default : default@MergeProfile cost memory -13.163276672363281 +[2025-07-09T18:55:46.596] [INFO] debug-file - UP-TO-DATE :default:default@MergeProfile... +[2025-07-09T18:55:46.597] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:55:46.597] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:55:46.599] [DEBUG] debug-file - Executing task :common:default@DoNativeStrip +[2025-07-09T18:55:46.599] [DEBUG] debug-file - Task 'common:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.599] [DEBUG] debug-file - Incremental task common:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:55:46.599] [DEBUG] debug-file - common : default@DoNativeStrip cost memory 0.0713043212890625 +[2025-07-09T18:55:46.599] [INFO] debug-file - UP-TO-DATE :common:default@DoNativeStrip... +[2025-07-09T18:55:46.600] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:55:46.600] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:55:46.601] [DEBUG] debug-file - Executing task :mypage:default@BuildNativeWithNinja +[2025-07-09T18:55:46.601] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:55:46.601] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:55:46.601] [DEBUG] debug-file - mypage : default@BuildNativeWithNinja cost memory 0.0594635009765625 +[2025-07-09T18:55:46.601] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 234 ms +[2025-07-09T18:55:46.602] [INFO] debug-file - Finished :mypage:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:55:46.603] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:55:46.603] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:55:46.603] [DEBUG] debug-file - Executing task :register:default@BuildNativeWithNinja +[2025-07-09T18:55:46.604] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:55:46.604] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:55:46.604] [DEBUG] debug-file - register : default@BuildNativeWithNinja cost memory 0.05968475341796875 +[2025-07-09T18:55:46.604] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 237 ms +[2025-07-09T18:55:46.604] [INFO] debug-file - Finished :register:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:55:46.605] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:55:46.605] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:55:46.606] [DEBUG] debug-file - Executing task :scene_single_video:default@BuildNativeWithNinja +[2025-07-09T18:55:46.606] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:55:46.606] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:55:46.606] [DEBUG] debug-file - scene_single_video : default@BuildNativeWithNinja cost memory 0.05979156494140625 +[2025-07-09T18:55:46.606] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 239 ms +[2025-07-09T18:55:46.606] [INFO] debug-file - Finished :scene_single_video:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:55:46.607] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:55:46.607] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:55:46.608] [DEBUG] debug-file - Executing task :Home:default@BuildNativeWithCmake +[2025-07-09T18:55:46.608] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:55:46.608] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:55:46.608] [DEBUG] debug-file - Home : default@BuildNativeWithCmake cost memory 0.04709625244140625 +[2025-07-09T18:55:46.608] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 241 ms +[2025-07-09T18:55:46.608] [INFO] debug-file - Finished :Home:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:55:46.610] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:55:46.610] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:55:46.610] [DEBUG] debug-file - Executing task :chatkit:default@BuildNativeWithNinja +[2025-07-09T18:55:46.610] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:55:46.610] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:55:46.610] [DEBUG] debug-file - chatkit : default@BuildNativeWithNinja cost memory 0.06775665283203125 +[2025-07-09T18:55:46.611] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 243 ms +[2025-07-09T18:55:46.611] [INFO] debug-file - Finished :chatkit:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:55:46.612] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:55:46.612] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:55:46.612] [DEBUG] debug-file - Executing task :chatkit_ui:default@BuildNativeWithCmake +[2025-07-09T18:55:46.612] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:55:46.613] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:55:46.613] [DEBUG] debug-file - chatkit_ui : default@BuildNativeWithCmake cost memory 0.04769134521484375 +[2025-07-09T18:55:46.613] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 245 ms +[2025-07-09T18:55:46.613] [INFO] debug-file - Finished :chatkit_ui:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:55:46.614] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:55:46.614] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:55:46.614] [DEBUG] debug-file - Executing task :conversationkit_ui:default@BuildNativeWithCmake +[2025-07-09T18:55:46.614] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:55:46.614] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:55:46.614] [DEBUG] debug-file - conversationkit_ui : default@BuildNativeWithCmake cost memory 0.04047393798828125 +[2025-07-09T18:55:46.614] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 247 ms +[2025-07-09T18:55:46.615] [INFO] debug-file - Finished :conversationkit_ui:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:55:46.615] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:55:46.616] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:55:46.616] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@BuildNativeWithCmake +[2025-07-09T18:55:46.616] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:55:46.616] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:55:46.616] [DEBUG] debug-file - localconversationkit_ui : default@BuildNativeWithCmake cost memory 0.040557861328125 +[2025-07-09T18:55:46.616] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 249 ms +[2025-07-09T18:55:46.616] [INFO] debug-file - Finished :localconversationkit_ui:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:55:46.617] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.617] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.618] [DEBUG] debug-file - Executing task :default:default@MakePackInfo +[2025-07-09T18:55:46.619] [DEBUG] debug-file - Incremental task default:default@MakePackInfo pre-execution cost: 2 ms . +[2025-07-09T18:55:46.620] [DEBUG] debug-file - default : default@MakePackInfo cost memory 0.1583404541015625 +[2025-07-09T18:55:46.620] [INFO] debug-file - UP-TO-DATE :default:default@MakePackInfo... +[2025-07-09T18:55:46.621] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.621] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.622] [DEBUG] debug-file - Executing task :default:default@ProcessProfile +[2025-07-09T18:55:46.623] [DEBUG] debug-file - Incremental task default:default@ProcessProfile pre-execution cost: 1 ms . +[2025-07-09T18:55:46.623] [DEBUG] debug-file - default : default@ProcessProfile cost memory 0.139129638671875 +[2025-07-09T18:55:46.624] [INFO] debug-file - UP-TO-DATE :default:default@ProcessProfile... +[2025-07-09T18:55:46.625] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:55:46.625] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:55:46.625] [DEBUG] debug-file - Executing task :mypage:default@ProcessLibs +[2025-07-09T18:55:46.627] [DEBUG] debug-file - Incremental task mypage:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:55:46.627] [DEBUG] debug-file - mypage : default@ProcessLibs cost memory 0.13362884521484375 +[2025-07-09T18:55:46.627] [INFO] debug-file - UP-TO-DATE :mypage:default@ProcessLibs... +[2025-07-09T18:55:46.628] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:55:46.628] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:55:46.629] [DEBUG] debug-file - Executing task :register:default@ProcessLibs +[2025-07-09T18:55:46.630] [DEBUG] debug-file - Incremental task register:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:55:46.630] [DEBUG] debug-file - register : default@ProcessLibs cost memory 0.13399505615234375 +[2025-07-09T18:55:46.630] [INFO] debug-file - UP-TO-DATE :register:default@ProcessLibs... +[2025-07-09T18:55:46.631] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:55:46.631] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:55:46.632] [DEBUG] debug-file - Executing task :scene_single_video:default@ProcessLibs +[2025-07-09T18:55:46.633] [DEBUG] debug-file - Incremental task scene_single_video:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:55:46.633] [DEBUG] debug-file - scene_single_video : default@ProcessLibs cost memory 0.1312408447265625 +[2025-07-09T18:55:46.633] [INFO] debug-file - UP-TO-DATE :scene_single_video:default@ProcessLibs... +[2025-07-09T18:55:46.634] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:55:46.634] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:55:46.635] [DEBUG] debug-file - Executing task :chatkit:default@ProcessLibs +[2025-07-09T18:55:46.636] [DEBUG] debug-file - Incremental task chatkit:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:55:46.636] [DEBUG] debug-file - chatkit : default@ProcessLibs cost memory 0.1287994384765625 +[2025-07-09T18:55:46.636] [INFO] debug-file - UP-TO-DATE :chatkit:default@ProcessLibs... +[2025-07-09T18:55:46.637] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:55:46.637] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:55:46.638] [DEBUG] debug-file - Resolve native package @nimsdk/conversation. +[2025-07-09T18:55:46.638] [DEBUG] debug-file - Resolve native package @nimsdk/message. +[2025-07-09T18:55:46.638] [DEBUG] debug-file - Resolve native package @nimsdk/team. +[2025-07-09T18:55:46.639] [DEBUG] debug-file - Resolve native package @nimsdk/user. +[2025-07-09T18:55:46.639] [DEBUG] debug-file - Resolve native package @nimsdk/friend. +[2025-07-09T18:55:46.639] [DEBUG] debug-file - Resolve native package @nimsdk/nim. +[2025-07-09T18:55:46.640] [DEBUG] debug-file - Executing task :netease:default@ConfigureCmake +[2025-07-09T18:55:46.640] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:55:46.640] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:55:46.640] [DEBUG] debug-file - netease : default@ConfigureCmake cost memory 0.04840087890625 +[2025-07-09T18:55:46.640] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 273 ms +[2025-07-09T18:55:46.640] [INFO] debug-file - Finished :netease:default@ConfigureCmake... after 1 ms +[2025-07-09T18:55:46.642] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.642] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.643] [DEBUG] debug-file - restool module names: default,mypage,basic,Home,register,polyv,scene_single_video,corekit,chatkit,chatkit_ui,netease,conversationkit_ui,common,localconversationkit_ui; moduleName=default, taskName=default@ProcessResource +[2025-07-09T18:55:46.651] [DEBUG] debug-file - Executing task :default:default@ProcessResource +[2025-07-09T18:55:46.652] [DEBUG] debug-file - Incremental task default:default@ProcessResource pre-execution cost: 1 ms . +[2025-07-09T18:55:46.652] [DEBUG] debug-file - default : default@ProcessResource cost memory 0.204986572265625 +[2025-07-09T18:55:46.654] [INFO] debug-file - UP-TO-DATE :default:default@ProcessResource... +[2025-07-09T18:55:46.655] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:55:46.655] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:55:46.657] [DEBUG] debug-file - Executing task :mypage:default@DoNativeStrip +[2025-07-09T18:55:46.657] [DEBUG] debug-file - Task 'mypage:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.657] [DEBUG] debug-file - Incremental task mypage:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:55:46.657] [DEBUG] debug-file - mypage : default@DoNativeStrip cost memory 0.07369232177734375 +[2025-07-09T18:55:46.657] [INFO] debug-file - UP-TO-DATE :mypage:default@DoNativeStrip... +[2025-07-09T18:55:46.658] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:55:46.658] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:55:46.660] [DEBUG] debug-file - Executing task :register:default@DoNativeStrip +[2025-07-09T18:55:46.660] [DEBUG] debug-file - Task 'register:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.660] [DEBUG] debug-file - Incremental task register:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:55:46.660] [DEBUG] debug-file - register : default@DoNativeStrip cost memory 0.0741119384765625 +[2025-07-09T18:55:46.660] [INFO] debug-file - UP-TO-DATE :register:default@DoNativeStrip... +[2025-07-09T18:55:46.661] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:55:46.661] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:55:46.662] [DEBUG] debug-file - Executing task :scene_single_video:default@DoNativeStrip +[2025-07-09T18:55:46.662] [DEBUG] debug-file - Task 'scene_single_video:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.663] [DEBUG] debug-file - Incremental task scene_single_video:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:55:46.663] [DEBUG] debug-file - scene_single_video : default@DoNativeStrip cost memory 0.07341766357421875 +[2025-07-09T18:55:46.663] [INFO] debug-file - UP-TO-DATE :scene_single_video:default@DoNativeStrip... +[2025-07-09T18:55:46.664] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:55:46.664] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:55:46.665] [DEBUG] debug-file - Executing task :chatkit:default@DoNativeStrip +[2025-07-09T18:55:46.665] [DEBUG] debug-file - Task 'chatkit:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.666] [DEBUG] debug-file - Incremental task chatkit:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:55:46.666] [DEBUG] debug-file - chatkit : default@DoNativeStrip cost memory 0.07254791259765625 +[2025-07-09T18:55:46.666] [INFO] debug-file - UP-TO-DATE :chatkit:default@DoNativeStrip... +[2025-07-09T18:55:46.667] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:55:46.667] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:55:46.668] [DEBUG] debug-file - Executing task :netease:default@BuildNativeWithCmake +[2025-07-09T18:55:46.668] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:55:46.668] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:55:46.668] [DEBUG] debug-file - netease : default@BuildNativeWithCmake cost memory 0.048431396484375 +[2025-07-09T18:55:46.668] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 301 ms +[2025-07-09T18:55:46.668] [INFO] debug-file - Finished :netease:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:55:46.669] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.670] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.670] [DEBUG] debug-file - restool module names: default,mypage,basic,Home,register,polyv,scene_single_video,corekit,chatkit,chatkit_ui,netease,conversationkit_ui,common,localconversationkit_ui; moduleName=default, taskName=default@CompileResource +[2025-07-09T18:55:46.680] [DEBUG] debug-file - Executing task :default:default@CompileResource +[2025-07-09T18:55:46.753] [DEBUG] debug-file - Incremental task default:default@CompileResource pre-execution cost: 72 ms . +[2025-07-09T18:55:46.753] [DEBUG] debug-file - default : default@CompileResource cost memory -3.0159454345703125 +[2025-07-09T18:55:46.755] [INFO] debug-file - UP-TO-DATE :default:default@CompileResource... +[2025-07-09T18:55:46.756] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:55:46.756] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:55:46.757] [DEBUG] debug-file - Executing task :Home:default@BuildNativeWithNinja +[2025-07-09T18:55:46.757] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:55:46.757] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:55:46.757] [DEBUG] debug-file - Home : default@BuildNativeWithNinja cost memory 0.0675048828125 +[2025-07-09T18:55:46.757] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 390 ms +[2025-07-09T18:55:46.758] [INFO] debug-file - Finished :Home:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:55:46.759] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:55:46.759] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:55:46.759] [DEBUG] debug-file - Executing task :chatkit_ui:default@BuildNativeWithNinja +[2025-07-09T18:55:46.760] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:55:46.760] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:55:46.760] [DEBUG] debug-file - chatkit_ui : default@BuildNativeWithNinja cost memory 0.067474365234375 +[2025-07-09T18:55:46.760] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 393 ms +[2025-07-09T18:55:46.760] [INFO] debug-file - Finished :chatkit_ui:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:55:46.761] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:55:46.761] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:55:46.762] [DEBUG] debug-file - Executing task :conversationkit_ui:default@BuildNativeWithNinja +[2025-07-09T18:55:46.762] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:55:46.762] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:55:46.762] [DEBUG] debug-file - conversationkit_ui : default@BuildNativeWithNinja cost memory 0.0603790283203125 +[2025-07-09T18:55:46.762] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 395 ms +[2025-07-09T18:55:46.763] [INFO] debug-file - Finished :conversationkit_ui:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:55:46.764] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:55:46.764] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:55:46.764] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@BuildNativeWithNinja +[2025-07-09T18:55:46.764] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:55:46.765] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:55:46.765] [DEBUG] debug-file - localconversationkit_ui : default@BuildNativeWithNinja cost memory 0.060516357421875 +[2025-07-09T18:55:46.765] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 398 ms +[2025-07-09T18:55:46.766] [INFO] debug-file - Finished :localconversationkit_ui:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:55:46.768] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.768] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.768] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-core-ijk. +[2025-07-09T18:55:46.769] [DEBUG] debug-file - Resolve native package @nimsdk/conversation. +[2025-07-09T18:55:46.770] [DEBUG] debug-file - Resolve native package @nimsdk/localconversation. +[2025-07-09T18:55:46.770] [DEBUG] debug-file - Resolve native package @nimsdk/message. +[2025-07-09T18:55:46.771] [DEBUG] debug-file - Resolve native package @nimsdk/team. +[2025-07-09T18:55:46.771] [DEBUG] debug-file - Resolve native package @nimsdk/user. +[2025-07-09T18:55:46.772] [DEBUG] debug-file - Resolve native package @nimsdk/friend. +[2025-07-09T18:55:46.772] [DEBUG] debug-file - Resolve native package @nimsdk/nim. +[2025-07-09T18:55:46.773] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-business. +[2025-07-09T18:55:46.774] [DEBUG] debug-file - Executing task :default:default@ConfigureCmake +[2025-07-09T18:55:46.774] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.774] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.774] [DEBUG] debug-file - default : default@ConfigureCmake cost memory 0.0688323974609375 +[2025-07-09T18:55:46.774] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 407 ms +[2025-07-09T18:55:46.774] [INFO] debug-file - Finished :default:default@ConfigureCmake... after 1 ms +[2025-07-09T18:55:46.776] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.777] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.779] [DEBUG] debug-file - Executing task :default:default@CompileArkTS +[2025-07-09T18:55:46.789] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.789] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.789] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.789] [DEBUG] debug-file - Collect obfuscation config from library basic. +[2025-07-09T18:55:46.790] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:55:46.790] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:55:46.790] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.790] [DEBUG] debug-file - Collect obfuscation config from library mypage. +[2025-07-09T18:55:46.791] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:55:46.791] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:55:46.791] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.792] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.792] [DEBUG] debug-file - Collect obfuscation config from library Home. +[2025-07-09T18:55:46.792] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:55:46.792] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:55:46.793] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.794] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.794] [DEBUG] debug-file - Collect obfuscation config from library scene_single_video. +[2025-07-09T18:55:46.794] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:55:46.794] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:55:46.794] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.794] [DEBUG] debug-file - Collect obfuscation config from library polyv. +[2025-07-09T18:55:46.795] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:55:46.795] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:55:46.796] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.797] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.797] [DEBUG] debug-file - Collect obfuscation config from library register. +[2025-07-09T18:55:46.797] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:55:46.797] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:55:46.798] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.798] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.799] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.800] [DEBUG] debug-file - Collect obfuscation config from dependency @polyvharmony/httpdns-api. +[2025-07-09T18:55:46.801] [DEBUG] debug-file - Collect obfuscation config from dependency @polyvharmony/httpdns-impl-local. +[2025-07-09T18:55:46.801] [DEBUG] debug-file - Collect obfuscation config from dependency @polyvharmony/httpdns-impl-ali. +[2025-07-09T18:55:46.801] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/conversation. +[2025-07-09T18:55:46.802] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/localconversation. +[2025-07-09T18:55:46.802] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/message. +[2025-07-09T18:55:46.802] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/team. +[2025-07-09T18:55:46.803] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/user. +[2025-07-09T18:55:46.803] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/friend. +[2025-07-09T18:55:46.804] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/nim. +[2025-07-09T18:55:46.804] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/base. +[2025-07-09T18:55:46.804] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.804] [DEBUG] debug-file - Collect obfuscation config from library corekit. +[2025-07-09T18:55:46.805] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:55:46.805] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:55:46.805] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.805] [DEBUG] debug-file - Collect obfuscation config from library chatkit. +[2025-07-09T18:55:46.806] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:55:46.806] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:55:46.808] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.809] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.809] [DEBUG] debug-file - Collect obfuscation config from library netease. +[2025-07-09T18:55:46.809] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:55:46.809] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:55:46.809] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.810] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.810] [DEBUG] debug-file - Collect obfuscation config from library conversationkit_ui. +[2025-07-09T18:55:46.810] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:55:46.810] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:55:46.811] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.811] [DEBUG] debug-file - Collect obfuscation config from library common. +[2025-07-09T18:55:46.811] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:55:46.811] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:55:46.812] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.812] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.812] [DEBUG] debug-file - Collect obfuscation config from library chatkit_ui. +[2025-07-09T18:55:46.813] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:55:46.813] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:55:46.813] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.813] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.814] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.815] [DEBUG] debug-file - Collect obfuscation config from dependency @nimkit/markdown. +[2025-07-09T18:55:46.816] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.816] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.816] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.817] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.817] [DEBUG] debug-file - Collect obfuscation config from library localconversationkit_ui. +[2025-07-09T18:55:46.817] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:55:46.817] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:55:46.818] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.818] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:55:46.843] [DEBUG] debug-file - default:default@CompileArkTS is not up-to-date, since the input file 'D:\202076work\hongmeng\newExpert\harmony\features\Home\src\main\ets' has been changed. +[2025-07-09T18:55:46.844] [DEBUG] debug-file - Incremental task default:default@CompileArkTS pre-execution cost: 16 ms . +[2025-07-09T18:55:46.863] [DEBUG] debug-file - build config: +[2025-07-09T18:55:46.863] [DEBUG] debug-file - { + moduleType: 'entry', + perf: 0, + targetName: '.default', + packageManagerType: 'ohpm', + localPropertiesPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\local.properties', + isPreview: false, + isOhosTest: false, + isLocalTest: false, + buildMode: 'Release', + watchMode: 'false', + aceProfilePath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\res\\default\\resources\\base\\profile', + etsLoaderPath: 'D:\\Program Files\\Huawei\\DevEco Studioss\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader', + modulePath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', + testFrameworkPar: { + testMode: undefined, + coveragePathFilter: undefined, + coverageMode: undefined + }, + needCoverageInsert: false, + debugLine: false, + projectTopDir: 'D:\\202076work\\hongmeng\\newExpert\\harmony', + compileSdkVersion: 17, + compatibleSdkVersion: 14, + compatibleSdkVersionStage: undefined, + bundleName: 'c***s', + etsLoaderVersion: '5.0.5.165', + etsLoaderReleaseType: 'Release', + aotCompileMode: 'type', + apPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\modules.ap', + entryModuleName: 'default', + entryModuleVersion: '1.0.0', + entryPackageName: 'expert', + allModuleNameHash: '45f520d1ffaad6d8698c233baf217609', + externalApiPaths: [ + 'D:\\Program Files\\Huawei\\DevEco Studioss\\sdk\\default\\hms\\ets' + ], + compilerTypes: undefined, + isCrossplatform: false, + hvigorPluginFile: undefined, + compilePluginPath: undefined, + buildGeneratedProfilePath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\generated\\profile\\default', + bundleType: 'app', + arkTSVersion: undefined, + apiVersion: 17, + needCompleteSourcesMap: false, + isFaMode: false, + strictMode: { + caseSensitiveCheck: true, + useNormalizedOHMUrl: true, + noExternalImportByPath: true + }, + buildDir: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build', + deviceTypes: [ 'phone', 'tablet', '2in1' ], + useNormalizedOHMUrl: true, + pkgContextInfo: { + '@itcast/basic': { + packageName: '@itcast/basic', + bundleName: '*****', + moduleName: '', + version: '1.0.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + mypage: { + packageName: 'mypage', + bundleName: '*****', + moduleName: '', + version: '1.0.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + home: { + packageName: 'home', + bundleName: '*****', + moduleName: '', + version: '1.0.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + register: { + packageName: 'register', + bundleName: '*****', + moduleName: '', + version: '1.0.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + scene_single_video: { + packageName: 'scene_single_video', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + 'media-player-common': { + packageName: 'media-player-common', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/media-player-sdk': { + packageName: '@polyvharmony/media-player-sdk', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/media-player-core-ijk': { + packageName: '@polyvharmony/media-player-core-ijk', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/media-player-sdk-addon-cache-down': { + packageName: '@polyvharmony/media-player-sdk-addon-cache-down', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/httpdns-api': { + packageName: '@polyvharmony/httpdns-api', + bundleName: '*****', + moduleName: '', + version: '1.0.2', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/httpdns-impl-local': { + packageName: '@polyvharmony/httpdns-impl-local', + bundleName: '*****', + moduleName: '', + version: '1.0.2', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/httpdns-impl-ali': { + packageName: '@polyvharmony/httpdns-impl-ali', + bundleName: '*****', + moduleName: '', + version: '1.0.2', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/conversation': { + packageName: '@nimsdk/conversation', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/localconversation': { + packageName: '@nimsdk/localconversation', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/message': { + packageName: '@nimsdk/message', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/team': { + packageName: '@nimsdk/team', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/user': { + packageName: '@nimsdk/user', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/friend': { + packageName: '@nimsdk/friend', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/nim': { + packageName: '@nimsdk/nim', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/base': { + packageName: '@nimsdk/base', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/corekit': { + packageName: '@nimkit/corekit', + bundleName: '*****', + moduleName: '', + version: '1.1.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/chatkit': { + packageName: '@nimkit/chatkit', + bundleName: '*****', + moduleName: '', + version: '10.1.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + netease: { + packageName: 'netease', + bundleName: '*****', + moduleName: '', + version: '1.0.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/media-player-business': { + packageName: '@polyvharmony/media-player-business', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/media-player-core-api': { + packageName: '@polyvharmony/media-player-core-api', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/media-player-foundation': { + packageName: '@polyvharmony/media-player-foundation', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@aliyun/httpdns': { + packageName: '@aliyun/httpdns', + bundleName: '*****', + moduleName: '', + version: '1.1.1', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/vendor': { + packageName: '@nimsdk/vendor', + bundleName: '*****', + moduleName: '', + version: '1.0.0', + entryPath: 'Index.js', + isSO: false, + dependencyAlias: '' + }, + 'class-transformer': { + packageName: 'class-transformer', + bundleName: '*****', + moduleName: '', + version: '0.5.1', + entryPath: 'esm5/index.js', + isSO: false, + dependencyAlias: '' + }, + 'reflect-metadata': { + packageName: 'reflect-metadata', + bundleName: '*****', + moduleName: '', + version: '0.2.1', + entryPath: 'Reflect.js', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/conversationkit_ui': { + packageName: '@nimkit/conversationkit_ui', + bundleName: '*****', + moduleName: '', + version: '10.1.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/chatkit_ui': { + packageName: '@nimkit/chatkit_ui', + bundleName: '*****', + moduleName: '', + version: '10.1.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/common': { + packageName: '@nimkit/common', + bundleName: '*****', + moduleName: '', + version: '1.1.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/localconversationkit_ui': { + packageName: '@nimkit/localconversationkit_ui', + bundleName: '*****', + moduleName: '', + version: '10.1.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@ohos/httpclient': { + packageName: '@ohos/httpclient', + bundleName: '*****', + moduleName: '', + version: '2.0.2', + entryPath: 'index.ts', + isSO: false, + dependencyAlias: '' + }, + '@ohos/crypto-js': { + packageName: '@ohos/crypto-js', + bundleName: '*****', + moduleName: '', + version: '2.0.4', + entryPath: 'index.ts', + isSO: false, + dependencyAlias: '' + }, + '@aliyun/logger': { + packageName: '@aliyun/logger', + bundleName: '*****', + moduleName: '', + version: '1.0.2', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@aliyun/error': { + packageName: '@aliyun/error', + bundleName: '*****', + moduleName: '', + version: '1.0.2', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/markdown': { + packageName: '@nimkit/markdown', + bundleName: '*****', + moduleName: '', + version: '1.1.0', + entryPath: 'Index.js', + isSO: false, + dependencyAlias: '' + }, + '@ohos/pinyin4js': { + packageName: '@ohos/pinyin4js', + bundleName: '*****', + moduleName: '', + version: '2.0.1', + entryPath: 'index.ets', + isSO: false, + dependencyAlias: '' + }, + pako: { + packageName: 'pako', + bundleName: '*****', + moduleName: '', + version: '2.1.0', + entryPath: 'dist/pako.esm.mjs', + isSO: false, + dependencyAlias: '' + }, + 'base64-js': { + packageName: 'base64-js', + bundleName: '*****', + moduleName: '', + version: '1.5.1', + entryPath: 'index.js', + isSO: false, + dependencyAlias: '' + }, + '@ohos/dataorm': { + packageName: '@ohos/dataorm', + bundleName: '*****', + moduleName: '', + version: '2.2.6', + entryPath: 'index.ts', + isSO: false, + dependencyAlias: '' + }, + '@ohos/hypium': { + packageName: '@ohos/hypium', + bundleName: '*****', + moduleName: '', + version: '1.0.21', + entryPath: 'index.js', + isSO: false, + dependencyAlias: '' + }, + '@ohos/hamock': { + packageName: '@ohos/hamock', + bundleName: '*****', + moduleName: '', + version: '1.0.0', + entryPath: 'index.ets', + isSO: false, + dependencyAlias: '' + }, + expert: { + packageName: 'expert', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: 'src/main/', + isSO: false, + dependencyAlias: '' + }, + 'libplvsdl.so': { + packageName: 'libplvsdl.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libplvplayer_xcomponent.so': { + packageName: 'libplvplayer_xcomponent.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libplvplayer_napi.so': { + packageName: 'libplvplayer_napi.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libplvplayer.so': { + packageName: 'libplvplayer.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libplvffmpeg.so': { + packageName: 'libplvffmpeg.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libLebConnection.so': { + packageName: 'libLebConnection.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libc++_shared.so': { + packageName: 'libc++_shared.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libplvnative.so': { + packageName: 'libplvnative.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + } + }, + ohPackagePathMap: {}, + dependencyAliasMap: {}, + permission: { + requestPermissions: [ [Object], [Object], [Object] ], + definePermissions: undefined + }, + integratedHsp: false, + projectArkOption: { obfuscation: { ruleOptions: [Object], consumerRules: [] } }, + sourceMapDir: undefined, + branchElimination: false, + transformLib: undefined, + caseSensitiveCheck: true, + tsImportSendable: false, + resolveConflictMode: true, + depName2RootPath: {}, + depName2DepInfo: {}, + rootPathSet: [ 'D:\\202076work\\hongmeng\\newExpert\\harmony' ], + useNativeResolver: true, + shouldEmitJs: true, + autoLazyImport: undefined, + allowEmptyBundleName: false, + singleFileEmit: false, + arkCompileCachePath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\cache\\default\\default@CompileArkTS\\esmodule', + reExportCheckMode: 'noCheck', + aceModuleJsonPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\res\\default\\ark_module.json', + appResource: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\res\\default\\ResourceTable.txt', + rawFileResource: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\res\\default\\resources\\rawfile', + resourceTableHash: 'fa307d675b5bf0bf887914133e63ea09', + runtimeOS: 'HarmonyOS', + sdkInfo: 'false:17:5.0.5.165:Release', + aceModuleRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\src\\main\\ets', + compileMode: 'esmodule', + aceSuperVisualPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\src\\main\\supervisual', + aceBuildJson: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\loader\\default\\loader.json', + cachePath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\cache\\default\\default@CompileArkTS\\esmodule\\release', + aceModuleBuild: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\loader_out\\default\\ets', + supportChunks: true, + declaredFilesPath: undefined, + pkgNameToPkgBriefInfo: { + '@ohos/crypto-js': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@ohos+crypto-js@2.0.4\\oh_modules\\@ohos\\crypto-js', + pkgName: '@ohos/crypto-js', + sourceRoots: [Array] + }, + '@ohos/dataorm': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@ohos+dataorm@2.2.6\\oh_modules\\@ohos\\dataorm', + pkgName: '@ohos/dataorm', + sourceRoots: [Array] + }, + '@itcast/basic': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic', + pkgName: '@itcast/basic', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + mypage: { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage', + pkgName: 'mypage', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + home: { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home', + pkgName: 'home', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + register: { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register', + pkgName: 'register', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + scene_single_video: { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\scene_single_video', + pkgName: 'scene_single_video', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + 'media-player-common': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\polyv', + pkgName: 'media-player-common', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@polyvharmony/media-player-sdk': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+media-player-sdk@2.5.0\\oh_modules\\@polyvharmony\\media-player-sdk', + pkgName: '@polyvharmony/media-player-sdk', + sourceRoots: [Array] + }, + '@polyvharmony/media-player-core-ijk': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+media-player-core-ijk@2.5.0\\oh_modules\\@polyvharmony\\media-player-core-ijk', + pkgName: '@polyvharmony/media-player-core-ijk', + sourceRoots: [Array] + }, + '@polyvharmony/media-player-sdk-addon-cache-down': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\\oh_modules\\@polyvharmony\\media-player-sdk-addon-cache-down', + pkgName: '@polyvharmony/media-player-sdk-addon-cache-down', + sourceRoots: [Array] + }, + '@polyvharmony/httpdns-api': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+httpdns-api@1.0.2\\oh_modules\\@polyvharmony\\httpdns-api', + pkgName: '@polyvharmony/httpdns-api', + sourceRoots: [Array] + }, + '@polyvharmony/httpdns-impl-local': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+httpdns-impl-local@1.0.2\\oh_modules\\@polyvharmony\\httpdns-impl-local', + pkgName: '@polyvharmony/httpdns-impl-local', + sourceRoots: [Array] + }, + '@polyvharmony/httpdns-impl-ali': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+httpdns-impl-ali@1.0.2\\oh_modules\\@polyvharmony\\httpdns-impl-ali', + pkgName: '@polyvharmony/httpdns-impl-ali', + sourceRoots: [Array] + }, + '@nimsdk/conversation': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+conversation@10.9.10\\oh_modules\\@nimsdk\\conversation', + pkgName: '@nimsdk/conversation', + sourceRoots: [Array] + }, + '@nimsdk/localconversation': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+localconversation@10.9.10\\oh_modules\\@nimsdk\\localconversation', + pkgName: '@nimsdk/localconversation', + sourceRoots: [Array] + }, + '@nimsdk/message': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+message@10.9.10\\oh_modules\\@nimsdk\\message', + pkgName: '@nimsdk/message', + sourceRoots: [Array] + }, + '@nimsdk/team': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+team@10.9.10\\oh_modules\\@nimsdk\\team', + pkgName: '@nimsdk/team', + sourceRoots: [Array] + }, + '@nimsdk/user': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+user@10.9.10\\oh_modules\\@nimsdk\\user', + pkgName: '@nimsdk/user', + sourceRoots: [Array] + }, + '@nimsdk/friend': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+friend@10.9.10\\oh_modules\\@nimsdk\\friend', + pkgName: '@nimsdk/friend', + sourceRoots: [Array] + }, + '@nimsdk/nim': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+nim@10.9.10\\oh_modules\\@nimsdk\\nim', + pkgName: '@nimsdk/nim', + sourceRoots: [Array] + }, + '@nimsdk/base': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\\oh_modules\\@nimsdk\\base', + pkgName: '@nimsdk/base', + sourceRoots: [Array] + }, + '@nimkit/corekit': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit', + pkgName: '@nimkit/corekit', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@nimkit/chatkit': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit', + pkgName: '@nimkit/chatkit', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + netease: { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease', + pkgName: 'netease', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@polyvharmony/media-player-business': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+media-player-business@2.5.0\\oh_modules\\@polyvharmony\\media-player-business', + pkgName: '@polyvharmony/media-player-business', + sourceRoots: [Array] + }, + '@polyvharmony/media-player-core-api': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+media-player-core-api@2.5.0\\oh_modules\\@polyvharmony\\media-player-core-api', + pkgName: '@polyvharmony/media-player-core-api', + sourceRoots: [Array] + }, + '@polyvharmony/media-player-foundation': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+media-player-foundation@2.5.0\\oh_modules\\@polyvharmony\\media-player-foundation', + pkgName: '@polyvharmony/media-player-foundation', + sourceRoots: [Array] + }, + '@aliyun/httpdns': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@aliyun+httpdns@1.1.1\\oh_modules\\@aliyun\\httpdns', + pkgName: '@aliyun/httpdns', + sourceRoots: [Array] + }, + '@nimsdk/vendor': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+vendor@1.0.0\\oh_modules\\@nimsdk\\vendor', + pkgName: '@nimsdk/vendor', + sourceRoots: [Array] + }, + '@nimkit/conversationkit_ui': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\conversationkit_ui', + pkgName: '@nimkit/conversationkit_ui', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@nimkit/chatkit_ui': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit_ui', + pkgName: '@nimkit/chatkit_ui', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@nimkit/common': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\common', + pkgName: '@nimkit/common', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@nimkit/localconversationkit_ui': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\localconversationkit_ui', + pkgName: '@nimkit/localconversationkit_ui', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@ohos/httpclient': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@ohos+httpclient@2.0.2\\oh_modules\\@ohos\\httpclient', + pkgName: '@ohos/httpclient', + sourceRoots: [Array] + }, + '@aliyun/logger': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@aliyun+logger@1.0.2\\oh_modules\\@aliyun\\logger', + pkgName: '@aliyun/logger', + sourceRoots: [Array] + }, + '@aliyun/error': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@aliyun+error@1.0.2\\oh_modules\\@aliyun\\error', + pkgName: '@aliyun/error', + sourceRoots: [Array] + }, + '@nimkit/markdown': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimkit+markdown@1.1.0\\oh_modules\\@nimkit\\markdown', + pkgName: '@nimkit/markdown', + sourceRoots: [Array] + }, + '@ohos/pinyin4js': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@ohos+pinyin4js@2.0.1\\oh_modules\\@ohos\\pinyin4js', + pkgName: '@ohos/pinyin4js', + sourceRoots: [Array] + }, + expert: { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', + originalSourceRoots: undefined, + sourceRoots: [Array], + pkgName: 'expert' + } + }, + projectModel: { + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\src\\main': { + moduleName: 'default', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'default_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\src\\ohosTest': { + moduleName: 'default_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert': { + moduleName: 'default', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage\\src\\main': { + moduleName: 'mypage', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'mypage_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage\\src\\ohosTest': { + moduleName: 'mypage_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage': { + moduleName: 'mypage', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic\\src\\main': { + moduleName: 'basic', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'basic_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic\\src\\ohosTest': { + moduleName: 'basic_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic': { + moduleName: 'basic', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home\\src\\main': { + moduleName: 'Home', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'Home_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home\\src\\ohosTest': { + moduleName: 'Home_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home': { + moduleName: 'Home', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register\\src\\main': { + moduleName: 'register', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'register_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register\\src\\ohosTest': { + moduleName: 'register_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register': { + moduleName: 'register', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\polyv\\src\\main': { + moduleName: 'polyv', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\polyv', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\polyv': { + moduleName: 'polyv', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\polyv', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\scene_single_video\\src\\main': { + moduleName: 'scene_single_video', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\scene_single_video', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\scene_single_video': { + moduleName: 'scene_single_video', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\scene_single_video', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit\\src\\main': { + moduleName: 'corekit', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'corekit_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit\\src\\ohosTest': { + moduleName: 'corekit_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit': { + moduleName: 'corekit', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit\\src\\main': { + moduleName: 'chatkit', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'chatkit_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit\\src\\ohosTest': { + moduleName: 'chatkit_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit': { + moduleName: 'chatkit', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit_ui\\src\\main': { + moduleName: 'chatkit_ui', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit_ui', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit_ui': { + moduleName: 'chatkit_ui', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit_ui', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease\\src\\main': { + moduleName: 'netease', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'netease_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease\\src\\ohosTest': { + moduleName: 'netease_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease': { + moduleName: 'netease', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\conversationkit_ui\\src\\main': { + moduleName: 'conversationkit_ui', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\conversationkit_ui', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\conversationkit_ui': { + moduleName: 'conversationkit_ui', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\conversationkit_ui', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\common\\src\\main': { + moduleName: 'common', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\common', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\common': { + moduleName: 'common', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\common', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\localconversationkit_ui\\src\\main': { + moduleName: 'localconversationkit_ui', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\localconversationkit_ui', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\localconversationkit_ui': { + moduleName: 'localconversationkit_ui', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\localconversationkit_ui', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony': { + moduleName: 'harmony', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + } + }, + pkgJsonFileHash: 'c5b4c4619e5c0b6eb2ff38daa97e9242', + allModulePaths: [ + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\polyv', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\scene_single_video', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit_ui', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\conversationkit_ui', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\common', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\localconversationkit_ui' + ], + routerMap: {}, + obfuscationOptions: { + selfConfig: { ruleOptions: [Object], consumerRules: [] }, + sdkApis: [], + obfuscationCacheDir: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\cache\\default\\default@CompileArkTS\\esmodule\\release\\obfuscation', + exportRulePath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\obfuscation\\default\\obfuscation.txt', + dependencies: { libraries: [Array], hars: [Array] } + }, + compileBlockPkg: [ + '@polyvharmony/media-player-sdk', + '@polyvharmony/media-player-core-ijk', + '@polyvharmony/media-player-sdk-addon-cache-down', + '@polyvharmony/httpdns-api', + '@polyvharmony/httpdns-impl-local', + '@polyvharmony/httpdns-impl-ali', + '@nimsdk/conversation', + '@nimsdk/localconversation', + '@nimsdk/message', + '@nimsdk/team', + '@nimsdk/user', + '@nimsdk/friend', + '@nimsdk/nim', + '@nimsdk/base', + '@polyvharmony/media-player-business', + '@polyvharmony/media-player-core-api', + '@polyvharmony/media-player-foundation', + '@aliyun/httpdns', + '@aliyun/logger', + '@aliyun/error' + ], + mockParams: { + decorator: '@MockSetup', + packageName: '@ohos/hamock', + etsSourceRootPath: 'src/main/ets', + mockConfigPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\src\\mock\\mock-config.json5', + mockConfigKey2ModuleInfo: {} + }, + copyCodeResourceEnable: true, + copyCodeResourceExcludes: [], + uiTransformOptimization: false, + otherPaths: { + '@ohos/crypto-js/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@ohos+crypto-js@2.0.4\\oh_modules\\@ohos\\crypto-js\\src\\main\\*' + ], + '@ohos/dataorm/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@ohos+dataorm@2.2.6\\oh_modules\\@ohos\\dataorm\\src\\main\\*' + ], + '@itcast/basic/*': [ + '..\\..\\..\\..\\..\\commons\\basic\\src\\main\\*', + '..\\..\\..\\..\\..\\commons\\basic\\build\\default\\generated\\profile\\default\\*' + ], + 'mypage/*': [ + '..\\..\\..\\..\\..\\features\\mypage\\src\\main\\*', + '..\\..\\..\\..\\..\\features\\mypage\\build\\default\\generated\\profile\\default\\*' + ], + 'home/*': [ + '..\\..\\..\\..\\..\\features\\Home\\src\\main\\*', + '..\\..\\..\\..\\..\\features\\Home\\build\\default\\generated\\profile\\default\\*' + ], + 'register/*': [ + '..\\..\\..\\..\\..\\features\\register\\src\\main\\*', + '..\\..\\..\\..\\..\\features\\register\\build\\default\\generated\\profile\\default\\*' + ], + 'scene_single_video/*': [ + '..\\..\\..\\..\\..\\scene_single_video\\src\\main\\*', + '..\\..\\..\\..\\..\\scene_single_video\\build\\default\\generated\\profile\\default\\*' + ], + 'media-player-common/*': [ + '..\\..\\..\\..\\..\\polyv\\src\\main\\*', + '..\\..\\..\\..\\..\\polyv\\build\\default\\generated\\profile\\default\\*' + ], + '@polyvharmony/media-player-sdk/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+media-player-sdk@2.5.0\\oh_modules\\@polyvharmony\\media-player-sdk\\src\\main\\*' + ], + '@polyvharmony/media-player-core-ijk/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+media-player-core-ijk@2.5.0\\oh_modules\\@polyvharmony\\media-player-core-ijk\\src\\main\\*' + ], + '@polyvharmony/media-player-sdk-addon-cache-down/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\\oh_modules\\@polyvharmony\\media-player-sdk-addon-cache-down\\src\\main\\*' + ], + '@polyvharmony/httpdns-api/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+httpdns-api@1.0.2\\oh_modules\\@polyvharmony\\httpdns-api\\src\\main\\*' + ], + '@polyvharmony/httpdns-impl-local/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+httpdns-impl-local@1.0.2\\oh_modules\\@polyvharmony\\httpdns-impl-local\\src\\main\\*' + ], + '@polyvharmony/httpdns-impl-ali/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+httpdns-impl-ali@1.0.2\\oh_modules\\@polyvharmony\\httpdns-impl-ali\\src\\main\\*' + ], + '@nimsdk/conversation/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+conversation@10.9.10\\oh_modules\\@nimsdk\\conversation\\src\\main\\*' + ], + '@nimsdk/localconversation/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+localconversation@10.9.10\\oh_modules\\@nimsdk\\localconversation\\src\\main\\*' + ], + '@nimsdk/message/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+message@10.9.10\\oh_modules\\@nimsdk\\message\\src\\main\\*' + ], + '@nimsdk/team/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+team@10.9.10\\oh_modules\\@nimsdk\\team\\src\\main\\*' + ], + '@nimsdk/user/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+user@10.9.10\\oh_modules\\@nimsdk\\user\\src\\main\\*' + ], + '@nimsdk/friend/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+friend@10.9.10\\oh_modules\\@nimsdk\\friend\\src\\main\\*' + ], + '@nimsdk/nim/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+nim@10.9.10\\oh_modules\\@nimsdk\\nim\\src\\main\\*' + ], + '@nimsdk/base/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\\oh_modules\\@nimsdk\\base\\src\\main\\*' + ], + '@nimkit/corekit/*': [ + '..\\..\\..\\..\\..\\corekit\\src\\main\\*', + '..\\..\\..\\..\\..\\corekit\\build\\default\\generated\\profile\\default\\*' + ], + '@nimkit/chatkit/*': [ + '..\\..\\..\\..\\..\\chatkit\\src\\main\\*', + '..\\..\\..\\..\\..\\chatkit\\build\\default\\generated\\profile\\default\\*' + ], + 'netease/*': [ + '..\\..\\..\\..\\..\\features\\netease\\src\\main\\*', + '..\\..\\..\\..\\..\\features\\netease\\build\\default\\generated\\profile\\default\\*' + ], + '@polyvharmony/media-player-business/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+media-player-business@2.5.0\\oh_modules\\@polyvharmony\\media-player-business\\src\\main\\*' + ], + '@polyvharmony/media-player-core-api/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+media-player-core-api@2.5.0\\oh_modules\\@polyvharmony\\media-player-core-api\\src\\main\\*' + ], + '@polyvharmony/media-player-foundation/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+media-player-foundation@2.5.0\\oh_modules\\@polyvharmony\\media-player-foundation\\src\\main\\*' + ], + '@aliyun/httpdns/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@aliyun+httpdns@1.1.1\\oh_modules\\@aliyun\\httpdns\\src\\main\\*' + ], + '@nimsdk/vendor/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+vendor@1.0.0\\oh_modules\\@nimsdk\\vendor\\src\\main\\*' + ], + '@nimkit/conversationkit_ui/*': [ + '..\\..\\..\\..\\..\\conversationkit_ui\\src\\main\\*', + '..\\..\\..\\..\\..\\conversationkit_ui\\build\\default\\generated\\profile\\default\\*' + ], + '@nimkit/chatkit_ui/*': [ + '..\\..\\..\\..\\..\\chatkit_ui\\src\\main\\*', + '..\\..\\..\\..\\..\\chatkit_ui\\build\\default\\generated\\profile\\default\\*' + ], + '@nimkit/common/*': [ + '..\\..\\..\\..\\..\\common\\src\\main\\*', + '..\\..\\..\\..\\..\\common\\build\\default\\generated\\profile\\default\\*' + ], + '@nimkit/localconversationkit_ui/*': [ + '..\\..\\..\\..\\..\\localconversationkit_ui\\src\\main\\*', + '..\\..\\..\\..\\..\\localconversationkit_ui\\build\\default\\generated\\profile\\default\\*' + ], + '@ohos/httpclient/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@ohos+httpclient@2.0.2\\oh_modules\\@ohos\\httpclient\\src\\main\\*' + ], + '@aliyun/logger/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@aliyun+logger@1.0.2\\oh_modules\\@aliyun\\logger\\src\\main\\*' + ], + '@aliyun/error/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@aliyun+error@1.0.2\\oh_modules\\@aliyun\\error\\src\\main\\*' + ], + '@nimkit/markdown/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimkit+markdown@1.1.0\\oh_modules\\@nimkit\\markdown\\src\\main\\*' + ], + '@ohos/pinyin4js/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@ohos+pinyin4js@2.0.1\\oh_modules\\@ohos\\pinyin4js\\src\\main\\*' + ], + 'expert/*': [ + '..\\*', + '..\\..\\..\\build\\default\\generated\\profile\\default\\*' + ] + }, + collectImportersConfig: undefined +} +[2025-07-09T18:55:46.865] [DEBUG] debug-file - Compile arkts with external api path: D:\Program Files\Huawei\DevEco Studioss\sdk\default\hms\ets +[2025-07-09T18:55:46.866] [DEBUG] debug-file - default@CompileArkTS work[73] is submitted. +[2025-07-09T18:55:46.867] [DEBUG] debug-file - default@CompileArkTS work[73] is pushed to ready queue. +[2025-07-09T18:55:46.867] [DEBUG] debug-file - A work dispatched to worker[15] failed because unable to get work from ready queue. +[2025-07-09T18:55:46.867] [DEBUG] debug-file - A work dispatched to worker[14] failed because unable to get work from ready queue. +[2025-07-09T18:55:46.867] [DEBUG] debug-file - A work dispatched to worker[13] failed because unable to get work from ready queue. +[2025-07-09T18:55:46.867] [DEBUG] debug-file - A work dispatched to worker[12] failed because unable to get work from ready queue. +[2025-07-09T18:55:46.867] [DEBUG] debug-file - A work dispatched to worker[11] failed because unable to get work from ready queue. +[2025-07-09T18:55:46.867] [DEBUG] debug-file - A work dispatched to worker[10] failed because unable to get work from ready queue. +[2025-07-09T18:55:46.867] [DEBUG] debug-file - A work dispatched to worker[9] failed because unable to get work from ready queue. +[2025-07-09T18:55:46.867] [DEBUG] debug-file - A work dispatched to worker[8] failed because unable to get work from ready queue. +[2025-07-09T18:55:46.867] [DEBUG] debug-file - A work dispatched to worker[7] failed because unable to get work from ready queue. +[2025-07-09T18:55:46.867] [DEBUG] debug-file - A work dispatched to worker[6] failed because unable to get work from ready queue. +[2025-07-09T18:55:46.867] [DEBUG] debug-file - A work dispatched to worker[5] failed because unable to get work from ready queue. +[2025-07-09T18:55:46.867] [DEBUG] debug-file - default@CompileArkTS work[73] has been dispatched to worker[4]. +[2025-07-09T18:55:46.867] [DEBUG] debug-file - default@CompileArkTS work[73] is dispatched. +[2025-07-09T18:55:46.868] [DEBUG] debug-file - CopyResources startTime: 36904595200100 +[2025-07-09T18:55:46.868] [DEBUG] debug-file - default@CompileArkTS work[74] is submitted. +[2025-07-09T18:55:46.868] [DEBUG] debug-file - default@CompileArkTS work[74] is pushed to ready queue. +[2025-07-09T18:55:46.868] [DEBUG] debug-file - A work dispatched to worker[15] failed because unable to get work from ready queue. +[2025-07-09T18:55:46.868] [DEBUG] debug-file - Create resident worker with id: 14. +[2025-07-09T18:55:46.870] [DEBUG] debug-file - default@CompileArkTS work[74] has been dispatched to worker[14]. +[2025-07-09T18:55:46.870] [DEBUG] debug-file - default@CompileArkTS work[74] is dispatched. +[2025-07-09T18:55:46.871] [DEBUG] debug-file - default : default@CompileArkTS cost memory -1.0347442626953125 +[2025-07-09T18:55:46.872] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.872] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.875] [DEBUG] debug-file - Executing task :default:default@BuildJS +[2025-07-09T18:55:46.881] [DEBUG] debug-file - default : default@BuildJS cost memory 0.6215591430664062 +[2025-07-09T18:55:46.881] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 514 ms +[2025-07-09T18:55:46.882] [INFO] debug-file - Finished :default:default@BuildJS... after 7 ms +[2025-07-09T18:55:46.883] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:55:46.884] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:55:46.884] [DEBUG] debug-file - Executing task :Home:default@ProcessLibs +[2025-07-09T18:55:46.886] [DEBUG] debug-file - Incremental task Home:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:55:46.886] [DEBUG] debug-file - Home : default@ProcessLibs cost memory 0.1337890625 +[2025-07-09T18:55:46.887] [INFO] debug-file - UP-TO-DATE :Home:default@ProcessLibs... +[2025-07-09T18:55:46.888] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:55:46.888] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:55:46.888] [DEBUG] debug-file - Executing task :chatkit_ui:default@ProcessLibs +[2025-07-09T18:55:46.890] [DEBUG] debug-file - Incremental task chatkit_ui:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:55:46.890] [DEBUG] debug-file - chatkit_ui : default@ProcessLibs cost memory 0.13074493408203125 +[2025-07-09T18:55:46.890] [INFO] debug-file - UP-TO-DATE :chatkit_ui:default@ProcessLibs... +[2025-07-09T18:55:46.892] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:55:46.892] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:55:46.892] [DEBUG] debug-file - Executing task :conversationkit_ui:default@ProcessLibs +[2025-07-09T18:55:46.894] [DEBUG] debug-file - Incremental task conversationkit_ui:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:55:46.894] [DEBUG] debug-file - conversationkit_ui : default@ProcessLibs cost memory 0.13167572021484375 +[2025-07-09T18:55:46.895] [INFO] debug-file - UP-TO-DATE :conversationkit_ui:default@ProcessLibs... +[2025-07-09T18:55:46.896] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:55:46.896] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:55:46.897] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@ProcessLibs +[2025-07-09T18:55:46.898] [DEBUG] debug-file - Incremental task localconversationkit_ui:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:55:46.898] [DEBUG] debug-file - localconversationkit_ui : default@ProcessLibs cost memory 0.13213348388671875 +[2025-07-09T18:55:46.899] [INFO] debug-file - UP-TO-DATE :localconversationkit_ui:default@ProcessLibs... +[2025-07-09T18:55:46.900] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.900] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.901] [DEBUG] debug-file - Executing task :default:default@BuildNativeWithCmake +[2025-07-09T18:55:46.901] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.901] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.901] [DEBUG] debug-file - default : default@BuildNativeWithCmake cost memory 0.0688629150390625 +[2025-07-09T18:55:46.901] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 534 ms +[2025-07-09T18:55:46.901] [INFO] debug-file - Finished :default:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:55:46.903] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:55:46.903] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:55:46.905] [DEBUG] debug-file - Executing task :Home:default@DoNativeStrip +[2025-07-09T18:55:46.905] [DEBUG] debug-file - Task 'Home:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.905] [DEBUG] debug-file - Incremental task Home:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:55:46.905] [DEBUG] debug-file - Home : default@DoNativeStrip cost memory 0.07342529296875 +[2025-07-09T18:55:46.905] [INFO] debug-file - UP-TO-DATE :Home:default@DoNativeStrip... +[2025-07-09T18:55:46.907] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:55:46.907] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:55:46.910] [DEBUG] debug-file - Executing task :chatkit_ui:default@DoNativeStrip +[2025-07-09T18:55:46.910] [DEBUG] debug-file - Task 'chatkit_ui:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.911] [DEBUG] debug-file - Incremental task chatkit_ui:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:55:46.911] [DEBUG] debug-file - chatkit_ui : default@DoNativeStrip cost memory 0.0731964111328125 +[2025-07-09T18:55:46.911] [INFO] debug-file - UP-TO-DATE :chatkit_ui:default@DoNativeStrip... +[2025-07-09T18:55:46.913] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:55:46.913] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:55:46.915] [DEBUG] debug-file - Executing task :conversationkit_ui:default@DoNativeStrip +[2025-07-09T18:55:46.916] [DEBUG] debug-file - Task 'conversationkit_ui:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.916] [DEBUG] debug-file - Incremental task conversationkit_ui:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:55:46.916] [DEBUG] debug-file - conversationkit_ui : default@DoNativeStrip cost memory 0.0734405517578125 +[2025-07-09T18:55:46.916] [INFO] debug-file - UP-TO-DATE :conversationkit_ui:default@DoNativeStrip... +[2025-07-09T18:55:46.918] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:55:46.918] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:55:46.920] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@DoNativeStrip +[2025-07-09T18:55:46.920] [DEBUG] debug-file - Task 'localconversationkit_ui:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.920] [DEBUG] debug-file - Incremental task localconversationkit_ui:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:55:46.920] [DEBUG] debug-file - localconversationkit_ui : default@DoNativeStrip cost memory 0.07390594482421875 +[2025-07-09T18:55:46.920] [INFO] debug-file - UP-TO-DATE :localconversationkit_ui:default@DoNativeStrip... +[2025-07-09T18:55:46.921] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:55:46.922] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:55:46.922] [DEBUG] debug-file - Executing task :netease:default@BuildNativeWithNinja +[2025-07-09T18:55:46.922] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:55:46.922] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:55:46.923] [DEBUG] debug-file - netease : default@BuildNativeWithNinja cost memory 0.0688323974609375 +[2025-07-09T18:55:46.923] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 556 ms +[2025-07-09T18:55:46.923] [INFO] debug-file - Finished :netease:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:55:46.926] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:55:46.926] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:55:46.926] [DEBUG] debug-file - Executing task :netease:default@ProcessLibs +[2025-07-09T18:55:46.928] [DEBUG] debug-file - Incremental task netease:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:55:46.928] [DEBUG] debug-file - netease : default@ProcessLibs cost memory 0.1333465576171875 +[2025-07-09T18:55:46.928] [INFO] debug-file - UP-TO-DATE :netease:default@ProcessLibs... +[2025-07-09T18:55:46.930] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:55:46.930] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:55:46.931] [DEBUG] debug-file - Executing task :netease:default@DoNativeStrip +[2025-07-09T18:55:46.931] [DEBUG] debug-file - Task 'netease:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.932] [DEBUG] debug-file - Incremental task netease:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:55:46.932] [DEBUG] debug-file - netease : default@DoNativeStrip cost memory 0.07381439208984375 +[2025-07-09T18:55:46.932] [INFO] debug-file - UP-TO-DATE :netease:default@DoNativeStrip... +[2025-07-09T18:55:46.933] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.934] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.934] [DEBUG] debug-file - Executing task :default:default@BuildNativeWithNinja +[2025-07-09T18:55:46.934] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.934] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.935] [DEBUG] debug-file - default : default@BuildNativeWithNinja cost memory 0.08998870849609375 +[2025-07-09T18:55:46.935] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 568 ms +[2025-07-09T18:55:46.935] [INFO] debug-file - Finished :default:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:55:46.937] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.937] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.937] [DEBUG] debug-file - Executing task :default:default@ProcessLibs +[2025-07-09T18:55:46.969] [DEBUG] debug-file - Incremental task default:default@ProcessLibs pre-execution cost: 10 ms . +[2025-07-09T18:55:46.969] [DEBUG] debug-file - default : default@ProcessLibs cost memory 4.822395324707031 +[2025-07-09T18:55:46.970] [INFO] debug-file - UP-TO-DATE :default:default@ProcessLibs... +[2025-07-09T18:55:46.972] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.972] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.973] [DEBUG] debug-file - Executing task :default:default@DoNativeStrip +[2025-07-09T18:55:46.973] [DEBUG] debug-file - Task 'default:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.976] [DEBUG] debug-file - Incremental task default:default@DoNativeStrip pre-execution cost: 3 ms . +[2025-07-09T18:55:46.976] [DEBUG] debug-file - default : default@DoNativeStrip cost memory 0.41497802734375 +[2025-07-09T18:55:46.976] [INFO] debug-file - UP-TO-DATE :default:default@DoNativeStrip... +[2025-07-09T18:55:46.978] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:46.978] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:46.979] [DEBUG] debug-file - Executing task :default:default@CacheNativeLibs +[2025-07-09T18:55:46.979] [DEBUG] debug-file - Task 'default:default@CacheNativeLibs' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:46.982] [DEBUG] debug-file - Incremental task default:default@CacheNativeLibs pre-execution cost: 3 ms . +[2025-07-09T18:55:46.982] [DEBUG] debug-file - default : default@CacheNativeLibs cost memory 0.4287261962890625 +[2025-07-09T18:55:46.982] [INFO] debug-file - UP-TO-DATE :default:default@CacheNativeLibs... +[2025-07-09T18:55:47.578] [DEBUG] debug-file - worker[14] has one work done. +[2025-07-09T18:55:47.578] [DEBUG] debug-file - CopyResources is end, endTime: 36905305824200 +[2025-07-09T18:55:47.578] [DEBUG] debug-file - default@CompileArkTS work[74] done. +[2025-07-09T18:55:47.578] [DEBUG] debug-file - A work dispatched to worker[14] failed because unable to get work from ready queue. +[2025-07-09T18:55:51.763] [DEBUG] debug-file - worker[4] has one work done. +[2025-07-09T18:55:51.767] [DEBUG] debug-file - default@CompileArkTS work[73] done. +[2025-07-09T18:55:51.767] [DEBUG] debug-file - A work dispatched to worker[4] failed because unable to get work from ready queue. +[2025-07-09T18:55:51.771] [INFO] debug-file - Finished :default:default@CompileArkTS... after 4 s 983 ms +[2025-07-09T18:55:51.772] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:51.772] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:51.773] [DEBUG] debug-file - Executing task :default:default@GeneratePkgModuleJson +[2025-07-09T18:55:51.773] [DEBUG] debug-file - Task 'default:default@GeneratePkgModuleJson' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:55:51.773] [DEBUG] debug-file - Incremental task default:default@GeneratePkgModuleJson pre-execution cost: 1 ms . +[2025-07-09T18:55:51.774] [DEBUG] debug-file - default : default@GeneratePkgModuleJson cost memory 0.070068359375 +[2025-07-09T18:55:51.774] [INFO] debug-file - UP-TO-DATE :default:default@GeneratePkgModuleJson... +[2025-07-09T18:55:51.775] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:51.775] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:51.779] [DEBUG] debug-file - Executing task :default:default@PackageHap +[2025-07-09T18:55:51.784] [WARN] debug-file - Bytecode HARs [@polyvharmony/media-player-sdk, @polyvharmony/media-player-core-ijk, @polyvharmony/media-player-sdk-addon-cache-down, @polyvharmony/httpdns-api, @polyvharmony/httpdns-impl-local, @polyvharmony/httpdns-impl-ali, @nimsdk/conversation, @nimsdk/localconversation, @nimsdk/message, @nimsdk/team, @nimsdk/user, @nimsdk/friend, @nimsdk/nim, @nimsdk/base, @polyvharmony/media-player-business, @polyvharmony/media-player-core-api, @polyvharmony/media-player-foundation, @aliyun/httpdns, @aliyun/logger, @aliyun/error] to integrate are not obfuscated and will not be obfuscated later. +[2025-07-09T18:55:51.784] [WARN] debug-file - If obfuscation is needed, enable obfuscation settings in this build process; failing to do so may prevent future obfuscation. + Properly configure obfuscation rules to avoid runtime issues. +[2025-07-09T18:55:51.802] [DEBUG] debug-file - default:default@PackageHap is not up-to-date, since the input file 'D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader_out\default\ets' has been changed. +[2025-07-09T18:55:51.802] [DEBUG] debug-file - Incremental task default:default@PackageHap pre-execution cost: 18 ms . +[2025-07-09T18:55:51.802] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:51.802] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:51.803] [DEBUG] debug-file - Use tool [D:\Program Files\Huawei\DevEco Studioss\sdk\default\openharmony\toolchains\lib\app_packing_tool.jar] + [ + 'java', + '-Dfile.encoding=GBK', + '-jar', + 'D:\\Program Files\\Huawei\\DevEco Studioss\\sdk\\default\\openharmony\\toolchains\\lib\\app_packing_tool.jar', + '--mode', + 'hap', + '--force', + 'true', + '--lib-path', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\stripped_native_libs\\default', + '--json-path', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\package\\default\\module.json', + '--resources-path', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\res\\default\\resources', + '--index-path', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\res\\default\\resources.index', + '--pack-info-path', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\outputs\\default\\pack.info', + '--out-path', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\outputs\\default\\default-default-unsigned.hap', + '--ets-path', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\loader_out\\default\\ets', + '--pkg-context-path', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\loader\\default\\pkgContextInfo.json' +] +[2025-07-09T18:55:51.804] [DEBUG] debug-file - default@PackageHap work[75] is submitted. +[2025-07-09T18:55:51.805] [DEBUG] debug-file - default@PackageHap work[75] is pushed to ready queue. +[2025-07-09T18:55:51.805] [DEBUG] debug-file - A work dispatched to worker[15] failed because unable to get work from ready queue. +[2025-07-09T18:55:51.805] [DEBUG] debug-file - default@PackageHap work[75] has been dispatched to worker[14]. +[2025-07-09T18:55:51.805] [DEBUG] debug-file - default@PackageHap work[75] is dispatched. +[2025-07-09T18:55:51.819] [DEBUG] debug-file - default : default@PackageHap cost memory 4.5827789306640625 +[2025-07-09T18:55:51.863] [DEBUG] debug-file - current process memoryUsage: { + rss: 1073627136, + heapTotal: 76275712, + heapUsed: 55261400, + external: 13627264, + arrayBuffers: 11574962 +} os memoryUsage :19.377635955810547 +[2025-07-09T18:55:52.404] [DEBUG] debug-file - worker[14] has one work done. +[2025-07-09T18:55:52.404] [DEBUG] debug-file - default@PackageHap work[75] done. +[2025-07-09T18:55:52.404] [DEBUG] debug-file - A work dispatched to worker[14] failed because unable to get work from ready queue. +[2025-07-09T18:55:52.406] [INFO] debug-file - Finished :default:default@PackageHap... after 583 ms +[2025-07-09T18:55:52.407] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:52.407] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:52.409] [DEBUG] debug-file - Executing task :default:default@SignHap +[2025-07-09T18:55:52.410] [DEBUG] debug-file - default:default@SignHap is not up-to-date, since the input file 'D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\default-default-unsigned.hap' has been changed. +[2025-07-09T18:55:52.410] [DEBUG] debug-file - Incremental task default:default@SignHap pre-execution cost: 1 ms . +[2025-07-09T18:55:52.410] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:52.410] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:52.445] [DEBUG] debug-file - java daemon socket received message:{"code":0,"message":"verify profile success"} +[2025-07-09T18:55:52.450] [DEBUG] debug-file - java daemon socket close code:1000 reason:close by user +[2025-07-09T18:55:52.750] [DEBUG] debug-file - java daemon socket received message:{"code":0,"message":"sign app success"} +[2025-07-09T18:55:52.751] [DEBUG] debug-file - default : default@SignHap cost memory 1.0657272338867188 +[2025-07-09T18:55:52.751] [DEBUG] debug-file - runTaskFromQueue task cost before running: 7 s 383 ms +[2025-07-09T18:55:52.751] [INFO] debug-file - Finished :default:default@SignHap... after 342 ms +[2025-07-09T18:55:52.753] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:52.753] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:52.753] [DEBUG] debug-file - Executing task :default:default@CollectDebugSymbol +[2025-07-09T18:55:52.758] [DEBUG] debug-file - default:default@CollectDebugSymbol is not up-to-date, since the input file 'D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\cache\default\default@CompileArkTS\esmodule\release\sourceMaps.map' has been changed. +[2025-07-09T18:55:52.758] [DEBUG] debug-file - Incremental task default:default@CollectDebugSymbol pre-execution cost: 3 ms . +[2025-07-09T18:55:52.758] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:55:52.758] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:55:52.762] [DEBUG] debug-file - nameCache.json for module default does not exists +[2025-07-09T18:55:52.762] [DEBUG] debug-file - default : default@CollectDebugSymbol cost memory 0.5460205078125 +[2025-07-09T18:55:52.762] [DEBUG] debug-file - runTaskFromQueue task cost before running: 7 s 395 ms +[2025-07-09T18:55:52.764] [INFO] debug-file - Finished :default:default@CollectDebugSymbol... after 10 ms +[2025-07-09T18:55:52.765] [DEBUG] debug-file - Executing task :default:assembleHap +[2025-07-09T18:55:52.765] [DEBUG] debug-file - default : assembleHap cost memory 0.01139068603515625 +[2025-07-09T18:55:52.765] [DEBUG] debug-file - runTaskFromQueue task cost before running: 7 s 398 ms +[2025-07-09T18:55:52.765] [INFO] debug-file - Finished :default:assembleHap... after 1 ms +[2025-07-09T18:55:52.774] [DEBUG] debug-file - BUILD SUCCESSFUL in 7 s 406 ms +[2025-07-09T18:55:52.774] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@PreBuild is up-to-date. +[2025-07-09T18:55:52.774] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@PreBuild is up-to-date. +[2025-07-09T18:55:52.774] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@PreBuild is up-to-date. +[2025-07-09T18:55:52.774] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@PreBuild is up-to-date. +[2025-07-09T18:55:52.774] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task scene_single_video:default@PreBuild is up-to-date. +[2025-07-09T18:55:52.774] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task polyv:default@PreBuild is up-to-date. +[2025-07-09T18:55:52.774] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@PreBuild is up-to-date. +[2025-07-09T18:55:52.774] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task corekit:default@PreBuild is up-to-date. +[2025-07-09T18:55:52.774] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit:default@PreBuild is up-to-date. +[2025-07-09T18:55:52.774] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task netease:default@PreBuild is up-to-date. +[2025-07-09T18:55:52.774] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task conversationkit_ui:default@PreBuild is up-to-date. +[2025-07-09T18:55:52.774] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task common:default@PreBuild is up-to-date. +[2025-07-09T18:55:52.774] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit_ui:default@PreBuild is up-to-date. +[2025-07-09T18:55:52.775] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task localconversationkit_ui:default@PreBuild is up-to-date. +[2025-07-09T18:55:52.775] [DEBUG] debug-file - Update task default:default@CreateModuleInfo output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\generated\profile\default\ModuleInfo.ts cache. +[2025-07-09T18:55:52.775] [DEBUG] debug-file - Incremental task default:default@CreateModuleInfo post-execution cost:1 ms . +[2025-07-09T18:55:52.775] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@GenerateMetadata is up-to-date. +[2025-07-09T18:55:52.775] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@GeneratePkgContextInfo is up-to-date. +[2025-07-09T18:55:52.776] [DEBUG] debug-file - Update task default:default@ProcessIntegratedHsp output file:D:\202076work\hongmeng\newExpert\harmony\build\cache\default\integrated_hsp\integratedHspCache.json cache. +[2025-07-09T18:55:52.776] [DEBUG] debug-file - Incremental task default:default@ProcessIntegratedHsp post-execution cost:1 ms . +[2025-07-09T18:55:52.776] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:55:52.776] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@MergeProfile is up-to-date. +[2025-07-09T18:55:52.776] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task polyv:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:55:52.776] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task polyv:default@MergeProfile is up-to-date. +[2025-07-09T18:55:52.776] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task corekit:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:55:52.776] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task corekit:default@MergeProfile is up-to-date. +[2025-07-09T18:55:52.776] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task common:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:55:52.776] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task common:default@MergeProfile is up-to-date. +[2025-07-09T18:55:52.776] [DEBUG] debug-file - Update task default:default@SyscapTransform input file:D:\Program Files\Huawei\DevEco Studioss\sdk\default\openharmony\toolchains\syscap_tool.exe cache by regenerate. +[2025-07-09T18:55:52.776] [DEBUG] debug-file - Update task default:default@SyscapTransform input file:D:\Program Files\Huawei\DevEco Studioss\sdk\default\openharmony\ets\api\device-define cache by regenerate. +[2025-07-09T18:55:52.777] [DEBUG] debug-file - Update task default:default@SyscapTransform output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\syscap\default\rpcid.sc cache. +[2025-07-09T18:55:52.777] [DEBUG] debug-file - Incremental task default:default@SyscapTransform post-execution cost:1 ms . +[2025-07-09T18:55:52.777] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessRouterMap is up-to-date. +[2025-07-09T18:55:52.777] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:55:52.777] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:55:52.777] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@MergeProfile is up-to-date. +[2025-07-09T18:55:52.777] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@MergeProfile is up-to-date. +[2025-07-09T18:55:52.777] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task scene_single_video:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:55:52.777] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task scene_single_video:default@MergeProfile is up-to-date. +[2025-07-09T18:55:52.777] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:55:52.777] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit:default@MergeProfile is up-to-date. +[2025-07-09T18:55:52.777] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@GenerateLoaderJson is up-to-date. +[2025-07-09T18:55:52.777] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:55:52.777] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@MergeProfile is up-to-date. +[2025-07-09T18:55:52.777] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit_ui:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:55:52.777] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task conversationkit_ui:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:55:52.777] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task localconversationkit_ui:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:55:52.777] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit_ui:default@MergeProfile is up-to-date. +[2025-07-09T18:55:52.777] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task conversationkit_ui:default@MergeProfile is up-to-date. +[2025-07-09T18:55:52.777] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task localconversationkit_ui:default@MergeProfile is up-to-date. +[2025-07-09T18:55:52.777] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@ProcessLibs is up-to-date. +[2025-07-09T18:55:52.777] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task polyv:default@ProcessLibs is up-to-date. +[2025-07-09T18:55:52.777] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task netease:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:55:52.777] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task corekit:default@ProcessLibs is up-to-date. +[2025-07-09T18:55:52.777] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task netease:default@MergeProfile is up-to-date. +[2025-07-09T18:55:52.777] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task common:default@ProcessLibs is up-to-date. +[2025-07-09T18:55:52.777] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@DoNativeStrip is up-to-date. +[2025-07-09T18:55:52.778] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task polyv:default@DoNativeStrip is up-to-date. +[2025-07-09T18:55:52.778] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@CreateBuildProfile is up-to-date. +[2025-07-09T18:55:52.778] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task corekit:default@DoNativeStrip is up-to-date. +[2025-07-09T18:55:52.778] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@MergeProfile is up-to-date. +[2025-07-09T18:55:52.778] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task common:default@DoNativeStrip is up-to-date. +[2025-07-09T18:55:52.778] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@MakePackInfo is up-to-date. +[2025-07-09T18:55:52.778] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessProfile is up-to-date. +[2025-07-09T18:55:52.778] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@ProcessLibs is up-to-date. +[2025-07-09T18:55:52.778] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@ProcessLibs is up-to-date. +[2025-07-09T18:55:52.778] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task scene_single_video:default@ProcessLibs is up-to-date. +[2025-07-09T18:55:52.778] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit:default@ProcessLibs is up-to-date. +[2025-07-09T18:55:52.778] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessResource is up-to-date. +[2025-07-09T18:55:52.778] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@DoNativeStrip is up-to-date. +[2025-07-09T18:55:52.778] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@DoNativeStrip is up-to-date. +[2025-07-09T18:55:52.778] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task scene_single_video:default@DoNativeStrip is up-to-date. +[2025-07-09T18:55:52.778] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit:default@DoNativeStrip is up-to-date. +[2025-07-09T18:55:52.778] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@CompileResource is up-to-date. +[2025-07-09T18:55:52.782] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader\default cache by regenerate. +[2025-07-09T18:55:52.782] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\commons\basic\Index.ets cache by regenerate. +[2025-07-09T18:55:52.782] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\mypage\Index.ets cache by regenerate. +[2025-07-09T18:55:52.782] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\Home\Index.ets cache by regenerate. +[2025-07-09T18:55:52.782] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\register\Index.ets cache by regenerate. +[2025-07-09T18:55:52.782] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\scene_single_video\Index.ets cache by regenerate. +[2025-07-09T18:55:52.783] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\polyv\Index.ets cache by regenerate. +[2025-07-09T18:55:52.783] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\corekit\Index.ets cache by regenerate. +[2025-07-09T18:55:52.783] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit\Index.ets cache by regenerate. +[2025-07-09T18:55:52.783] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\netease\Index.ets cache by regenerate. +[2025-07-09T18:55:52.783] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\Index.js cache by regenerate. +[2025-07-09T18:55:52.783] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:55:52.783] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:55:52.783] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\common\Index.ets cache by regenerate. +[2025-07-09T18:55:52.783] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:55:52.783] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\index.ts cache by regenerate. +[2025-07-09T18:55:52.783] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js\index.ts cache by regenerate. +[2025-07-09T18:55:52.784] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown\Index.js cache by regenerate. +[2025-07-09T18:55:52.784] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js\index.ets cache by regenerate. +[2025-07-09T18:55:52.784] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm\index.ts cache by regenerate. +[2025-07-09T18:55:52.784] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\commons\basic\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.787] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\mypage\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.788] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\Home\src\main\ets cache from map. +[2025-07-09T18:55:52.788] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\register\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.788] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\scene_single_video\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.789] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\polyv\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.800] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk@2.5.0\oh_modules\@polyvharmony\media-player-sdk\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.800] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-ijk@2.5.0\oh_modules\@polyvharmony\media-player-core-ijk\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.802] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\oh_modules\@polyvharmony\media-player-sdk-addon-cache-down\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.805] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-api@1.0.2\oh_modules\@polyvharmony\httpdns-api\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.806] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-impl-local@1.0.2\oh_modules\@polyvharmony\httpdns-impl-local\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.806] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-impl-ali@1.0.2\oh_modules\@polyvharmony\httpdns-impl-ali\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.806] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.809] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+localconversation@10.9.10\oh_modules\@nimsdk\localconversation\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.811] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.816] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.819] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.820] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.821] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.833] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.847] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\corekit\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.847] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.849] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\netease\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.851] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-business@2.5.0\oh_modules\@polyvharmony\media-player-business\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.862] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-api@2.5.0\oh_modules\@polyvharmony\media-player-core-api\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.863] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-foundation@2.5.0\oh_modules\@polyvharmony\media-player-foundation\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.867] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+httpdns@1.1.1\oh_modules\@aliyun\httpdns\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.872] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.921] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.922] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.925] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\common\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.928] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.929] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.934] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+logger@1.0.2\oh_modules\@aliyun\logger\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.935] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+error@1.0.2\oh_modules\@aliyun\error\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.935] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.940] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.941] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.946] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources\rawfile cache by regenerate. +[2025-07-09T18:55:52.950] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\ResourceTable.txt cache by regenerate. +[2025-07-09T18:55:52.950] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\ark_module.json cache by regenerate. +[2025-07-09T18:55:52.950] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources\base\profile cache by regenerate. +[2025-07-09T18:55:52.950] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\src\main\ets cache by regenerate. +[2025-07-09T18:55:52.954] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader\default\pkgContextInfo.json cache by regenerate. +[2025-07-09T18:55:52.954] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\generated\profile\default\BuildProfile.ets cache by regenerate. +[2025-07-09T18:55:52.954] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\commons\basic\BuildProfile.ets cache by regenerate. +[2025-07-09T18:55:52.954] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\mypage\BuildProfile.ets cache by regenerate. +[2025-07-09T18:55:52.954] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\Home\BuildProfile.ets cache by regenerate. +[2025-07-09T18:55:52.954] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\register\BuildProfile.ets cache by regenerate. +[2025-07-09T18:55:52.954] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\scene_single_video\BuildProfile.ets cache by regenerate. +[2025-07-09T18:55:52.954] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\polyv\BuildProfile.ets cache by regenerate. +[2025-07-09T18:55:52.954] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\corekit\BuildProfile.ets cache by regenerate. +[2025-07-09T18:55:52.954] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit\BuildProfile.ets cache by regenerate. +[2025-07-09T18:55:52.955] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\netease\BuildProfile.ets cache by regenerate. +[2025-07-09T18:55:52.955] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\BuildProfile.ets cache by regenerate. +[2025-07-09T18:55:52.955] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\BuildProfile.ets cache by regenerate. +[2025-07-09T18:55:52.955] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\common\BuildProfile.ets cache by regenerate. +[2025-07-09T18:55:52.955] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\BuildProfile.ets cache by regenerate. +[2025-07-09T18:55:52.955] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\src\mock\mock-config.json5 cache by regenerate. +[2025-07-09T18:55:52.955] [DEBUG] debug-file - Update task default:default@CompileArkTS output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader_out\default\ets cache. +[2025-07-09T18:55:52.956] [DEBUG] debug-file - Incremental task default:default@CompileArkTS post-execution cost:178 ms . +[2025-07-09T18:55:52.958] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader\default cache by regenerate. +[2025-07-09T18:55:52.958] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\commons\basic\Index.ets cache by regenerate. +[2025-07-09T18:55:52.958] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\features\mypage\Index.ets cache by regenerate. +[2025-07-09T18:55:52.959] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\features\Home\Index.ets cache by regenerate. +[2025-07-09T18:55:52.959] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\features\register\Index.ets cache by regenerate. +[2025-07-09T18:55:52.959] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\scene_single_video\Index.ets cache by regenerate. +[2025-07-09T18:55:52.959] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\polyv\Index.ets cache by regenerate. +[2025-07-09T18:55:52.959] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\corekit\Index.ets cache by regenerate. +[2025-07-09T18:55:52.959] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit\Index.ets cache by regenerate. +[2025-07-09T18:55:52.959] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\features\netease\Index.ets cache by regenerate. +[2025-07-09T18:55:52.959] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\Index.js cache by regenerate. +[2025-07-09T18:55:52.959] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:55:52.959] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:55:52.960] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\common\Index.ets cache by regenerate. +[2025-07-09T18:55:52.960] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:55:52.960] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\index.ts cache by regenerate. +[2025-07-09T18:55:52.960] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js\index.ts cache by regenerate. +[2025-07-09T18:55:52.960] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown\Index.js cache by regenerate. +[2025-07-09T18:55:52.960] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js\index.ets cache by regenerate. +[2025-07-09T18:55:52.960] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm\index.ts cache by regenerate. +[2025-07-09T18:55:52.960] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js\src\main\js cache by regenerate. +[2025-07-09T18:55:52.960] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources\rawfile cache by regenerate. +[2025-07-09T18:55:52.964] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\ResourceTable.txt cache by regenerate. +[2025-07-09T18:55:52.964] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\ark_module.json cache by regenerate. +[2025-07-09T18:55:52.964] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources\base\profile cache by regenerate. +[2025-07-09T18:55:52.965] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader\default\pkgContextInfo.json cache by regenerate. +[2025-07-09T18:55:52.965] [DEBUG] debug-file - Update task default:default@BuildJS output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader_out\default\js cache. +[2025-07-09T18:55:52.965] [DEBUG] debug-file - Incremental task default:default@BuildJS post-execution cost:10 ms . +[2025-07-09T18:55:52.965] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@ProcessLibs is up-to-date. +[2025-07-09T18:55:52.965] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit_ui:default@ProcessLibs is up-to-date. +[2025-07-09T18:55:52.965] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task conversationkit_ui:default@ProcessLibs is up-to-date. +[2025-07-09T18:55:52.965] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task localconversationkit_ui:default@ProcessLibs is up-to-date. +[2025-07-09T18:55:52.965] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@DoNativeStrip is up-to-date. +[2025-07-09T18:55:52.965] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit_ui:default@DoNativeStrip is up-to-date. +[2025-07-09T18:55:52.965] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task conversationkit_ui:default@DoNativeStrip is up-to-date. +[2025-07-09T18:55:52.965] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task localconversationkit_ui:default@DoNativeStrip is up-to-date. +[2025-07-09T18:55:52.965] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task netease:default@ProcessLibs is up-to-date. +[2025-07-09T18:55:52.965] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task netease:default@DoNativeStrip is up-to-date. +[2025-07-09T18:55:52.965] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessLibs is up-to-date. +[2025-07-09T18:55:52.965] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@DoNativeStrip is up-to-date. +[2025-07-09T18:55:52.965] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@CacheNativeLibs is up-to-date. +[2025-07-09T18:55:52.965] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@GeneratePkgModuleJson is up-to-date. +[2025-07-09T18:55:52.966] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\stripped_native_libs\default cache by regenerate. +[2025-07-09T18:55:52.967] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\module.json cache by regenerate. +[2025-07-09T18:55:52.967] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources cache by regenerate. +[2025-07-09T18:55:52.982] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources.index cache by regenerate. +[2025-07-09T18:55:52.982] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\pack.info cache by regenerate. +[2025-07-09T18:55:52.982] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader_out\default\ets cache from map. +[2025-07-09T18:55:52.982] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader\default\pkgContextInfo.json cache by regenerate. +[2025-07-09T18:55:52.982] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\cache\default\default@CompileArkTS\esmodule\release\sourceMaps.map cache by regenerate. +[2025-07-09T18:55:52.982] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\generated\profile\default\BuildProfile.ets cache by regenerate. +[2025-07-09T18:55:52.982] [DEBUG] debug-file - Update task default:default@PackageHap output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\default-default-unsigned.hap cache. +[2025-07-09T18:55:52.983] [DEBUG] debug-file - Update task default:default@PackageHap output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\source_map\default\sourceMaps.map cache. +[2025-07-09T18:55:52.983] [DEBUG] debug-file - Update task default:default@PackageHap output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\mapping\sourceMaps.map cache. +[2025-07-09T18:55:52.983] [DEBUG] debug-file - Incremental task default:default@PackageHap post-execution cost:18 ms . +[2025-07-09T18:55:52.983] [DEBUG] debug-file - Update task default:default@SignHap input file:D:/202076work/鸿蒙专家端测试证书.cer cache by regenerate. +[2025-07-09T18:55:52.983] [DEBUG] debug-file - Update task default:default@SignHap input file:D:/202076work/profile测试Debug.p7b cache by regenerate. +[2025-07-09T18:55:52.983] [DEBUG] debug-file - Update task default:default@SignHap input file:D:/202076work/gdxzExport.p12 cache by regenerate. +[2025-07-09T18:55:52.983] [DEBUG] debug-file - Update task default:default@SignHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\default-default-unsigned.hap cache from map. +[2025-07-09T18:55:52.983] [DEBUG] debug-file - Update task default:default@SignHap output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\default-default-signed.hap cache. +[2025-07-09T18:55:52.984] [DEBUG] debug-file - Incremental task default:default@SignHap post-execution cost:1 ms . +[2025-07-09T18:55:52.985] [DEBUG] debug-file - Update task default:default@CollectDebugSymbol input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\cache\default\default@CompileArkTS\esmodule\release\sourceMaps.map cache from map. +[2025-07-09T18:55:52.985] [DEBUG] debug-file - Update task default:default@CollectDebugSymbol input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\libs\default cache by regenerate. +[2025-07-09T18:55:52.987] [DEBUG] debug-file - Update task default:default@CollectDebugSymbol output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\symbol cache. +[2025-07-09T18:55:52.988] [DEBUG] debug-file - Incremental task default:default@CollectDebugSymbol post-execution cost:5 ms . +[2025-07-09T18:55:53.035] [DEBUG] debug-file - Cleanup worker 14. +[2025-07-09T18:55:53.035] [DEBUG] debug-file - Worker 14 has been cleaned up. +[2025-07-09T18:55:53.036] [DEBUG] debug-file - Current idle worker size: 1. +[2025-07-09T18:55:53.036] [DEBUG] debug-file - Current resident worker size: 2. +[2025-07-09T18:55:53.037] [DEBUG] debug-file - hvigor build process will be closed. +[2025-07-09T18:55:53.037] [DEBUG] debug-file - java daemon socket close code:1000 reason:close by user +[2025-07-09T18:55:53.040] [DEBUG] debug-file - session manager: send message to worker process. +[2025-07-09T18:55:53.041] [DEBUG] debug-file - session manager: send message to worker process. +[2025-07-09T18:55:53.041] [DEBUG] debug-file - watch worker: worker id should be larger than 0. Nothing will be sent to any worker thread. +[2025-07-09T18:55:53.041] [DEBUG] debug-file - watch worker: worker id should be larger than 0. Nothing will be sent to any worker thread. +[2025-07-09T18:55:53.049] [DEBUG] debug-file - worker[14] exits with exit code 1. +[2025-07-09T18:57:09.723] [DEBUG] debug-file - session manager: set active socket. socketId=9eni0E7PjsdLT4mpAAAj +[2025-07-09T18:57:09.739] [DEBUG] debug-file - watch worker: worker id should be larger than 0. Nothing will be sent to any worker thread. +[2025-07-09T18:57:09.781] [DEBUG] debug-file - Hvigor init with startParameters:{ + hvigorfileTypeCheck: false, + parallelExecution: true, + incrementalExecution: true, + printStackTrace: true, + daemon: true, + analyze: 0, + logLevel: Level { level: 20000, levelStr: 'INFO', colour: 'green' } +} +[2025-07-09T18:57:09.821] [DEBUG] debug-file - Cache service initialization finished in 40 ms +[2025-07-09T18:57:09.829] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\hvigorfile.ts +[2025-07-09T18:57:09.833] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:57:09.833] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:57:09.847] [DEBUG] debug-file - Start initialize project's product build option map with build mode release. +[2025-07-09T18:57:09.847] [DEBUG] debug-file - Picking option from product 'default' with build mode 'release'. +[2025-07-09T18:57:09.848] [DEBUG] debug-file - Product 'default' build option: {} +[2025-07-09T18:57:09.848] [DEBUG] debug-file - End initialize project's product build option map with build mode 'release'. +[2025-07-09T18:57:09.849] [DEBUG] debug-file - Product 'default' using build option: { + "debuggable": false, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + } +} in this build. +[2025-07-09T18:57:09.867] [DEBUG] debug-file - Start recording SDK configuration permission data. +[2025-07-09T18:57:09.891] [DEBUG] debug-file - Sdk init in 28 ms +[2025-07-09T18:57:09.916] [DEBUG] debug-file - Project task initialization takes 24 ms +[2025-07-09T18:57:09.916] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:57:09.916] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\hvigorfile.ts +[2025-07-09T18:57:09.916] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\hvigorfile.ts +[2025-07-09T18:57:09.920] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\products\expert\hvigorfile.ts +[2025-07-09T18:57:09.923] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:57:09.924] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:57:09.933] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=default, buildMode=release +[2025-07-09T18:57:09.933] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:57:09.933] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:57:09.933] [DEBUG] debug-file - Module 'default' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + } + } + } +} +[2025-07-09T18:57:09.933] [DEBUG] debug-file - Module 'default' target 'ohosTest' build option: { + "debuggable": true, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "default" +} +[2025-07-09T18:57:09.933] [DEBUG] debug-file - End initialize module-target build option map, moduleName=default +[2025-07-09T18:57:09.933] [DEBUG] debug-file - Module 'default' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + } + } + } +} in this build. +[2025-07-09T18:57:09.936] [DEBUG] debug-file - Module default task initialization takes 2 ms +[2025-07-09T18:57:09.937] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:57:09.937] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\products\expert\hvigorfile.ts +[2025-07-09T18:57:09.937] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\products\expert\hvigorfile.ts +[2025-07-09T18:57:09.941] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\features\mypage\hvigorfile.ts +[2025-07-09T18:57:09.943] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:57:09.943] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:57:09.953] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=mypage, buildMode=release +[2025-07-09T18:57:09.953] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:57:09.953] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:57:09.953] [DEBUG] debug-file - Module 'mypage' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:57:09.954] [DEBUG] debug-file - Module 'mypage' target 'ohosTest' build option: { + "debuggable": true, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "default" +} +[2025-07-09T18:57:09.954] [DEBUG] debug-file - End initialize module-target build option map, moduleName=mypage +[2025-07-09T18:57:09.954] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:09.955] [DEBUG] debug-file - Module mypage task initialization takes 1 ms +[2025-07-09T18:57:09.955] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:57:09.955] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\features\mypage\hvigorfile.ts +[2025-07-09T18:57:09.956] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\features\mypage\hvigorfile.ts +[2025-07-09T18:57:09.959] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\commons\basic\hvigorfile.ts +[2025-07-09T18:57:09.961] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:57:09.961] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:57:09.965] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=basic, buildMode=release +[2025-07-09T18:57:09.965] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:57:09.965] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:57:09.966] [DEBUG] debug-file - Module 'basic' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:57:09.966] [DEBUG] debug-file - Module 'basic' target 'ohosTest' build option: { + "debuggable": true, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "default" +} +[2025-07-09T18:57:09.966] [DEBUG] debug-file - End initialize module-target build option map, moduleName=basic +[2025-07-09T18:57:09.966] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:09.967] [DEBUG] debug-file - Module basic task initialization takes 1 ms +[2025-07-09T18:57:09.967] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:57:09.967] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\commons\basic\hvigorfile.ts +[2025-07-09T18:57:09.967] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\commons\basic\hvigorfile.ts +[2025-07-09T18:57:09.972] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\features\Home\hvigorfile.ts +[2025-07-09T18:57:09.974] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:57:09.974] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:57:09.978] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=Home, buildMode=release +[2025-07-09T18:57:09.978] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:57:09.978] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:57:09.979] [DEBUG] debug-file - Module 'Home' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:57:09.979] [DEBUG] debug-file - Module 'Home' target 'ohosTest' build option: { + "debuggable": true, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "default" +} +[2025-07-09T18:57:09.979] [DEBUG] debug-file - End initialize module-target build option map, moduleName=Home +[2025-07-09T18:57:09.979] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:09.980] [DEBUG] debug-file - Module Home task initialization takes 1 ms +[2025-07-09T18:57:09.980] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:57:09.980] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\features\Home\hvigorfile.ts +[2025-07-09T18:57:09.980] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\features\Home\hvigorfile.ts +[2025-07-09T18:57:09.984] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\features\register\hvigorfile.ts +[2025-07-09T18:57:09.986] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:57:09.986] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:57:09.990] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=register, buildMode=release +[2025-07-09T18:57:09.990] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:57:09.991] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:57:09.991] [DEBUG] debug-file - Module 'register' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:57:09.991] [DEBUG] debug-file - Module 'register' target 'ohosTest' build option: { + "debuggable": true, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "default" +} +[2025-07-09T18:57:09.991] [DEBUG] debug-file - End initialize module-target build option map, moduleName=register +[2025-07-09T18:57:09.991] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:09.993] [DEBUG] debug-file - Module register task initialization takes 1 ms +[2025-07-09T18:57:09.993] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:57:09.993] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\features\register\hvigorfile.ts +[2025-07-09T18:57:09.993] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\features\register\hvigorfile.ts +[2025-07-09T18:57:09.997] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\polyv\hvigorfile.ts +[2025-07-09T18:57:09.999] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:57:09.999] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:57:10.002] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=polyv, buildMode=release +[2025-07-09T18:57:10.002] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:57:10.002] [DEBUG] debug-file - Module 'polyv' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} +[2025-07-09T18:57:10.002] [DEBUG] debug-file - End initialize module-target build option map, moduleName=polyv +[2025-07-09T18:57:10.002] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.004] [DEBUG] debug-file - Module polyv task initialization takes 1 ms +[2025-07-09T18:57:10.004] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:57:10.004] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\polyv\hvigorfile.ts +[2025-07-09T18:57:10.004] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\polyv\hvigorfile.ts +[2025-07-09T18:57:10.007] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\scene_single_video\hvigorfile.ts +[2025-07-09T18:57:10.010] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:57:10.010] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:57:10.013] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=scene_single_video, buildMode=release +[2025-07-09T18:57:10.013] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:57:10.014] [DEBUG] debug-file - Module 'scene_single_video' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} +[2025-07-09T18:57:10.014] [DEBUG] debug-file - End initialize module-target build option map, moduleName=scene_single_video +[2025-07-09T18:57:10.014] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.015] [DEBUG] debug-file - Module scene_single_video task initialization takes 1 ms +[2025-07-09T18:57:10.015] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:57:10.015] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\scene_single_video\hvigorfile.ts +[2025-07-09T18:57:10.015] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\scene_single_video\hvigorfile.ts +[2025-07-09T18:57:10.019] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\corekit\hvigorfile.ts +[2025-07-09T18:57:10.021] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:57:10.021] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:57:10.024] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=corekit, buildMode=release +[2025-07-09T18:57:10.024] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:57:10.024] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:57:10.024] [DEBUG] debug-file - Module 'corekit' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:57:10.024] [DEBUG] debug-file - Module 'corekit' target 'ohosTest' build option: { + "debuggable": true, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "default" +} +[2025-07-09T18:57:10.024] [DEBUG] debug-file - End initialize module-target build option map, moduleName=corekit +[2025-07-09T18:57:10.024] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.026] [DEBUG] debug-file - Module corekit task initialization takes 1 ms +[2025-07-09T18:57:10.026] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:57:10.026] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\corekit\hvigorfile.ts +[2025-07-09T18:57:10.026] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\corekit\hvigorfile.ts +[2025-07-09T18:57:10.030] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\chatkit\hvigorfile.ts +[2025-07-09T18:57:10.032] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:57:10.032] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:57:10.035] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=chatkit, buildMode=release +[2025-07-09T18:57:10.035] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:57:10.035] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:57:10.036] [DEBUG] debug-file - Module 'chatkit' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:57:10.036] [DEBUG] debug-file - Module 'chatkit' target 'ohosTest' build option: { + "debuggable": true, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "default" +} +[2025-07-09T18:57:10.036] [DEBUG] debug-file - End initialize module-target build option map, moduleName=chatkit +[2025-07-09T18:57:10.036] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.037] [DEBUG] debug-file - Module chatkit task initialization takes 1 ms +[2025-07-09T18:57:10.037] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:57:10.037] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\chatkit\hvigorfile.ts +[2025-07-09T18:57:10.037] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\chatkit\hvigorfile.ts +[2025-07-09T18:57:10.041] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\hvigorfile.ts +[2025-07-09T18:57:10.043] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:57:10.043] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:57:10.046] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=chatkit_ui, buildMode=release +[2025-07-09T18:57:10.046] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:57:10.046] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:57:10.046] [DEBUG] debug-file - End initialize module-target build option map, moduleName=chatkit_ui +[2025-07-09T18:57:10.046] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.048] [DEBUG] debug-file - Module chatkit_ui task initialization takes 1 ms +[2025-07-09T18:57:10.048] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:57:10.048] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\hvigorfile.ts +[2025-07-09T18:57:10.048] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\hvigorfile.ts +[2025-07-09T18:57:10.053] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\features\netease\hvigorfile.ts +[2025-07-09T18:57:10.054] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:57:10.054] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:57:10.057] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=netease, buildMode=release +[2025-07-09T18:57:10.057] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:57:10.057] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:57:10.057] [DEBUG] debug-file - Module 'netease' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:57:10.058] [DEBUG] debug-file - Module 'netease' target 'ohosTest' build option: { + "debuggable": true, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "default" +} +[2025-07-09T18:57:10.058] [DEBUG] debug-file - End initialize module-target build option map, moduleName=netease +[2025-07-09T18:57:10.058] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.059] [DEBUG] debug-file - Module netease task initialization takes 1 ms +[2025-07-09T18:57:10.059] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:57:10.059] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\features\netease\hvigorfile.ts +[2025-07-09T18:57:10.059] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\features\netease\hvigorfile.ts +[2025-07-09T18:57:10.063] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\hvigorfile.ts +[2025-07-09T18:57:10.064] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:57:10.064] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:57:10.067] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=conversationkit_ui, buildMode=release +[2025-07-09T18:57:10.067] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:57:10.067] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:57:10.067] [DEBUG] debug-file - End initialize module-target build option map, moduleName=conversationkit_ui +[2025-07-09T18:57:10.067] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.069] [DEBUG] debug-file - Module conversationkit_ui task initialization takes 1 ms +[2025-07-09T18:57:10.069] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:57:10.069] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\hvigorfile.ts +[2025-07-09T18:57:10.069] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\hvigorfile.ts +[2025-07-09T18:57:10.072] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\common\hvigorfile.ts +[2025-07-09T18:57:10.074] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:57:10.074] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:57:10.077] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=common, buildMode=release +[2025-07-09T18:57:10.077] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:57:10.077] [DEBUG] debug-file - Module 'common' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:57:10.077] [DEBUG] debug-file - End initialize module-target build option map, moduleName=common +[2025-07-09T18:57:10.077] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.079] [DEBUG] debug-file - Module common task initialization takes 1 ms +[2025-07-09T18:57:10.079] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:57:10.079] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\common\hvigorfile.ts +[2025-07-09T18:57:10.079] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\common\hvigorfile.ts +[2025-07-09T18:57:10.083] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\hvigorfile.ts +[2025-07-09T18:57:10.085] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:57:10.085] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:57:10.088] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=localconversationkit_ui, buildMode=release +[2025-07-09T18:57:10.089] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:57:10.089] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:57:10.089] [DEBUG] debug-file - End initialize module-target build option map, moduleName=localconversationkit_ui +[2025-07-09T18:57:10.089] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.090] [DEBUG] debug-file - Module localconversationkit_ui task initialization takes 1 ms +[2025-07-09T18:57:10.090] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:57:10.091] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\hvigorfile.ts +[2025-07-09T18:57:10.091] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\hvigorfile.ts +[2025-07-09T18:57:10.106] [DEBUG] debug-file - hvigorfile, resolve hvigorfile dependencies in 15 ms +[2025-07-09T18:57:10.107] [DEBUG] debug-file - project has submodules:default,mypage,basic,Home,register,polyv,scene_single_video,corekit,chatkit,chatkit_ui,netease,conversationkit_ui,common,localconversationkit_ui +[2025-07-09T18:57:10.107] [DEBUG] debug-file - module:mypage no need to execute packageHap +[2025-07-09T18:57:10.107] [DEBUG] debug-file - module:basic no need to execute packageHap +[2025-07-09T18:57:10.107] [DEBUG] debug-file - module:Home no need to execute packageHap +[2025-07-09T18:57:10.107] [DEBUG] debug-file - module:register no need to execute packageHap +[2025-07-09T18:57:10.107] [DEBUG] debug-file - module:polyv no need to execute packageHap +[2025-07-09T18:57:10.107] [DEBUG] debug-file - module:scene_single_video no need to execute packageHap +[2025-07-09T18:57:10.107] [DEBUG] debug-file - module:corekit no need to execute packageHap +[2025-07-09T18:57:10.107] [DEBUG] debug-file - module:chatkit no need to execute packageHap +[2025-07-09T18:57:10.107] [DEBUG] debug-file - module:chatkit_ui no need to execute packageHap +[2025-07-09T18:57:10.107] [DEBUG] debug-file - module:netease no need to execute packageHap +[2025-07-09T18:57:10.107] [DEBUG] debug-file - module:conversationkit_ui no need to execute packageHap +[2025-07-09T18:57:10.107] [DEBUG] debug-file - module:common no need to execute packageHap +[2025-07-09T18:57:10.107] [DEBUG] debug-file - module:localconversationkit_ui no need to execute packageHap +[2025-07-09T18:57:10.108] [DEBUG] debug-file - start to load updatedOhPackageInfo to the disk +[2025-07-09T18:57:10.122] [DEBUG] debug-file - load to the disk finished +[2025-07-09T18:57:10.124] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:57:10.136] [DEBUG] debug-file - Module harmony Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:57:10.136] [DEBUG] debug-file - Module harmony's total dependency: 3 +[2025-07-09T18:57:10.137] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:57:10.359] [DEBUG] debug-file - Module default Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\commons\basic,D:\202076work\hongmeng\newExpert\harmony\features\mypage,D:\202076work\hongmeng\newExpert\harmony\features\Home,D:\202076work\hongmeng\newExpert\harmony\features\register,D:\202076work\hongmeng\newExpert\harmony\scene_single_video,D:\202076work\hongmeng\newExpert\harmony\polyv,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk@2.5.0\oh_modules\@polyvharmony\media-player-sdk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-ijk@2.5.0\oh_modules\@polyvharmony\media-player-core-ijk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\oh_modules\@polyvharmony\media-player-sdk-addon-cache-down,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-api@1.0.2\oh_modules\@polyvharmony\httpdns-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-impl-local@1.0.2\oh_modules\@polyvharmony\httpdns-impl-local,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-impl-ali@1.0.2\oh_modules\@polyvharmony\httpdns-impl-ali,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+localconversation@10.9.10\oh_modules\@nimsdk\localconversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base,D:\202076work\hongmeng\newExpert\harmony\corekit,D:\202076work\hongmeng\newExpert\harmony\chatkit,D:\202076work\hongmeng\newExpert\harmony\features\netease,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-business@2.5.0\oh_modules\@polyvharmony\media-player-business,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-api@2.5.0\oh_modules\@polyvharmony\media-player-core-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-foundation@2.5.0\oh_modules\@polyvharmony\media-player-foundation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+httpdns@1.1.1\oh_modules\@aliyun\httpdns,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\class-transformer@0.5.1\oh_modules\class-transformer,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata,D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui,D:\202076work\hongmeng\newExpert\harmony\chatkit_ui,D:\202076work\hongmeng\newExpert\harmony\common,D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+logger@1.0.2\oh_modules\@aliyun\logger,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+error@1.0.2\oh_modules\@aliyun\error,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\pako@2.1.0\oh_modules\pako,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\base64-js@1.5.1\oh_modules\base64-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm +[2025-07-09T18:57:10.359] [DEBUG] debug-file - Module default's total dependency: 43 +[2025-07-09T18:57:10.361] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:57:10.362] [DEBUG] debug-file - Module mypage Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\commons\basic,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:57:10.362] [DEBUG] debug-file - Module mypage's total dependency: 4 +[2025-07-09T18:57:10.364] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:57:10.365] [DEBUG] debug-file - Module basic Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:57:10.365] [DEBUG] debug-file - Module basic's total dependency: 3 +[2025-07-09T18:57:10.366] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:57:10.368] [DEBUG] debug-file - Module Home Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\commons\basic,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk@2.5.0\oh_modules\@polyvharmony\media-player-sdk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\oh_modules\@polyvharmony\media-player-sdk-addon-cache-down,D:\202076work\hongmeng\newExpert\harmony\scene_single_video,D:\202076work\hongmeng\newExpert\harmony\polyv,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-business@2.5.0\oh_modules\@polyvharmony\media-player-business,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-api@2.5.0\oh_modules\@polyvharmony\media-player-core-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-foundation@2.5.0\oh_modules\@polyvharmony\media-player-foundation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-ijk@2.5.0\oh_modules\@polyvharmony\media-player-core-ijk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-api@1.0.2\oh_modules\@polyvharmony\httpdns-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\pako@2.1.0\oh_modules\pako,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\base64-js@1.5.1\oh_modules\base64-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:57:10.368] [DEBUG] debug-file - Module Home's total dependency: 16 +[2025-07-09T18:57:10.370] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:57:10.371] [DEBUG] debug-file - Module register Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\commons\basic,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:57:10.372] [DEBUG] debug-file - Module register's total dependency: 4 +[2025-07-09T18:57:10.374] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:57:10.375] [DEBUG] debug-file - Module polyv Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk@2.5.0\oh_modules\@polyvharmony\media-player-sdk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\oh_modules\@polyvharmony\media-player-sdk-addon-cache-down,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-business@2.5.0\oh_modules\@polyvharmony\media-player-business,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-api@2.5.0\oh_modules\@polyvharmony\media-player-core-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-foundation@2.5.0\oh_modules\@polyvharmony\media-player-foundation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-ijk@2.5.0\oh_modules\@polyvharmony\media-player-core-ijk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-api@1.0.2\oh_modules\@polyvharmony\httpdns-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\pako@2.1.0\oh_modules\pako,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\base64-js@1.5.1\oh_modules\base64-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:57:10.375] [DEBUG] debug-file - Module polyv's total dependency: 13 +[2025-07-09T18:57:10.376] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:57:10.377] [DEBUG] debug-file - Module scene_single_video Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\polyv,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk@2.5.0\oh_modules\@polyvharmony\media-player-sdk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\oh_modules\@polyvharmony\media-player-sdk-addon-cache-down,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-business@2.5.0\oh_modules\@polyvharmony\media-player-business,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-api@2.5.0\oh_modules\@polyvharmony\media-player-core-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-foundation@2.5.0\oh_modules\@polyvharmony\media-player-foundation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-ijk@2.5.0\oh_modules\@polyvharmony\media-player-core-ijk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-api@1.0.2\oh_modules\@polyvharmony\httpdns-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\pako@2.1.0\oh_modules\pako,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\base64-js@1.5.1\oh_modules\base64-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:57:10.377] [DEBUG] debug-file - Module scene_single_video's total dependency: 14 +[2025-07-09T18:57:10.378] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:57:10.379] [DEBUG] debug-file - Module corekit Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:57:10.379] [DEBUG] debug-file - Module corekit's total dependency: 3 +[2025-07-09T18:57:10.381] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:57:10.382] [DEBUG] debug-file - Module chatkit Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base,D:\202076work\hongmeng\newExpert\harmony\corekit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\class-transformer@0.5.1\oh_modules\class-transformer,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm +[2025-07-09T18:57:10.382] [DEBUG] debug-file - Module chatkit's total dependency: 13 +[2025-07-09T18:57:10.384] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:57:10.386] [DEBUG] debug-file - Module chatkit_ui Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\common,D:\202076work\hongmeng\newExpert\harmony\chatkit,D:\202076work\hongmeng\newExpert\harmony\corekit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\class-transformer@0.5.1\oh_modules\class-transformer,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown,D:\202076work\hongmeng\newExpert\harmony\commons\basic,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm +[2025-07-09T18:57:10.386] [DEBUG] debug-file - Module chatkit_ui's total dependency: 18 +[2025-07-09T18:57:10.388] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:57:10.390] [DEBUG] debug-file - Module netease Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\commons\basic,D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui,D:\202076work\hongmeng\newExpert\harmony\chatkit_ui,D:\202076work\hongmeng\newExpert\harmony\chatkit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base,D:\202076work\hongmeng\newExpert\harmony\common,D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui,D:\202076work\hongmeng\newExpert\harmony\corekit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\class-transformer@0.5.1\oh_modules\class-transformer,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm +[2025-07-09T18:57:10.390] [DEBUG] debug-file - Module netease's total dependency: 21 +[2025-07-09T18:57:10.391] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:57:10.392] [DEBUG] debug-file - Module conversationkit_ui Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\common,D:\202076work\hongmeng\newExpert\harmony\chatkit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim,D:\202076work\hongmeng\newExpert\harmony\corekit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\class-transformer@0.5.1\oh_modules\class-transformer,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm +[2025-07-09T18:57:10.392] [DEBUG] debug-file - Module conversationkit_ui's total dependency: 16 +[2025-07-09T18:57:10.394] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:57:10.395] [DEBUG] debug-file - Module common Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:57:10.395] [DEBUG] debug-file - Module common's total dependency: 4 +[2025-07-09T18:57:10.396] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:57:10.397] [DEBUG] debug-file - Module localconversationkit_ui Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\common,D:\202076work\hongmeng\newExpert\harmony\chatkit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim,D:\202076work\hongmeng\newExpert\harmony\corekit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\class-transformer@0.5.1\oh_modules\class-transformer,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm +[2025-07-09T18:57:10.397] [DEBUG] debug-file - Module localconversationkit_ui's total dependency: 16 +[2025-07-09T18:57:10.398] [DEBUG] debug-file - Configuration phase cost:573 ms +[2025-07-09T18:57:10.404] [DEBUG] debug-file - Configuration task cost before running: 661 ms +[2025-07-09T18:57:10.405] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:10.405] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:10.407] [DEBUG] debug-file - Executing task :default:default@PreBuild +[2025-07-09T18:57:10.419] [DEBUG] debug-file - Incremental task default:default@PreBuild pre-execution cost: 3 ms . +[2025-07-09T18:57:10.419] [DEBUG] debug-file - default : default@PreBuild cost memory 2.2974319458007812 +[2025-07-09T18:57:10.421] [INFO] debug-file - UP-TO-DATE :default:default@PreBuild... +[2025-07-09T18:57:10.422] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:57:10.422] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:57:10.423] [DEBUG] debug-file - Executing task :basic:default@PreBuild +[2025-07-09T18:57:10.425] [DEBUG] debug-file - Incremental task basic:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:57:10.425] [DEBUG] debug-file - basic : default@PreBuild cost memory 0.2303314208984375 +[2025-07-09T18:57:10.426] [INFO] debug-file - UP-TO-DATE :basic:default@PreBuild... +[2025-07-09T18:57:10.427] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:57:10.427] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:57:10.427] [DEBUG] debug-file - Executing task :mypage:default@PreBuild +[2025-07-09T18:57:10.430] [DEBUG] debug-file - Incremental task mypage:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:57:10.430] [DEBUG] debug-file - mypage : default@PreBuild cost memory 0.23492431640625 +[2025-07-09T18:57:10.431] [INFO] debug-file - UP-TO-DATE :mypage:default@PreBuild... +[2025-07-09T18:57:10.432] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:57:10.432] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:57:10.433] [DEBUG] debug-file - Executing task :Home:default@PreBuild +[2025-07-09T18:57:10.436] [DEBUG] debug-file - Incremental task Home:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:57:10.436] [DEBUG] debug-file - Home : default@PreBuild cost memory 0.24651336669921875 +[2025-07-09T18:57:10.437] [INFO] debug-file - UP-TO-DATE :Home:default@PreBuild... +[2025-07-09T18:57:10.438] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:57:10.438] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:57:10.439] [DEBUG] debug-file - Executing task :scene_single_video:default@PreBuild +[2025-07-09T18:57:10.441] [DEBUG] debug-file - Incremental task scene_single_video:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:57:10.441] [DEBUG] debug-file - scene_single_video : default@PreBuild cost memory 0.23532867431640625 +[2025-07-09T18:57:10.441] [INFO] debug-file - UP-TO-DATE :scene_single_video:default@PreBuild... +[2025-07-09T18:57:10.442] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:57:10.442] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:57:10.443] [DEBUG] debug-file - Executing task :polyv:default@PreBuild +[2025-07-09T18:57:10.445] [DEBUG] debug-file - Incremental task polyv:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:57:10.445] [DEBUG] debug-file - polyv : default@PreBuild cost memory 0.23250579833984375 +[2025-07-09T18:57:10.446] [INFO] debug-file - UP-TO-DATE :polyv:default@PreBuild... +[2025-07-09T18:57:10.447] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:57:10.447] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:57:10.448] [DEBUG] debug-file - Executing task :register:default@PreBuild +[2025-07-09T18:57:10.451] [DEBUG] debug-file - Incremental task register:default@PreBuild pre-execution cost: 3 ms . +[2025-07-09T18:57:10.451] [DEBUG] debug-file - register : default@PreBuild cost memory 0.2356719970703125 +[2025-07-09T18:57:10.452] [INFO] debug-file - UP-TO-DATE :register:default@PreBuild... +[2025-07-09T18:57:10.453] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:57:10.453] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:57:10.454] [DEBUG] debug-file - Executing task :corekit:default@PreBuild +[2025-07-09T18:57:10.456] [DEBUG] debug-file - Incremental task corekit:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:57:10.456] [DEBUG] debug-file - corekit : default@PreBuild cost memory 0.23317718505859375 +[2025-07-09T18:57:10.456] [INFO] debug-file - UP-TO-DATE :corekit:default@PreBuild... +[2025-07-09T18:57:10.457] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:57:10.458] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:57:10.459] [DEBUG] debug-file - Executing task :chatkit:default@PreBuild +[2025-07-09T18:57:10.461] [DEBUG] debug-file - Incremental task chatkit:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:57:10.461] [DEBUG] debug-file - chatkit : default@PreBuild cost memory 0.24810028076171875 +[2025-07-09T18:57:10.461] [INFO] debug-file - UP-TO-DATE :chatkit:default@PreBuild... +[2025-07-09T18:57:10.462] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:57:10.463] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:57:10.464] [DEBUG] debug-file - Executing task :netease:default@PreBuild +[2025-07-09T18:57:10.466] [DEBUG] debug-file - Incremental task netease:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:57:10.466] [DEBUG] debug-file - netease : default@PreBuild cost memory 0.26697540283203125 +[2025-07-09T18:57:10.467] [INFO] debug-file - UP-TO-DATE :netease:default@PreBuild... +[2025-07-09T18:57:10.468] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:57:10.468] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:57:10.470] [DEBUG] debug-file - Executing task :conversationkit_ui:default@PreBuild +[2025-07-09T18:57:10.472] [DEBUG] debug-file - Incremental task conversationkit_ui:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:57:10.472] [DEBUG] debug-file - conversationkit_ui : default@PreBuild cost memory 0.25482940673828125 +[2025-07-09T18:57:10.473] [INFO] debug-file - UP-TO-DATE :conversationkit_ui:default@PreBuild... +[2025-07-09T18:57:10.474] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:57:10.474] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:57:10.475] [DEBUG] debug-file - Executing task :common:default@PreBuild +[2025-07-09T18:57:10.477] [DEBUG] debug-file - Incremental task common:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:57:10.478] [DEBUG] debug-file - common : default@PreBuild cost memory 0.24456787109375 +[2025-07-09T18:57:10.478] [INFO] debug-file - UP-TO-DATE :common:default@PreBuild... +[2025-07-09T18:57:10.479] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:57:10.479] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:57:10.481] [DEBUG] debug-file - Executing task :chatkit_ui:default@PreBuild +[2025-07-09T18:57:10.484] [DEBUG] debug-file - Incremental task chatkit_ui:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:57:10.484] [DEBUG] debug-file - chatkit_ui : default@PreBuild cost memory 0.292938232421875 +[2025-07-09T18:57:10.485] [INFO] debug-file - UP-TO-DATE :chatkit_ui:default@PreBuild... +[2025-07-09T18:57:10.486] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:57:10.486] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:57:10.487] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@PreBuild +[2025-07-09T18:57:10.489] [DEBUG] debug-file - Incremental task localconversationkit_ui:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:57:10.489] [DEBUG] debug-file - localconversationkit_ui : default@PreBuild cost memory 0.2555694580078125 +[2025-07-09T18:57:10.490] [INFO] debug-file - UP-TO-DATE :localconversationkit_ui:default@PreBuild... +[2025-07-09T18:57:10.493] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:10.493] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:10.493] [DEBUG] debug-file - Executing task :default:default@CreateModuleInfo +[2025-07-09T18:57:10.494] [DEBUG] debug-file - Task 'default:default@CreateModuleInfo' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:10.494] [DEBUG] debug-file - default : default@CreateModuleInfo cost memory 0.06000518798828125 +[2025-07-09T18:57:10.494] [DEBUG] debug-file - runTaskFromQueue task cost before running: 751 ms +[2025-07-09T18:57:10.494] [INFO] debug-file - Finished :default:default@CreateModuleInfo... after 1 ms +[2025-07-09T18:57:10.496] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:10.496] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:10.499] [DEBUG] debug-file - Executing task :default:default@GenerateMetadata +[2025-07-09T18:57:10.500] [DEBUG] debug-file - Task 'default:default@GenerateMetadata' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:10.501] [DEBUG] debug-file - Incremental task default:default@GenerateMetadata pre-execution cost: 1 ms . +[2025-07-09T18:57:10.501] [DEBUG] debug-file - default : default@GenerateMetadata cost memory 0.09603118896484375 +[2025-07-09T18:57:10.501] [INFO] debug-file - UP-TO-DATE :default:default@GenerateMetadata... +[2025-07-09T18:57:10.502] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:10.502] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:10.503] [DEBUG] debug-file - Executing task :default:default@PreCheckSyscap +[2025-07-09T18:57:10.503] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:10.503] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:10.503] [DEBUG] debug-file - default : default@PreCheckSyscap cost memory 0.06896209716796875 +[2025-07-09T18:57:10.503] [DEBUG] debug-file - runTaskFromQueue task cost before running: 761 ms +[2025-07-09T18:57:10.503] [INFO] debug-file - Finished :default:default@PreCheckSyscap... after 1 ms +[2025-07-09T18:57:10.504] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:10.504] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:10.519] [DEBUG] debug-file - Executing task :default:default@GeneratePkgContextInfo +[2025-07-09T18:57:10.519] [DEBUG] debug-file - Task 'default:default@GeneratePkgContextInfo' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:10.520] [DEBUG] debug-file - Incremental task default:default@GeneratePkgContextInfo pre-execution cost: 1 ms . +[2025-07-09T18:57:10.520] [DEBUG] debug-file - default : default@GeneratePkgContextInfo cost memory 0.20891571044921875 +[2025-07-09T18:57:10.520] [INFO] debug-file - UP-TO-DATE :default:default@GeneratePkgContextInfo... +[2025-07-09T18:57:10.521] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:10.521] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:10.522] [DEBUG] debug-file - Executing task :default:default@ProcessIntegratedHsp +[2025-07-09T18:57:10.523] [DEBUG] debug-file - default:default@ProcessIntegratedHsp is not up-to-date, since the output file 'D:\202076work\hongmeng\newExpert\harmony\build\cache\default\integrated_hsp\integratedHspCache.json' does not exist. +[2025-07-09T18:57:10.523] [DEBUG] debug-file - Incremental task default:default@ProcessIntegratedHsp pre-execution cost: 1 ms . +[2025-07-09T18:57:10.523] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:10.523] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:10.523] [DEBUG] debug-file - default : default@ProcessIntegratedHsp cost memory 0.14908599853515625 +[2025-07-09T18:57:10.524] [DEBUG] debug-file - runTaskFromQueue task cost before running: 781 ms +[2025-07-09T18:57:10.524] [INFO] debug-file - Finished :default:default@ProcessIntegratedHsp... after 2 ms +[2025-07-09T18:57:10.525] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:57:10.525] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:57:10.525] [DEBUG] debug-file - Executing task :basic:default@CreateHarBuildProfile +[2025-07-09T18:57:10.526] [DEBUG] debug-file - Task 'basic:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:10.526] [DEBUG] debug-file - Incremental task basic:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:57:10.526] [DEBUG] debug-file - basic : default@CreateHarBuildProfile cost memory 0.08087158203125 +[2025-07-09T18:57:10.526] [INFO] debug-file - UP-TO-DATE :basic:default@CreateHarBuildProfile... +[2025-07-09T18:57:10.527] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:57:10.527] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:57:10.528] [DEBUG] debug-file - Executing task :basic:default@ConfigureCmake +[2025-07-09T18:57:10.528] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:57:10.528] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:57:10.528] [DEBUG] debug-file - basic : default@ConfigureCmake cost memory 0.0361328125 +[2025-07-09T18:57:10.528] [DEBUG] debug-file - runTaskFromQueue task cost before running: 785 ms +[2025-07-09T18:57:10.528] [INFO] debug-file - Finished :basic:default@ConfigureCmake... after 1 ms +[2025-07-09T18:57:10.529] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:57:10.529] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:57:10.530] [DEBUG] debug-file - Executing task :basic:default@MergeProfile +[2025-07-09T18:57:10.531] [DEBUG] debug-file - Incremental task basic:default@MergeProfile pre-execution cost: 1 ms . +[2025-07-09T18:57:10.531] [DEBUG] debug-file - basic : default@MergeProfile cost memory 0.1526031494140625 +[2025-07-09T18:57:10.532] [INFO] debug-file - UP-TO-DATE :basic:default@MergeProfile... +[2025-07-09T18:57:10.533] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:57:10.533] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:57:10.533] [DEBUG] debug-file - Executing task :polyv:default@CreateHarBuildProfile +[2025-07-09T18:57:10.533] [DEBUG] debug-file - Task 'polyv:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:10.534] [DEBUG] debug-file - Incremental task polyv:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:57:10.534] [DEBUG] debug-file - polyv : default@CreateHarBuildProfile cost memory 0.08089447021484375 +[2025-07-09T18:57:10.534] [INFO] debug-file - UP-TO-DATE :polyv:default@CreateHarBuildProfile... +[2025-07-09T18:57:10.535] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:57:10.535] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:57:10.536] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-business. +[2025-07-09T18:57:10.536] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-core-ijk. +[2025-07-09T18:57:10.537] [DEBUG] debug-file - Executing task :polyv:default@ConfigureCmake +[2025-07-09T18:57:10.537] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:57:10.537] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:57:10.537] [DEBUG] debug-file - polyv : default@ConfigureCmake cost memory 0.039215087890625 +[2025-07-09T18:57:10.537] [DEBUG] debug-file - runTaskFromQueue task cost before running: 795 ms +[2025-07-09T18:57:10.537] [INFO] debug-file - Finished :polyv:default@ConfigureCmake... after 1 ms +[2025-07-09T18:57:10.538] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:57:10.538] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:57:10.539] [DEBUG] debug-file - Executing task :polyv:default@MergeProfile +[2025-07-09T18:57:10.543] [DEBUG] debug-file - Incremental task polyv:default@MergeProfile pre-execution cost: 2 ms . +[2025-07-09T18:57:10.543] [DEBUG] debug-file - polyv : default@MergeProfile cost memory 0.38397979736328125 +[2025-07-09T18:57:10.543] [INFO] debug-file - UP-TO-DATE :polyv:default@MergeProfile... +[2025-07-09T18:57:10.544] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:57:10.544] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:57:10.545] [DEBUG] debug-file - Executing task :corekit:default@CreateHarBuildProfile +[2025-07-09T18:57:10.545] [DEBUG] debug-file - Task 'corekit:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:10.546] [DEBUG] debug-file - Incremental task corekit:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:57:10.546] [DEBUG] debug-file - corekit : default@CreateHarBuildProfile cost memory 0.08026885986328125 +[2025-07-09T18:57:10.546] [INFO] debug-file - UP-TO-DATE :corekit:default@CreateHarBuildProfile... +[2025-07-09T18:57:10.547] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:57:10.547] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:57:10.547] [DEBUG] debug-file - Executing task :corekit:default@ConfigureCmake +[2025-07-09T18:57:10.547] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:57:10.547] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:57:10.547] [DEBUG] debug-file - corekit : default@ConfigureCmake cost memory 0.03717041015625 +[2025-07-09T18:57:10.547] [DEBUG] debug-file - runTaskFromQueue task cost before running: 805 ms +[2025-07-09T18:57:10.547] [INFO] debug-file - Finished :corekit:default@ConfigureCmake... after 1 ms +[2025-07-09T18:57:10.548] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:57:10.548] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:57:10.548] [DEBUG] debug-file - Executing task :corekit:default@MergeProfile +[2025-07-09T18:57:10.550] [DEBUG] debug-file - Incremental task corekit:default@MergeProfile pre-execution cost: 1 ms . +[2025-07-09T18:57:10.550] [DEBUG] debug-file - corekit : default@MergeProfile cost memory 0.15489959716796875 +[2025-07-09T18:57:10.550] [INFO] debug-file - UP-TO-DATE :corekit:default@MergeProfile... +[2025-07-09T18:57:10.551] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:57:10.551] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:57:10.552] [DEBUG] debug-file - Executing task :common:default@CreateHarBuildProfile +[2025-07-09T18:57:10.552] [DEBUG] debug-file - Task 'common:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:10.552] [DEBUG] debug-file - Incremental task common:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:57:10.552] [DEBUG] debug-file - common : default@CreateHarBuildProfile cost memory 0.0804443359375 +[2025-07-09T18:57:10.552] [INFO] debug-file - UP-TO-DATE :common:default@CreateHarBuildProfile... +[2025-07-09T18:57:10.553] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:57:10.553] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:57:10.554] [DEBUG] debug-file - Executing task :common:default@ConfigureCmake +[2025-07-09T18:57:10.554] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:57:10.554] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:57:10.554] [DEBUG] debug-file - common : default@ConfigureCmake cost memory 0.03861236572265625 +[2025-07-09T18:57:10.554] [DEBUG] debug-file - runTaskFromQueue task cost before running: 811 ms +[2025-07-09T18:57:10.554] [INFO] debug-file - Finished :common:default@ConfigureCmake... after 1 ms +[2025-07-09T18:57:10.555] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:57:10.555] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:57:10.555] [DEBUG] debug-file - Executing task :common:default@MergeProfile +[2025-07-09T18:57:10.557] [DEBUG] debug-file - Incremental task common:default@MergeProfile pre-execution cost: 1 ms . +[2025-07-09T18:57:10.557] [DEBUG] debug-file - common : default@MergeProfile cost memory 0.18045806884765625 +[2025-07-09T18:57:10.557] [INFO] debug-file - UP-TO-DATE :common:default@MergeProfile... +[2025-07-09T18:57:10.559] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:10.559] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:10.559] [DEBUG] debug-file - Executing task :default:default@SyscapTransform +[2025-07-09T18:57:10.559] [DEBUG] debug-file - File: 'D:\202076work\hongmeng\newExpert\harmony\products\expert\src\main\syscap.json' from 'sysCapJsonPath' is not exists, just ignore. +[2025-07-09T18:57:10.560] [DEBUG] debug-file - Task 'default:default@SyscapTransform' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:10.560] [DEBUG] debug-file - default:default@SyscapTransform is not up-to-date, since the output file 'D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\syscap\default\rpcid.sc' does not exist. +[2025-07-09T18:57:10.560] [DEBUG] debug-file - Incremental task default:default@SyscapTransform pre-execution cost: 1 ms . +[2025-07-09T18:57:10.560] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:10.560] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:10.561] [DEBUG] debug-file - default : default@SyscapTransform cost memory 0.18326568603515625 +[2025-07-09T18:57:10.561] [DEBUG] debug-file - runTaskFromQueue task cost before running: 818 ms +[2025-07-09T18:57:10.561] [INFO] debug-file - Finished :default:default@SyscapTransform... after 2 ms +[2025-07-09T18:57:10.562] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:10.562] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:10.563] [DEBUG] debug-file - Executing task :default:default@ProcessRouterMap +[2025-07-09T18:57:10.568] [DEBUG] debug-file - Incremental task default:default@ProcessRouterMap pre-execution cost: 3 ms . +[2025-07-09T18:57:10.568] [DEBUG] debug-file - default : default@ProcessRouterMap cost memory 0.8824615478515625 +[2025-07-09T18:57:10.570] [INFO] debug-file - UP-TO-DATE :default:default@ProcessRouterMap... +[2025-07-09T18:57:10.571] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:57:10.571] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:57:10.571] [DEBUG] debug-file - Executing task :mypage:default@CreateHarBuildProfile +[2025-07-09T18:57:10.571] [DEBUG] debug-file - Task 'mypage:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:10.572] [DEBUG] debug-file - Incremental task mypage:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:57:10.572] [DEBUG] debug-file - mypage : default@CreateHarBuildProfile cost memory 0.081634521484375 +[2025-07-09T18:57:10.572] [INFO] debug-file - UP-TO-DATE :mypage:default@CreateHarBuildProfile... +[2025-07-09T18:57:10.574] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:57:10.574] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:57:10.574] [DEBUG] debug-file - Executing task :register:default@CreateHarBuildProfile +[2025-07-09T18:57:10.574] [DEBUG] debug-file - Task 'register:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:10.575] [DEBUG] debug-file - Incremental task register:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:57:10.575] [DEBUG] debug-file - register : default@CreateHarBuildProfile cost memory 0.08103179931640625 +[2025-07-09T18:57:10.575] [INFO] debug-file - UP-TO-DATE :register:default@CreateHarBuildProfile... +[2025-07-09T18:57:10.577] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:57:10.577] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:57:10.577] [DEBUG] debug-file - Executing task :basic:default@BuildNativeWithCmake +[2025-07-09T18:57:10.578] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:57:10.578] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:57:10.578] [DEBUG] debug-file - basic : default@BuildNativeWithCmake cost memory 0.03717803955078125 +[2025-07-09T18:57:10.578] [DEBUG] debug-file - runTaskFromQueue task cost before running: 835 ms +[2025-07-09T18:57:10.578] [INFO] debug-file - Finished :basic:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:57:10.579] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:57:10.579] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:57:10.580] [DEBUG] debug-file - Executing task :mypage:default@MergeProfile +[2025-07-09T18:57:10.582] [DEBUG] debug-file - Incremental task mypage:default@MergeProfile pre-execution cost: 2 ms . +[2025-07-09T18:57:10.582] [DEBUG] debug-file - mypage : default@MergeProfile cost memory 0.1896209716796875 +[2025-07-09T18:57:10.583] [INFO] debug-file - UP-TO-DATE :mypage:default@MergeProfile... +[2025-07-09T18:57:10.584] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:57:10.584] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:57:10.585] [DEBUG] debug-file - Executing task :register:default@MergeProfile +[2025-07-09T18:57:10.589] [DEBUG] debug-file - Incremental task register:default@MergeProfile pre-execution cost: 2 ms . +[2025-07-09T18:57:10.589] [DEBUG] debug-file - register : default@MergeProfile cost memory -12.488784790039062 +[2025-07-09T18:57:10.589] [INFO] debug-file - UP-TO-DATE :register:default@MergeProfile... +[2025-07-09T18:57:10.590] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:57:10.590] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:57:10.590] [DEBUG] debug-file - Executing task :scene_single_video:default@CreateHarBuildProfile +[2025-07-09T18:57:10.591] [DEBUG] debug-file - Task 'scene_single_video:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:10.591] [DEBUG] debug-file - Incremental task scene_single_video:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:57:10.591] [DEBUG] debug-file - scene_single_video : default@CreateHarBuildProfile cost memory 0.0808868408203125 +[2025-07-09T18:57:10.591] [INFO] debug-file - UP-TO-DATE :scene_single_video:default@CreateHarBuildProfile... +[2025-07-09T18:57:10.592] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:57:10.592] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:57:10.593] [DEBUG] debug-file - Executing task :polyv:default@BuildNativeWithCmake +[2025-07-09T18:57:10.593] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:57:10.593] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:57:10.593] [DEBUG] debug-file - polyv : default@BuildNativeWithCmake cost memory 0.0402679443359375 +[2025-07-09T18:57:10.593] [DEBUG] debug-file - runTaskFromQueue task cost before running: 850 ms +[2025-07-09T18:57:10.593] [INFO] debug-file - Finished :polyv:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:57:10.594] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:57:10.594] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:57:10.594] [DEBUG] debug-file - Executing task :scene_single_video:default@MergeProfile +[2025-07-09T18:57:10.598] [DEBUG] debug-file - Incremental task scene_single_video:default@MergeProfile pre-execution cost: 2 ms . +[2025-07-09T18:57:10.598] [DEBUG] debug-file - scene_single_video : default@MergeProfile cost memory 0.42023468017578125 +[2025-07-09T18:57:10.599] [INFO] debug-file - UP-TO-DATE :scene_single_video:default@MergeProfile... +[2025-07-09T18:57:10.600] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:57:10.600] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:57:10.600] [DEBUG] debug-file - Executing task :chatkit:default@CreateHarBuildProfile +[2025-07-09T18:57:10.600] [DEBUG] debug-file - Task 'chatkit:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:10.601] [DEBUG] debug-file - Incremental task chatkit:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:57:10.601] [DEBUG] debug-file - chatkit : default@CreateHarBuildProfile cost memory 0.08050537109375 +[2025-07-09T18:57:10.601] [INFO] debug-file - UP-TO-DATE :chatkit:default@CreateHarBuildProfile... +[2025-07-09T18:57:10.602] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:57:10.602] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:57:10.602] [DEBUG] debug-file - Executing task :corekit:default@BuildNativeWithCmake +[2025-07-09T18:57:10.602] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:57:10.602] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:57:10.602] [DEBUG] debug-file - corekit : default@BuildNativeWithCmake cost memory 0.0373077392578125 +[2025-07-09T18:57:10.602] [DEBUG] debug-file - runTaskFromQueue task cost before running: 860 ms +[2025-07-09T18:57:10.603] [INFO] debug-file - Finished :corekit:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:57:10.604] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:57:10.604] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:57:10.604] [DEBUG] debug-file - Executing task :chatkit:default@MergeProfile +[2025-07-09T18:57:10.609] [DEBUG] debug-file - Incremental task chatkit:default@MergeProfile pre-execution cost: 2 ms . +[2025-07-09T18:57:10.609] [DEBUG] debug-file - chatkit : default@MergeProfile cost memory 0.41297149658203125 +[2025-07-09T18:57:10.609] [INFO] debug-file - UP-TO-DATE :chatkit:default@MergeProfile... +[2025-07-09T18:57:10.610] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:57:10.610] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:57:10.610] [DEBUG] debug-file - Executing task :common:default@BuildNativeWithCmake +[2025-07-09T18:57:10.610] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:57:10.610] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:57:10.610] [DEBUG] debug-file - common : default@BuildNativeWithCmake cost memory 0.038665771484375 +[2025-07-09T18:57:10.611] [DEBUG] debug-file - runTaskFromQueue task cost before running: 868 ms +[2025-07-09T18:57:10.611] [INFO] debug-file - Finished :common:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:57:10.612] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:10.612] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:10.612] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.613] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.613] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.613] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.613] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.613] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.613] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.613] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.613] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.613] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.613] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.613] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.613] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.620] [DEBUG] debug-file - Executing task :default:default@GenerateLoaderJson +[2025-07-09T18:57:10.622] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.622] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.622] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.623] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.623] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.623] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.623] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.623] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.623] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.623] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.623] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.623] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.623] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.625] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.625] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.625] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.625] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.625] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.625] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.630] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.630] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.630] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.632] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.632] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.632] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.632] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.669] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.669] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.670] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.670] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.670] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.670] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.670] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.670] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.670] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.670] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.670] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.670] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.670] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.673] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.673] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.673] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.673] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.673] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.673] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.677] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.677] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.677] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.678] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.678] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.678] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.678] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.682] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.682] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.682] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.683] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.683] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.683] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.686] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.686] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.686] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.687] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.687] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.687] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.687] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.777] [DEBUG] debug-file - Incremental task default:default@GenerateLoaderJson pre-execution cost: 110 ms . +[2025-07-09T18:57:10.777] [DEBUG] debug-file - default : default@GenerateLoaderJson cost memory -2.6120986938476562 +[2025-07-09T18:57:10.780] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.780] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.780] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.780] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.780] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.780] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.780] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.780] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.780] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.780] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.781] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.781] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.781] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.783] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.783] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.783] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.784] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.784] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.784] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.787] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.787] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.787] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.788] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.788] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.788] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.788] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:10.789] [INFO] debug-file - UP-TO-DATE :default:default@GenerateLoaderJson... +[2025-07-09T18:57:10.791] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:57:10.791] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:57:10.791] [DEBUG] debug-file - Executing task :mypage:default@ConfigureCmake +[2025-07-09T18:57:10.791] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:57:10.791] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:57:10.791] [DEBUG] debug-file - mypage : default@ConfigureCmake cost memory 0.03896331787109375 +[2025-07-09T18:57:10.791] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 49 ms +[2025-07-09T18:57:10.791] [INFO] debug-file - Finished :mypage:default@ConfigureCmake... after 1 ms +[2025-07-09T18:57:10.792] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:57:10.792] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:57:10.793] [DEBUG] debug-file - Executing task :basic:default@BuildNativeWithNinja +[2025-07-09T18:57:10.793] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:57:10.793] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:57:10.793] [DEBUG] debug-file - basic : default@BuildNativeWithNinja cost memory 0.05744171142578125 +[2025-07-09T18:57:10.793] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 51 ms +[2025-07-09T18:57:10.794] [INFO] debug-file - Finished :basic:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:57:10.795] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:57:10.795] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:57:10.795] [DEBUG] debug-file - Executing task :register:default@ConfigureCmake +[2025-07-09T18:57:10.795] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:57:10.795] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:57:10.795] [DEBUG] debug-file - register : default@ConfigureCmake cost memory 0.0389404296875 +[2025-07-09T18:57:10.795] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 53 ms +[2025-07-09T18:57:10.795] [INFO] debug-file - Finished :register:default@ConfigureCmake... after 1 ms +[2025-07-09T18:57:10.796] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:57:10.796] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:57:10.797] [DEBUG] debug-file - Executing task :Home:default@CreateHarBuildProfile +[2025-07-09T18:57:10.797] [DEBUG] debug-file - Task 'Home:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:10.797] [DEBUG] debug-file - Incremental task Home:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:57:10.797] [DEBUG] debug-file - Home : default@CreateHarBuildProfile cost memory 0.081207275390625 +[2025-07-09T18:57:10.797] [INFO] debug-file - UP-TO-DATE :Home:default@CreateHarBuildProfile... +[2025-07-09T18:57:10.798] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:57:10.798] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:57:10.799] [DEBUG] debug-file - Executing task :polyv:default@BuildNativeWithNinja +[2025-07-09T18:57:10.799] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:57:10.799] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:57:10.799] [DEBUG] debug-file - polyv : default@BuildNativeWithNinja cost memory 0.05980682373046875 +[2025-07-09T18:57:10.799] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 57 ms +[2025-07-09T18:57:10.799] [INFO] debug-file - Finished :polyv:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:57:10.800] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:57:10.800] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:57:10.801] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-business. +[2025-07-09T18:57:10.801] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-core-ijk. +[2025-07-09T18:57:10.802] [DEBUG] debug-file - Executing task :scene_single_video:default@ConfigureCmake +[2025-07-09T18:57:10.802] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:57:10.802] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:57:10.802] [DEBUG] debug-file - scene_single_video : default@ConfigureCmake cost memory 0.03980255126953125 +[2025-07-09T18:57:10.802] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 59 ms +[2025-07-09T18:57:10.802] [INFO] debug-file - Finished :scene_single_video:default@ConfigureCmake... after 1 ms +[2025-07-09T18:57:10.803] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:57:10.803] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:57:10.804] [DEBUG] debug-file - Executing task :Home:default@MergeProfile +[2025-07-09T18:57:10.809] [DEBUG] debug-file - Incremental task Home:default@MergeProfile pre-execution cost: 2 ms . +[2025-07-09T18:57:10.809] [DEBUG] debug-file - Home : default@MergeProfile cost memory 0.48862457275390625 +[2025-07-09T18:57:10.809] [INFO] debug-file - UP-TO-DATE :Home:default@MergeProfile... +[2025-07-09T18:57:10.810] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:57:10.810] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:57:10.811] [DEBUG] debug-file - Executing task :chatkit_ui:default@CreateHarBuildProfile +[2025-07-09T18:57:10.811] [DEBUG] debug-file - Task 'chatkit_ui:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:10.811] [DEBUG] debug-file - Incremental task chatkit_ui:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:57:10.811] [DEBUG] debug-file - chatkit_ui : default@CreateHarBuildProfile cost memory 0.08054351806640625 +[2025-07-09T18:57:10.811] [INFO] debug-file - UP-TO-DATE :chatkit_ui:default@CreateHarBuildProfile... +[2025-07-09T18:57:10.812] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:57:10.812] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:57:10.813] [DEBUG] debug-file - Executing task :conversationkit_ui:default@CreateHarBuildProfile +[2025-07-09T18:57:10.813] [DEBUG] debug-file - Task 'conversationkit_ui:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:10.813] [DEBUG] debug-file - Incremental task conversationkit_ui:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:57:10.813] [DEBUG] debug-file - conversationkit_ui : default@CreateHarBuildProfile cost memory 0.0813751220703125 +[2025-07-09T18:57:10.813] [INFO] debug-file - UP-TO-DATE :conversationkit_ui:default@CreateHarBuildProfile... +[2025-07-09T18:57:10.814] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:57:10.814] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:57:10.815] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@CreateHarBuildProfile +[2025-07-09T18:57:10.815] [DEBUG] debug-file - Task 'localconversationkit_ui:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:10.815] [DEBUG] debug-file - Incremental task localconversationkit_ui:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:57:10.815] [DEBUG] debug-file - localconversationkit_ui : default@CreateHarBuildProfile cost memory 0.08112335205078125 +[2025-07-09T18:57:10.815] [INFO] debug-file - UP-TO-DATE :localconversationkit_ui:default@CreateHarBuildProfile... +[2025-07-09T18:57:10.816] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:57:10.816] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:57:10.817] [DEBUG] debug-file - Executing task :corekit:default@BuildNativeWithNinja +[2025-07-09T18:57:10.817] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:57:10.817] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:57:10.818] [DEBUG] debug-file - corekit : default@BuildNativeWithNinja cost memory 0.056793212890625 +[2025-07-09T18:57:10.818] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 75 ms +[2025-07-09T18:57:10.819] [INFO] debug-file - Finished :corekit:default@BuildNativeWithNinja... after 2 ms +[2025-07-09T18:57:10.820] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:57:10.820] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:57:10.820] [DEBUG] debug-file - Resolve native package @nimsdk/conversation. +[2025-07-09T18:57:10.820] [DEBUG] debug-file - Resolve native package @nimsdk/message. +[2025-07-09T18:57:10.821] [DEBUG] debug-file - Resolve native package @nimsdk/team. +[2025-07-09T18:57:10.821] [DEBUG] debug-file - Resolve native package @nimsdk/user. +[2025-07-09T18:57:10.821] [DEBUG] debug-file - Resolve native package @nimsdk/friend. +[2025-07-09T18:57:10.822] [DEBUG] debug-file - Resolve native package @nimsdk/nim. +[2025-07-09T18:57:10.822] [DEBUG] debug-file - Executing task :chatkit:default@ConfigureCmake +[2025-07-09T18:57:10.822] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:57:10.822] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:57:10.822] [DEBUG] debug-file - chatkit : default@ConfigureCmake cost memory 0.04804229736328125 +[2025-07-09T18:57:10.822] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 80 ms +[2025-07-09T18:57:10.822] [INFO] debug-file - Finished :chatkit:default@ConfigureCmake... after 1 ms +[2025-07-09T18:57:10.823] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:57:10.823] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:57:10.824] [DEBUG] debug-file - Executing task :chatkit_ui:default@MergeProfile +[2025-07-09T18:57:10.830] [DEBUG] debug-file - Incremental task chatkit_ui:default@MergeProfile pre-execution cost: 3 ms . +[2025-07-09T18:57:10.830] [DEBUG] debug-file - chatkit_ui : default@MergeProfile cost memory 0.5782852172851562 +[2025-07-09T18:57:10.830] [INFO] debug-file - UP-TO-DATE :chatkit_ui:default@MergeProfile... +[2025-07-09T18:57:10.831] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:57:10.831] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:57:10.832] [DEBUG] debug-file - Executing task :conversationkit_ui:default@MergeProfile +[2025-07-09T18:57:10.837] [DEBUG] debug-file - Incremental task conversationkit_ui:default@MergeProfile pre-execution cost: 2 ms . +[2025-07-09T18:57:10.837] [DEBUG] debug-file - conversationkit_ui : default@MergeProfile cost memory 0.5089645385742188 +[2025-07-09T18:57:10.838] [INFO] debug-file - UP-TO-DATE :conversationkit_ui:default@MergeProfile... +[2025-07-09T18:57:10.839] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:57:10.839] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:57:10.839] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@MergeProfile +[2025-07-09T18:57:10.844] [DEBUG] debug-file - Incremental task localconversationkit_ui:default@MergeProfile pre-execution cost: 2 ms . +[2025-07-09T18:57:10.844] [DEBUG] debug-file - localconversationkit_ui : default@MergeProfile cost memory 0.507781982421875 +[2025-07-09T18:57:10.845] [INFO] debug-file - UP-TO-DATE :localconversationkit_ui:default@MergeProfile... +[2025-07-09T18:57:10.846] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:57:10.846] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:57:10.846] [DEBUG] debug-file - Executing task :common:default@BuildNativeWithNinja +[2025-07-09T18:57:10.846] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:57:10.846] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:57:10.846] [DEBUG] debug-file - common : default@BuildNativeWithNinja cost memory 0.05825042724609375 +[2025-07-09T18:57:10.846] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 104 ms +[2025-07-09T18:57:10.847] [INFO] debug-file - Finished :common:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:57:10.848] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:57:10.848] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:57:10.848] [DEBUG] debug-file - Executing task :mypage:default@BuildNativeWithCmake +[2025-07-09T18:57:10.848] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:57:10.848] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:57:10.848] [DEBUG] debug-file - mypage : default@BuildNativeWithCmake cost memory 0.0390167236328125 +[2025-07-09T18:57:10.849] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 106 ms +[2025-07-09T18:57:10.849] [INFO] debug-file - Finished :mypage:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:57:10.850] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:57:10.850] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:57:10.850] [DEBUG] debug-file - Executing task :basic:default@ProcessLibs +[2025-07-09T18:57:10.852] [DEBUG] debug-file - Incremental task basic:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:57:10.852] [DEBUG] debug-file - basic : default@ProcessLibs cost memory 0.13292694091796875 +[2025-07-09T18:57:10.852] [INFO] debug-file - UP-TO-DATE :basic:default@ProcessLibs... +[2025-07-09T18:57:10.853] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:57:10.853] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:57:10.854] [DEBUG] debug-file - Executing task :register:default@BuildNativeWithCmake +[2025-07-09T18:57:10.854] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:57:10.854] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:57:10.854] [DEBUG] debug-file - register : default@BuildNativeWithCmake cost memory 0.038970947265625 +[2025-07-09T18:57:10.854] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 111 ms +[2025-07-09T18:57:10.854] [INFO] debug-file - Finished :register:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:57:10.855] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:57:10.855] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:57:10.855] [DEBUG] debug-file - Executing task :polyv:default@ProcessLibs +[2025-07-09T18:57:10.857] [DEBUG] debug-file - Incremental task polyv:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:57:10.857] [DEBUG] debug-file - polyv : default@ProcessLibs cost memory 0.12945556640625 +[2025-07-09T18:57:10.857] [INFO] debug-file - UP-TO-DATE :polyv:default@ProcessLibs... +[2025-07-09T18:57:10.858] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:57:10.858] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:57:10.858] [DEBUG] debug-file - Executing task :scene_single_video:default@BuildNativeWithCmake +[2025-07-09T18:57:10.858] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:57:10.858] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:57:10.858] [DEBUG] debug-file - scene_single_video : default@BuildNativeWithCmake cost memory 0.03995513916015625 +[2025-07-09T18:57:10.858] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 116 ms +[2025-07-09T18:57:10.858] [INFO] debug-file - Finished :scene_single_video:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:57:10.860] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:57:10.860] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:57:10.860] [DEBUG] debug-file - Executing task :netease:default@CreateHarBuildProfile +[2025-07-09T18:57:10.860] [DEBUG] debug-file - Task 'netease:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:10.860] [DEBUG] debug-file - Incremental task netease:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:57:10.861] [DEBUG] debug-file - netease : default@CreateHarBuildProfile cost memory 0.07904815673828125 +[2025-07-09T18:57:10.861] [INFO] debug-file - UP-TO-DATE :netease:default@CreateHarBuildProfile... +[2025-07-09T18:57:10.862] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:57:10.862] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:57:10.862] [DEBUG] debug-file - Executing task :corekit:default@ProcessLibs +[2025-07-09T18:57:10.863] [DEBUG] debug-file - Incremental task corekit:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:57:10.863] [DEBUG] debug-file - corekit : default@ProcessLibs cost memory 0.12903594970703125 +[2025-07-09T18:57:10.863] [INFO] debug-file - UP-TO-DATE :corekit:default@ProcessLibs... +[2025-07-09T18:57:10.864] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:57:10.864] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:57:10.865] [DEBUG] debug-file - Executing task :chatkit:default@BuildNativeWithCmake +[2025-07-09T18:57:10.865] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:57:10.865] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:57:10.865] [DEBUG] debug-file - chatkit : default@BuildNativeWithCmake cost memory 0.04807281494140625 +[2025-07-09T18:57:10.865] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 122 ms +[2025-07-09T18:57:10.865] [INFO] debug-file - Finished :chatkit:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:57:10.866] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:57:10.866] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:57:10.867] [DEBUG] debug-file - Executing task :netease:default@MergeProfile +[2025-07-09T18:57:10.874] [DEBUG] debug-file - Incremental task netease:default@MergeProfile pre-execution cost: 3 ms . +[2025-07-09T18:57:10.874] [DEBUG] debug-file - netease : default@MergeProfile cost memory 0.676422119140625 +[2025-07-09T18:57:10.875] [INFO] debug-file - UP-TO-DATE :netease:default@MergeProfile... +[2025-07-09T18:57:10.876] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:57:10.876] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:57:10.876] [DEBUG] debug-file - Executing task :common:default@ProcessLibs +[2025-07-09T18:57:10.877] [DEBUG] debug-file - Incremental task common:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:57:10.877] [DEBUG] debug-file - common : default@ProcessLibs cost memory 0.12908172607421875 +[2025-07-09T18:57:10.877] [INFO] debug-file - UP-TO-DATE :common:default@ProcessLibs... +[2025-07-09T18:57:10.878] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:57:10.878] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:57:10.880] [DEBUG] debug-file - Executing task :basic:default@DoNativeStrip +[2025-07-09T18:57:10.880] [DEBUG] debug-file - Task 'basic:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:10.880] [DEBUG] debug-file - Incremental task basic:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:57:10.880] [DEBUG] debug-file - basic : default@DoNativeStrip cost memory 0.07266998291015625 +[2025-07-09T18:57:10.880] [INFO] debug-file - UP-TO-DATE :basic:default@DoNativeStrip... +[2025-07-09T18:57:10.881] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:57:10.882] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:57:10.883] [DEBUG] debug-file - Executing task :polyv:default@DoNativeStrip +[2025-07-09T18:57:10.883] [DEBUG] debug-file - Task 'polyv:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:10.884] [DEBUG] debug-file - Incremental task polyv:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:57:10.884] [DEBUG] debug-file - polyv : default@DoNativeStrip cost memory 0.0722503662109375 +[2025-07-09T18:57:10.884] [INFO] debug-file - UP-TO-DATE :polyv:default@DoNativeStrip... +[2025-07-09T18:57:10.885] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:57:10.885] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:57:10.885] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-business. +[2025-07-09T18:57:10.885] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-core-ijk. +[2025-07-09T18:57:10.886] [DEBUG] debug-file - Executing task :Home:default@ConfigureCmake +[2025-07-09T18:57:10.886] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:57:10.886] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:57:10.886] [DEBUG] debug-file - Home : default@ConfigureCmake cost memory 0.0459442138671875 +[2025-07-09T18:57:10.886] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 144 ms +[2025-07-09T18:57:10.886] [INFO] debug-file - Finished :Home:default@ConfigureCmake... after 1 ms +[2025-07-09T18:57:10.887] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:10.887] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:10.888] [DEBUG] debug-file - Executing task :default:default@CreateBuildProfile +[2025-07-09T18:57:10.889] [DEBUG] debug-file - Task 'default:default@CreateBuildProfile' cost while wrapping incremental declarations: 2 ms +[2025-07-09T18:57:10.890] [DEBUG] debug-file - Incremental task default:default@CreateBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:57:10.890] [DEBUG] debug-file - default : default@CreateBuildProfile cost memory -14.55413818359375 +[2025-07-09T18:57:10.890] [INFO] debug-file - UP-TO-DATE :default:default@CreateBuildProfile... +[2025-07-09T18:57:10.891] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:57:10.891] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:57:10.892] [DEBUG] debug-file - Executing task :corekit:default@DoNativeStrip +[2025-07-09T18:57:10.892] [DEBUG] debug-file - Task 'corekit:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:10.893] [DEBUG] debug-file - Incremental task corekit:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:57:10.893] [DEBUG] debug-file - corekit : default@DoNativeStrip cost memory 0.0725555419921875 +[2025-07-09T18:57:10.893] [INFO] debug-file - UP-TO-DATE :corekit:default@DoNativeStrip... +[2025-07-09T18:57:10.894] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:57:10.894] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:57:10.894] [DEBUG] debug-file - Resolve native package @nimsdk/conversation. +[2025-07-09T18:57:10.895] [DEBUG] debug-file - Resolve native package @nimsdk/message. +[2025-07-09T18:57:10.895] [DEBUG] debug-file - Resolve native package @nimsdk/team. +[2025-07-09T18:57:10.895] [DEBUG] debug-file - Resolve native package @nimsdk/user. +[2025-07-09T18:57:10.896] [DEBUG] debug-file - Resolve native package @nimsdk/friend. +[2025-07-09T18:57:10.896] [DEBUG] debug-file - Resolve native package @nimsdk/nim. +[2025-07-09T18:57:10.896] [DEBUG] debug-file - Executing task :chatkit_ui:default@ConfigureCmake +[2025-07-09T18:57:10.896] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:57:10.896] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:57:10.897] [DEBUG] debug-file - chatkit_ui : default@ConfigureCmake cost memory 0.04758453369140625 +[2025-07-09T18:57:10.897] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 154 ms +[2025-07-09T18:57:10.897] [INFO] debug-file - Finished :chatkit_ui:default@ConfigureCmake... after 1 ms +[2025-07-09T18:57:10.898] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:57:10.898] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:57:10.899] [DEBUG] debug-file - Resolve native package @nimsdk/conversation. +[2025-07-09T18:57:10.899] [DEBUG] debug-file - Resolve native package @nimsdk/message. +[2025-07-09T18:57:10.899] [DEBUG] debug-file - Resolve native package @nimsdk/team. +[2025-07-09T18:57:10.900] [DEBUG] debug-file - Resolve native package @nimsdk/user. +[2025-07-09T18:57:10.900] [DEBUG] debug-file - Resolve native package @nimsdk/friend. +[2025-07-09T18:57:10.900] [DEBUG] debug-file - Resolve native package @nimsdk/nim. +[2025-07-09T18:57:10.901] [DEBUG] debug-file - Executing task :conversationkit_ui:default@ConfigureCmake +[2025-07-09T18:57:10.901] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:57:10.901] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:57:10.901] [DEBUG] debug-file - conversationkit_ui : default@ConfigureCmake cost memory 0.04036712646484375 +[2025-07-09T18:57:10.901] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 158 ms +[2025-07-09T18:57:10.901] [INFO] debug-file - Finished :conversationkit_ui:default@ConfigureCmake... after 1 ms +[2025-07-09T18:57:10.902] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:57:10.902] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:57:10.902] [DEBUG] debug-file - Resolve native package @nimsdk/conversation. +[2025-07-09T18:57:10.903] [DEBUG] debug-file - Resolve native package @nimsdk/message. +[2025-07-09T18:57:10.903] [DEBUG] debug-file - Resolve native package @nimsdk/team. +[2025-07-09T18:57:10.903] [DEBUG] debug-file - Resolve native package @nimsdk/user. +[2025-07-09T18:57:10.904] [DEBUG] debug-file - Resolve native package @nimsdk/friend. +[2025-07-09T18:57:10.904] [DEBUG] debug-file - Resolve native package @nimsdk/nim. +[2025-07-09T18:57:10.904] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@ConfigureCmake +[2025-07-09T18:57:10.904] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:57:10.904] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:57:10.904] [DEBUG] debug-file - localconversationkit_ui : default@ConfigureCmake cost memory 0.04042816162109375 +[2025-07-09T18:57:10.904] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 162 ms +[2025-07-09T18:57:10.904] [INFO] debug-file - Finished :localconversationkit_ui:default@ConfigureCmake... after 1 ms +[2025-07-09T18:57:10.906] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:10.906] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:10.906] [DEBUG] debug-file - Executing task :default:default@MergeProfile +[2025-07-09T18:57:10.920] [DEBUG] debug-file - Incremental task default:default@MergeProfile pre-execution cost: 5 ms . +[2025-07-09T18:57:10.920] [DEBUG] debug-file - default : default@MergeProfile cost memory 1.2991714477539062 +[2025-07-09T18:57:10.921] [INFO] debug-file - UP-TO-DATE :default:default@MergeProfile... +[2025-07-09T18:57:10.921] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:57:10.922] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:57:10.923] [DEBUG] debug-file - Executing task :common:default@DoNativeStrip +[2025-07-09T18:57:10.923] [DEBUG] debug-file - Task 'common:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:10.923] [DEBUG] debug-file - Incremental task common:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:57:10.923] [DEBUG] debug-file - common : default@DoNativeStrip cost memory 0.070953369140625 +[2025-07-09T18:57:10.923] [INFO] debug-file - UP-TO-DATE :common:default@DoNativeStrip... +[2025-07-09T18:57:10.924] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:57:10.924] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:57:10.925] [DEBUG] debug-file - Executing task :mypage:default@BuildNativeWithNinja +[2025-07-09T18:57:10.925] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:57:10.925] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:57:10.925] [DEBUG] debug-file - mypage : default@BuildNativeWithNinja cost memory 0.0593719482421875 +[2025-07-09T18:57:10.925] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 183 ms +[2025-07-09T18:57:10.926] [INFO] debug-file - Finished :mypage:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:57:10.926] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:57:10.927] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:57:10.927] [DEBUG] debug-file - Executing task :register:default@BuildNativeWithNinja +[2025-07-09T18:57:10.927] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:57:10.927] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:57:10.927] [DEBUG] debug-file - register : default@BuildNativeWithNinja cost memory 0.059417724609375 +[2025-07-09T18:57:10.928] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 185 ms +[2025-07-09T18:57:10.928] [INFO] debug-file - Finished :register:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:57:10.929] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:57:10.929] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:57:10.930] [DEBUG] debug-file - Executing task :scene_single_video:default@BuildNativeWithNinja +[2025-07-09T18:57:10.930] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:57:10.930] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:57:10.930] [DEBUG] debug-file - scene_single_video : default@BuildNativeWithNinja cost memory 0.05970001220703125 +[2025-07-09T18:57:10.930] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 188 ms +[2025-07-09T18:57:10.930] [INFO] debug-file - Finished :scene_single_video:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:57:10.931] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:57:10.932] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:57:10.932] [DEBUG] debug-file - Executing task :Home:default@BuildNativeWithCmake +[2025-07-09T18:57:10.932] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:57:10.932] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:57:10.932] [DEBUG] debug-file - Home : default@BuildNativeWithCmake cost memory 0.04700469970703125 +[2025-07-09T18:57:10.932] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 190 ms +[2025-07-09T18:57:10.932] [INFO] debug-file - Finished :Home:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:57:10.933] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:57:10.933] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:57:10.934] [DEBUG] debug-file - Executing task :chatkit:default@BuildNativeWithNinja +[2025-07-09T18:57:10.934] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:57:10.934] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:57:10.934] [DEBUG] debug-file - chatkit : default@BuildNativeWithNinja cost memory 0.06766510009765625 +[2025-07-09T18:57:10.934] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 192 ms +[2025-07-09T18:57:10.935] [INFO] debug-file - Finished :chatkit:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:57:10.936] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:57:10.936] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:57:10.936] [DEBUG] debug-file - Executing task :chatkit_ui:default@BuildNativeWithCmake +[2025-07-09T18:57:10.936] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:57:10.936] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:57:10.936] [DEBUG] debug-file - chatkit_ui : default@BuildNativeWithCmake cost memory 0.04759979248046875 +[2025-07-09T18:57:10.936] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 194 ms +[2025-07-09T18:57:10.936] [INFO] debug-file - Finished :chatkit_ui:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:57:10.937] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:57:10.937] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:57:10.938] [DEBUG] debug-file - Executing task :conversationkit_ui:default@BuildNativeWithCmake +[2025-07-09T18:57:10.938] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:57:10.938] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:57:10.938] [DEBUG] debug-file - conversationkit_ui : default@BuildNativeWithCmake cost memory 0.04038238525390625 +[2025-07-09T18:57:10.938] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 196 ms +[2025-07-09T18:57:10.938] [INFO] debug-file - Finished :conversationkit_ui:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:57:10.939] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:57:10.939] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:57:10.939] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@BuildNativeWithCmake +[2025-07-09T18:57:10.939] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:57:10.940] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:57:10.940] [DEBUG] debug-file - localconversationkit_ui : default@BuildNativeWithCmake cost memory 0.04045867919921875 +[2025-07-09T18:57:10.940] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 197 ms +[2025-07-09T18:57:10.940] [INFO] debug-file - Finished :localconversationkit_ui:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:57:10.941] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:10.941] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:10.941] [DEBUG] debug-file - Executing task :default:default@MakePackInfo +[2025-07-09T18:57:10.943] [DEBUG] debug-file - Incremental task default:default@MakePackInfo pre-execution cost: 2 ms . +[2025-07-09T18:57:10.943] [DEBUG] debug-file - default : default@MakePackInfo cost memory 0.1584014892578125 +[2025-07-09T18:57:10.944] [INFO] debug-file - UP-TO-DATE :default:default@MakePackInfo... +[2025-07-09T18:57:10.945] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:10.945] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:10.946] [DEBUG] debug-file - Executing task :default:default@ProcessProfile +[2025-07-09T18:57:10.947] [DEBUG] debug-file - Incremental task default:default@ProcessProfile pre-execution cost: 1 ms . +[2025-07-09T18:57:10.947] [DEBUG] debug-file - default : default@ProcessProfile cost memory 0.139068603515625 +[2025-07-09T18:57:10.947] [INFO] debug-file - UP-TO-DATE :default:default@ProcessProfile... +[2025-07-09T18:57:10.948] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:57:10.948] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:57:10.949] [DEBUG] debug-file - Executing task :mypage:default@ProcessLibs +[2025-07-09T18:57:10.950] [DEBUG] debug-file - Incremental task mypage:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:57:10.950] [DEBUG] debug-file - mypage : default@ProcessLibs cost memory 0.133575439453125 +[2025-07-09T18:57:10.951] [INFO] debug-file - UP-TO-DATE :mypage:default@ProcessLibs... +[2025-07-09T18:57:10.952] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:57:10.952] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:57:10.952] [DEBUG] debug-file - Executing task :register:default@ProcessLibs +[2025-07-09T18:57:10.953] [DEBUG] debug-file - Incremental task register:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:57:10.953] [DEBUG] debug-file - register : default@ProcessLibs cost memory 0.13338470458984375 +[2025-07-09T18:57:10.954] [INFO] debug-file - UP-TO-DATE :register:default@ProcessLibs... +[2025-07-09T18:57:10.954] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:57:10.954] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:57:10.955] [DEBUG] debug-file - Executing task :scene_single_video:default@ProcessLibs +[2025-07-09T18:57:10.956] [DEBUG] debug-file - Incremental task scene_single_video:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:57:10.956] [DEBUG] debug-file - scene_single_video : default@ProcessLibs cost memory 0.1314544677734375 +[2025-07-09T18:57:10.956] [INFO] debug-file - UP-TO-DATE :scene_single_video:default@ProcessLibs... +[2025-07-09T18:57:10.957] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:57:10.957] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:57:10.958] [DEBUG] debug-file - Executing task :chatkit:default@ProcessLibs +[2025-07-09T18:57:10.959] [DEBUG] debug-file - Incremental task chatkit:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:57:10.959] [DEBUG] debug-file - chatkit : default@ProcessLibs cost memory 0.12899017333984375 +[2025-07-09T18:57:10.959] [INFO] debug-file - UP-TO-DATE :chatkit:default@ProcessLibs... +[2025-07-09T18:57:10.961] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:57:10.961] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:57:10.961] [DEBUG] debug-file - Resolve native package @nimsdk/conversation. +[2025-07-09T18:57:10.961] [DEBUG] debug-file - Resolve native package @nimsdk/message. +[2025-07-09T18:57:10.962] [DEBUG] debug-file - Resolve native package @nimsdk/team. +[2025-07-09T18:57:10.962] [DEBUG] debug-file - Resolve native package @nimsdk/user. +[2025-07-09T18:57:10.962] [DEBUG] debug-file - Resolve native package @nimsdk/friend. +[2025-07-09T18:57:10.963] [DEBUG] debug-file - Resolve native package @nimsdk/nim. +[2025-07-09T18:57:10.963] [DEBUG] debug-file - Executing task :netease:default@ConfigureCmake +[2025-07-09T18:57:10.963] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:57:10.963] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:57:10.963] [DEBUG] debug-file - netease : default@ConfigureCmake cost memory 0.048309326171875 +[2025-07-09T18:57:10.964] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 221 ms +[2025-07-09T18:57:10.964] [INFO] debug-file - Finished :netease:default@ConfigureCmake... after 1 ms +[2025-07-09T18:57:10.965] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:10.965] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:10.966] [DEBUG] debug-file - restool module names: default,mypage,basic,Home,register,polyv,scene_single_video,corekit,chatkit,chatkit_ui,netease,conversationkit_ui,common,localconversationkit_ui; moduleName=default, taskName=default@ProcessResource +[2025-07-09T18:57:10.974] [DEBUG] debug-file - Executing task :default:default@ProcessResource +[2025-07-09T18:57:10.976] [DEBUG] debug-file - Incremental task default:default@ProcessResource pre-execution cost: 1 ms . +[2025-07-09T18:57:10.976] [DEBUG] debug-file - default : default@ProcessResource cost memory 0.20490264892578125 +[2025-07-09T18:57:10.979] [INFO] debug-file - UP-TO-DATE :default:default@ProcessResource... +[2025-07-09T18:57:10.980] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:57:10.980] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:57:10.981] [DEBUG] debug-file - Executing task :mypage:default@DoNativeStrip +[2025-07-09T18:57:10.981] [DEBUG] debug-file - Task 'mypage:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:10.982] [DEBUG] debug-file - Incremental task mypage:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:57:10.982] [DEBUG] debug-file - mypage : default@DoNativeStrip cost memory 0.07363128662109375 +[2025-07-09T18:57:10.982] [INFO] debug-file - UP-TO-DATE :mypage:default@DoNativeStrip... +[2025-07-09T18:57:10.983] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:57:10.983] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:57:10.984] [DEBUG] debug-file - Executing task :register:default@DoNativeStrip +[2025-07-09T18:57:10.984] [DEBUG] debug-file - Task 'register:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:10.985] [DEBUG] debug-file - Incremental task register:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:57:10.985] [DEBUG] debug-file - register : default@DoNativeStrip cost memory 0.07390594482421875 +[2025-07-09T18:57:10.985] [INFO] debug-file - UP-TO-DATE :register:default@DoNativeStrip... +[2025-07-09T18:57:10.986] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:57:10.986] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:57:10.988] [DEBUG] debug-file - Executing task :scene_single_video:default@DoNativeStrip +[2025-07-09T18:57:10.988] [DEBUG] debug-file - Task 'scene_single_video:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:10.988] [DEBUG] debug-file - Incremental task scene_single_video:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:57:10.988] [DEBUG] debug-file - scene_single_video : default@DoNativeStrip cost memory 0.07332611083984375 +[2025-07-09T18:57:10.988] [INFO] debug-file - UP-TO-DATE :scene_single_video:default@DoNativeStrip... +[2025-07-09T18:57:10.989] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:57:10.989] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:57:10.991] [DEBUG] debug-file - Executing task :chatkit:default@DoNativeStrip +[2025-07-09T18:57:10.991] [DEBUG] debug-file - Task 'chatkit:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:10.991] [DEBUG] debug-file - Incremental task chatkit:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:57:10.991] [DEBUG] debug-file - chatkit : default@DoNativeStrip cost memory 0.0723876953125 +[2025-07-09T18:57:10.992] [INFO] debug-file - UP-TO-DATE :chatkit:default@DoNativeStrip... +[2025-07-09T18:57:10.993] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:57:10.993] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:57:10.994] [DEBUG] debug-file - Executing task :netease:default@BuildNativeWithCmake +[2025-07-09T18:57:10.994] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:57:10.994] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:57:10.994] [DEBUG] debug-file - netease : default@BuildNativeWithCmake cost memory 0.04833984375 +[2025-07-09T18:57:10.995] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 252 ms +[2025-07-09T18:57:10.995] [INFO] debug-file - Finished :netease:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:57:10.997] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:10.997] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:10.998] [DEBUG] debug-file - restool module names: default,mypage,basic,Home,register,polyv,scene_single_video,corekit,chatkit,chatkit_ui,netease,conversationkit_ui,common,localconversationkit_ui; moduleName=default, taskName=default@CompileResource +[2025-07-09T18:57:11.011] [DEBUG] debug-file - Executing task :default:default@CompileResource +[2025-07-09T18:57:11.079] [DEBUG] debug-file - Incremental task default:default@CompileResource pre-execution cost: 67 ms . +[2025-07-09T18:57:11.079] [DEBUG] debug-file - default : default@CompileResource cost memory 10.850746154785156 +[2025-07-09T18:57:11.081] [INFO] debug-file - UP-TO-DATE :default:default@CompileResource... +[2025-07-09T18:57:11.082] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:57:11.082] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:57:11.082] [DEBUG] debug-file - Executing task :Home:default@BuildNativeWithNinja +[2025-07-09T18:57:11.082] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:57:11.082] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:57:11.083] [DEBUG] debug-file - Home : default@BuildNativeWithNinja cost memory 0.0672760009765625 +[2025-07-09T18:57:11.083] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 340 ms +[2025-07-09T18:57:11.083] [INFO] debug-file - Finished :Home:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:57:11.085] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:57:11.085] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:57:11.085] [DEBUG] debug-file - Executing task :chatkit_ui:default@BuildNativeWithNinja +[2025-07-09T18:57:11.085] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:57:11.086] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:57:11.086] [DEBUG] debug-file - chatkit_ui : default@BuildNativeWithNinja cost memory 0.0673828125 +[2025-07-09T18:57:11.086] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 344 ms +[2025-07-09T18:57:11.087] [INFO] debug-file - Finished :chatkit_ui:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:57:11.089] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:57:11.089] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:57:11.089] [DEBUG] debug-file - Executing task :conversationkit_ui:default@BuildNativeWithNinja +[2025-07-09T18:57:11.090] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:57:11.090] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:57:11.090] [DEBUG] debug-file - conversationkit_ui : default@BuildNativeWithNinja cost memory 0.06026458740234375 +[2025-07-09T18:57:11.090] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 348 ms +[2025-07-09T18:57:11.091] [INFO] debug-file - Finished :conversationkit_ui:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:57:11.092] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:57:11.093] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:57:11.093] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@BuildNativeWithNinja +[2025-07-09T18:57:11.093] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:57:11.093] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:57:11.094] [DEBUG] debug-file - localconversationkit_ui : default@BuildNativeWithNinja cost memory 0.0604248046875 +[2025-07-09T18:57:11.094] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 351 ms +[2025-07-09T18:57:11.094] [INFO] debug-file - Finished :localconversationkit_ui:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:57:11.096] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:11.096] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:11.097] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-core-ijk. +[2025-07-09T18:57:11.097] [DEBUG] debug-file - Resolve native package @nimsdk/conversation. +[2025-07-09T18:57:11.098] [DEBUG] debug-file - Resolve native package @nimsdk/localconversation. +[2025-07-09T18:57:11.098] [DEBUG] debug-file - Resolve native package @nimsdk/message. +[2025-07-09T18:57:11.099] [DEBUG] debug-file - Resolve native package @nimsdk/team. +[2025-07-09T18:57:11.099] [DEBUG] debug-file - Resolve native package @nimsdk/user. +[2025-07-09T18:57:11.100] [DEBUG] debug-file - Resolve native package @nimsdk/friend. +[2025-07-09T18:57:11.100] [DEBUG] debug-file - Resolve native package @nimsdk/nim. +[2025-07-09T18:57:11.101] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-business. +[2025-07-09T18:57:11.103] [DEBUG] debug-file - Executing task :default:default@ConfigureCmake +[2025-07-09T18:57:11.103] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:11.103] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:11.103] [DEBUG] debug-file - default : default@ConfigureCmake cost memory 0.0688323974609375 +[2025-07-09T18:57:11.103] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 361 ms +[2025-07-09T18:57:11.103] [INFO] debug-file - Finished :default:default@ConfigureCmake... after 1 ms +[2025-07-09T18:57:11.105] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:11.105] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:11.108] [DEBUG] debug-file - Executing task :default:default@CompileArkTS +[2025-07-09T18:57:11.117] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:11.117] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:11.118] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.118] [DEBUG] debug-file - Collect obfuscation config from library basic. +[2025-07-09T18:57:11.118] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:57:11.118] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:57:11.119] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.119] [DEBUG] debug-file - Collect obfuscation config from library mypage. +[2025-07-09T18:57:11.119] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:57:11.119] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:57:11.119] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.120] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.120] [DEBUG] debug-file - Collect obfuscation config from library Home. +[2025-07-09T18:57:11.120] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:57:11.120] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:57:11.120] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.121] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.121] [DEBUG] debug-file - Collect obfuscation config from library scene_single_video. +[2025-07-09T18:57:11.122] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:57:11.122] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:57:11.122] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.122] [DEBUG] debug-file - Collect obfuscation config from library polyv. +[2025-07-09T18:57:11.122] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:57:11.123] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:57:11.124] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.124] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.124] [DEBUG] debug-file - Collect obfuscation config from library register. +[2025-07-09T18:57:11.124] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:57:11.124] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:57:11.125] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.125] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.125] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.126] [DEBUG] debug-file - Collect obfuscation config from dependency @polyvharmony/httpdns-api. +[2025-07-09T18:57:11.127] [DEBUG] debug-file - Collect obfuscation config from dependency @polyvharmony/httpdns-impl-local. +[2025-07-09T18:57:11.127] [DEBUG] debug-file - Collect obfuscation config from dependency @polyvharmony/httpdns-impl-ali. +[2025-07-09T18:57:11.128] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/conversation. +[2025-07-09T18:57:11.128] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/localconversation. +[2025-07-09T18:57:11.128] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/message. +[2025-07-09T18:57:11.129] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/team. +[2025-07-09T18:57:11.129] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/user. +[2025-07-09T18:57:11.129] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/friend. +[2025-07-09T18:57:11.129] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/nim. +[2025-07-09T18:57:11.130] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/base. +[2025-07-09T18:57:11.130] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.130] [DEBUG] debug-file - Collect obfuscation config from library corekit. +[2025-07-09T18:57:11.130] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:57:11.130] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:57:11.131] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.131] [DEBUG] debug-file - Collect obfuscation config from library chatkit. +[2025-07-09T18:57:11.132] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:57:11.132] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:57:11.134] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.135] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.135] [DEBUG] debug-file - Collect obfuscation config from library netease. +[2025-07-09T18:57:11.136] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:57:11.136] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:57:11.136] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.137] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.137] [DEBUG] debug-file - Collect obfuscation config from library conversationkit_ui. +[2025-07-09T18:57:11.137] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:57:11.137] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:57:11.138] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.138] [DEBUG] debug-file - Collect obfuscation config from library common. +[2025-07-09T18:57:11.138] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:57:11.138] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:57:11.139] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.139] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.140] [DEBUG] debug-file - Collect obfuscation config from library chatkit_ui. +[2025-07-09T18:57:11.140] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:57:11.140] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:57:11.141] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.141] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.141] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.142] [DEBUG] debug-file - Collect obfuscation config from dependency @nimkit/markdown. +[2025-07-09T18:57:11.143] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.143] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.144] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.144] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.144] [DEBUG] debug-file - Collect obfuscation config from library localconversationkit_ui. +[2025-07-09T18:57:11.145] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:57:11.145] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:57:11.145] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.145] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:57:11.167] [DEBUG] debug-file - default:default@CompileArkTS is not up-to-date, since the input file 'D:\202076work\hongmeng\newExpert\harmony\commons\basic\src\main\ets' has been changed. +[2025-07-09T18:57:11.167] [DEBUG] debug-file - Incremental task default:default@CompileArkTS pre-execution cost: 13 ms . +[2025-07-09T18:57:11.182] [DEBUG] debug-file - build config: +[2025-07-09T18:57:11.182] [DEBUG] debug-file - { + moduleType: 'entry', + perf: 0, + targetName: '.default', + packageManagerType: 'ohpm', + localPropertiesPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\local.properties', + isPreview: false, + isOhosTest: false, + isLocalTest: false, + buildMode: 'Release', + watchMode: 'false', + aceProfilePath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\res\\default\\resources\\base\\profile', + etsLoaderPath: 'D:\\Program Files\\Huawei\\DevEco Studioss\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader', + modulePath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', + testFrameworkPar: { + testMode: undefined, + coveragePathFilter: undefined, + coverageMode: undefined + }, + needCoverageInsert: false, + debugLine: false, + projectTopDir: 'D:\\202076work\\hongmeng\\newExpert\\harmony', + compileSdkVersion: 17, + compatibleSdkVersion: 14, + compatibleSdkVersionStage: undefined, + bundleName: 'c***s', + etsLoaderVersion: '5.0.5.165', + etsLoaderReleaseType: 'Release', + aotCompileMode: 'type', + apPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\modules.ap', + entryModuleName: 'default', + entryModuleVersion: '1.0.0', + entryPackageName: 'expert', + allModuleNameHash: '45f520d1ffaad6d8698c233baf217609', + externalApiPaths: [ + 'D:\\Program Files\\Huawei\\DevEco Studioss\\sdk\\default\\hms\\ets' + ], + compilerTypes: undefined, + isCrossplatform: false, + hvigorPluginFile: undefined, + compilePluginPath: undefined, + buildGeneratedProfilePath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\generated\\profile\\default', + bundleType: 'app', + arkTSVersion: undefined, + apiVersion: 17, + needCompleteSourcesMap: false, + isFaMode: false, + strictMode: { + caseSensitiveCheck: true, + useNormalizedOHMUrl: true, + noExternalImportByPath: true + }, + buildDir: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build', + deviceTypes: [ 'phone', 'tablet', '2in1' ], + useNormalizedOHMUrl: true, + pkgContextInfo: { + '@itcast/basic': { + packageName: '@itcast/basic', + bundleName: '*****', + moduleName: '', + version: '1.0.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + mypage: { + packageName: 'mypage', + bundleName: '*****', + moduleName: '', + version: '1.0.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + home: { + packageName: 'home', + bundleName: '*****', + moduleName: '', + version: '1.0.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + register: { + packageName: 'register', + bundleName: '*****', + moduleName: '', + version: '1.0.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + scene_single_video: { + packageName: 'scene_single_video', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + 'media-player-common': { + packageName: 'media-player-common', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/media-player-sdk': { + packageName: '@polyvharmony/media-player-sdk', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/media-player-core-ijk': { + packageName: '@polyvharmony/media-player-core-ijk', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/media-player-sdk-addon-cache-down': { + packageName: '@polyvharmony/media-player-sdk-addon-cache-down', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/httpdns-api': { + packageName: '@polyvharmony/httpdns-api', + bundleName: '*****', + moduleName: '', + version: '1.0.2', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/httpdns-impl-local': { + packageName: '@polyvharmony/httpdns-impl-local', + bundleName: '*****', + moduleName: '', + version: '1.0.2', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/httpdns-impl-ali': { + packageName: '@polyvharmony/httpdns-impl-ali', + bundleName: '*****', + moduleName: '', + version: '1.0.2', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/conversation': { + packageName: '@nimsdk/conversation', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/localconversation': { + packageName: '@nimsdk/localconversation', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/message': { + packageName: '@nimsdk/message', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/team': { + packageName: '@nimsdk/team', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/user': { + packageName: '@nimsdk/user', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/friend': { + packageName: '@nimsdk/friend', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/nim': { + packageName: '@nimsdk/nim', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/base': { + packageName: '@nimsdk/base', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/corekit': { + packageName: '@nimkit/corekit', + bundleName: '*****', + moduleName: '', + version: '1.1.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/chatkit': { + packageName: '@nimkit/chatkit', + bundleName: '*****', + moduleName: '', + version: '10.1.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + netease: { + packageName: 'netease', + bundleName: '*****', + moduleName: '', + version: '1.0.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/media-player-business': { + packageName: '@polyvharmony/media-player-business', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/media-player-core-api': { + packageName: '@polyvharmony/media-player-core-api', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/media-player-foundation': { + packageName: '@polyvharmony/media-player-foundation', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@aliyun/httpdns': { + packageName: '@aliyun/httpdns', + bundleName: '*****', + moduleName: '', + version: '1.1.1', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/vendor': { + packageName: '@nimsdk/vendor', + bundleName: '*****', + moduleName: '', + version: '1.0.0', + entryPath: 'Index.js', + isSO: false, + dependencyAlias: '' + }, + 'class-transformer': { + packageName: 'class-transformer', + bundleName: '*****', + moduleName: '', + version: '0.5.1', + entryPath: 'esm5/index.js', + isSO: false, + dependencyAlias: '' + }, + 'reflect-metadata': { + packageName: 'reflect-metadata', + bundleName: '*****', + moduleName: '', + version: '0.2.1', + entryPath: 'Reflect.js', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/conversationkit_ui': { + packageName: '@nimkit/conversationkit_ui', + bundleName: '*****', + moduleName: '', + version: '10.1.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/chatkit_ui': { + packageName: '@nimkit/chatkit_ui', + bundleName: '*****', + moduleName: '', + version: '10.1.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/common': { + packageName: '@nimkit/common', + bundleName: '*****', + moduleName: '', + version: '1.1.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/localconversationkit_ui': { + packageName: '@nimkit/localconversationkit_ui', + bundleName: '*****', + moduleName: '', + version: '10.1.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@ohos/httpclient': { + packageName: '@ohos/httpclient', + bundleName: '*****', + moduleName: '', + version: '2.0.2', + entryPath: 'index.ts', + isSO: false, + dependencyAlias: '' + }, + '@ohos/crypto-js': { + packageName: '@ohos/crypto-js', + bundleName: '*****', + moduleName: '', + version: '2.0.4', + entryPath: 'index.ts', + isSO: false, + dependencyAlias: '' + }, + '@aliyun/logger': { + packageName: '@aliyun/logger', + bundleName: '*****', + moduleName: '', + version: '1.0.2', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@aliyun/error': { + packageName: '@aliyun/error', + bundleName: '*****', + moduleName: '', + version: '1.0.2', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/markdown': { + packageName: '@nimkit/markdown', + bundleName: '*****', + moduleName: '', + version: '1.1.0', + entryPath: 'Index.js', + isSO: false, + dependencyAlias: '' + }, + '@ohos/pinyin4js': { + packageName: '@ohos/pinyin4js', + bundleName: '*****', + moduleName: '', + version: '2.0.1', + entryPath: 'index.ets', + isSO: false, + dependencyAlias: '' + }, + pako: { + packageName: 'pako', + bundleName: '*****', + moduleName: '', + version: '2.1.0', + entryPath: 'dist/pako.esm.mjs', + isSO: false, + dependencyAlias: '' + }, + 'base64-js': { + packageName: 'base64-js', + bundleName: '*****', + moduleName: '', + version: '1.5.1', + entryPath: 'index.js', + isSO: false, + dependencyAlias: '' + }, + '@ohos/dataorm': { + packageName: '@ohos/dataorm', + bundleName: '*****', + moduleName: '', + version: '2.2.6', + entryPath: 'index.ts', + isSO: false, + dependencyAlias: '' + }, + '@ohos/hypium': { + packageName: '@ohos/hypium', + bundleName: '*****', + moduleName: '', + version: '1.0.21', + entryPath: 'index.js', + isSO: false, + dependencyAlias: '' + }, + '@ohos/hamock': { + packageName: '@ohos/hamock', + bundleName: '*****', + moduleName: '', + version: '1.0.0', + entryPath: 'index.ets', + isSO: false, + dependencyAlias: '' + }, + expert: { + packageName: 'expert', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: 'src/main/', + isSO: false, + dependencyAlias: '' + }, + 'libplvsdl.so': { + packageName: 'libplvsdl.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libplvplayer_xcomponent.so': { + packageName: 'libplvplayer_xcomponent.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libplvplayer_napi.so': { + packageName: 'libplvplayer_napi.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libplvplayer.so': { + packageName: 'libplvplayer.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libplvffmpeg.so': { + packageName: 'libplvffmpeg.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libLebConnection.so': { + packageName: 'libLebConnection.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libc++_shared.so': { + packageName: 'libc++_shared.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libplvnative.so': { + packageName: 'libplvnative.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + } + }, + ohPackagePathMap: {}, + dependencyAliasMap: {}, + permission: { + requestPermissions: [ [Object], [Object], [Object] ], + definePermissions: undefined + }, + integratedHsp: false, + projectArkOption: { obfuscation: { ruleOptions: [Object], consumerRules: [] } }, + sourceMapDir: undefined, + branchElimination: false, + transformLib: undefined, + caseSensitiveCheck: true, + tsImportSendable: false, + resolveConflictMode: true, + depName2RootPath: {}, + depName2DepInfo: {}, + rootPathSet: [ 'D:\\202076work\\hongmeng\\newExpert\\harmony' ], + useNativeResolver: true, + shouldEmitJs: true, + autoLazyImport: undefined, + allowEmptyBundleName: false, + singleFileEmit: false, + arkCompileCachePath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\cache\\default\\default@CompileArkTS\\esmodule', + reExportCheckMode: 'noCheck', + aceModuleJsonPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\res\\default\\ark_module.json', + appResource: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\res\\default\\ResourceTable.txt', + rawFileResource: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\res\\default\\resources\\rawfile', + resourceTableHash: 'fa307d675b5bf0bf887914133e63ea09', + runtimeOS: 'HarmonyOS', + sdkInfo: 'false:17:5.0.5.165:Release', + aceModuleRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\src\\main\\ets', + compileMode: 'esmodule', + aceSuperVisualPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\src\\main\\supervisual', + aceBuildJson: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\loader\\default\\loader.json', + cachePath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\cache\\default\\default@CompileArkTS\\esmodule\\release', + aceModuleBuild: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\loader_out\\default\\ets', + supportChunks: true, + declaredFilesPath: undefined, + pkgNameToPkgBriefInfo: { + '@ohos/crypto-js': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@ohos+crypto-js@2.0.4\\oh_modules\\@ohos\\crypto-js', + pkgName: '@ohos/crypto-js', + sourceRoots: [Array] + }, + '@ohos/dataorm': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@ohos+dataorm@2.2.6\\oh_modules\\@ohos\\dataorm', + pkgName: '@ohos/dataorm', + sourceRoots: [Array] + }, + '@itcast/basic': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic', + pkgName: '@itcast/basic', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + mypage: { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage', + pkgName: 'mypage', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + home: { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home', + pkgName: 'home', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + register: { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register', + pkgName: 'register', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + scene_single_video: { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\scene_single_video', + pkgName: 'scene_single_video', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + 'media-player-common': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\polyv', + pkgName: 'media-player-common', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@polyvharmony/media-player-sdk': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+media-player-sdk@2.5.0\\oh_modules\\@polyvharmony\\media-player-sdk', + pkgName: '@polyvharmony/media-player-sdk', + sourceRoots: [Array] + }, + '@polyvharmony/media-player-core-ijk': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+media-player-core-ijk@2.5.0\\oh_modules\\@polyvharmony\\media-player-core-ijk', + pkgName: '@polyvharmony/media-player-core-ijk', + sourceRoots: [Array] + }, + '@polyvharmony/media-player-sdk-addon-cache-down': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\\oh_modules\\@polyvharmony\\media-player-sdk-addon-cache-down', + pkgName: '@polyvharmony/media-player-sdk-addon-cache-down', + sourceRoots: [Array] + }, + '@polyvharmony/httpdns-api': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+httpdns-api@1.0.2\\oh_modules\\@polyvharmony\\httpdns-api', + pkgName: '@polyvharmony/httpdns-api', + sourceRoots: [Array] + }, + '@polyvharmony/httpdns-impl-local': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+httpdns-impl-local@1.0.2\\oh_modules\\@polyvharmony\\httpdns-impl-local', + pkgName: '@polyvharmony/httpdns-impl-local', + sourceRoots: [Array] + }, + '@polyvharmony/httpdns-impl-ali': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+httpdns-impl-ali@1.0.2\\oh_modules\\@polyvharmony\\httpdns-impl-ali', + pkgName: '@polyvharmony/httpdns-impl-ali', + sourceRoots: [Array] + }, + '@nimsdk/conversation': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+conversation@10.9.10\\oh_modules\\@nimsdk\\conversation', + pkgName: '@nimsdk/conversation', + sourceRoots: [Array] + }, + '@nimsdk/localconversation': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+localconversation@10.9.10\\oh_modules\\@nimsdk\\localconversation', + pkgName: '@nimsdk/localconversation', + sourceRoots: [Array] + }, + '@nimsdk/message': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+message@10.9.10\\oh_modules\\@nimsdk\\message', + pkgName: '@nimsdk/message', + sourceRoots: [Array] + }, + '@nimsdk/team': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+team@10.9.10\\oh_modules\\@nimsdk\\team', + pkgName: '@nimsdk/team', + sourceRoots: [Array] + }, + '@nimsdk/user': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+user@10.9.10\\oh_modules\\@nimsdk\\user', + pkgName: '@nimsdk/user', + sourceRoots: [Array] + }, + '@nimsdk/friend': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+friend@10.9.10\\oh_modules\\@nimsdk\\friend', + pkgName: '@nimsdk/friend', + sourceRoots: [Array] + }, + '@nimsdk/nim': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+nim@10.9.10\\oh_modules\\@nimsdk\\nim', + pkgName: '@nimsdk/nim', + sourceRoots: [Array] + }, + '@nimsdk/base': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\\oh_modules\\@nimsdk\\base', + pkgName: '@nimsdk/base', + sourceRoots: [Array] + }, + '@nimkit/corekit': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit', + pkgName: '@nimkit/corekit', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@nimkit/chatkit': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit', + pkgName: '@nimkit/chatkit', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + netease: { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease', + pkgName: 'netease', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@polyvharmony/media-player-business': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+media-player-business@2.5.0\\oh_modules\\@polyvharmony\\media-player-business', + pkgName: '@polyvharmony/media-player-business', + sourceRoots: [Array] + }, + '@polyvharmony/media-player-core-api': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+media-player-core-api@2.5.0\\oh_modules\\@polyvharmony\\media-player-core-api', + pkgName: '@polyvharmony/media-player-core-api', + sourceRoots: [Array] + }, + '@polyvharmony/media-player-foundation': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+media-player-foundation@2.5.0\\oh_modules\\@polyvharmony\\media-player-foundation', + pkgName: '@polyvharmony/media-player-foundation', + sourceRoots: [Array] + }, + '@aliyun/httpdns': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@aliyun+httpdns@1.1.1\\oh_modules\\@aliyun\\httpdns', + pkgName: '@aliyun/httpdns', + sourceRoots: [Array] + }, + '@nimsdk/vendor': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+vendor@1.0.0\\oh_modules\\@nimsdk\\vendor', + pkgName: '@nimsdk/vendor', + sourceRoots: [Array] + }, + '@nimkit/conversationkit_ui': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\conversationkit_ui', + pkgName: '@nimkit/conversationkit_ui', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@nimkit/chatkit_ui': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit_ui', + pkgName: '@nimkit/chatkit_ui', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@nimkit/common': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\common', + pkgName: '@nimkit/common', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@nimkit/localconversationkit_ui': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\localconversationkit_ui', + pkgName: '@nimkit/localconversationkit_ui', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@ohos/httpclient': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@ohos+httpclient@2.0.2\\oh_modules\\@ohos\\httpclient', + pkgName: '@ohos/httpclient', + sourceRoots: [Array] + }, + '@aliyun/logger': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@aliyun+logger@1.0.2\\oh_modules\\@aliyun\\logger', + pkgName: '@aliyun/logger', + sourceRoots: [Array] + }, + '@aliyun/error': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@aliyun+error@1.0.2\\oh_modules\\@aliyun\\error', + pkgName: '@aliyun/error', + sourceRoots: [Array] + }, + '@nimkit/markdown': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimkit+markdown@1.1.0\\oh_modules\\@nimkit\\markdown', + pkgName: '@nimkit/markdown', + sourceRoots: [Array] + }, + '@ohos/pinyin4js': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@ohos+pinyin4js@2.0.1\\oh_modules\\@ohos\\pinyin4js', + pkgName: '@ohos/pinyin4js', + sourceRoots: [Array] + }, + expert: { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', + originalSourceRoots: undefined, + sourceRoots: [Array], + pkgName: 'expert' + } + }, + projectModel: { + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\src\\main': { + moduleName: 'default', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'default_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\src\\ohosTest': { + moduleName: 'default_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert': { + moduleName: 'default', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage\\src\\main': { + moduleName: 'mypage', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'mypage_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage\\src\\ohosTest': { + moduleName: 'mypage_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage': { + moduleName: 'mypage', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic\\src\\main': { + moduleName: 'basic', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'basic_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic\\src\\ohosTest': { + moduleName: 'basic_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic': { + moduleName: 'basic', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home\\src\\main': { + moduleName: 'Home', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'Home_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home\\src\\ohosTest': { + moduleName: 'Home_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home': { + moduleName: 'Home', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register\\src\\main': { + moduleName: 'register', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'register_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register\\src\\ohosTest': { + moduleName: 'register_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register': { + moduleName: 'register', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\polyv\\src\\main': { + moduleName: 'polyv', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\polyv', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\polyv': { + moduleName: 'polyv', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\polyv', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\scene_single_video\\src\\main': { + moduleName: 'scene_single_video', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\scene_single_video', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\scene_single_video': { + moduleName: 'scene_single_video', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\scene_single_video', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit\\src\\main': { + moduleName: 'corekit', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'corekit_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit\\src\\ohosTest': { + moduleName: 'corekit_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit': { + moduleName: 'corekit', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit\\src\\main': { + moduleName: 'chatkit', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'chatkit_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit\\src\\ohosTest': { + moduleName: 'chatkit_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit': { + moduleName: 'chatkit', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit_ui\\src\\main': { + moduleName: 'chatkit_ui', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit_ui', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit_ui': { + moduleName: 'chatkit_ui', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit_ui', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease\\src\\main': { + moduleName: 'netease', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'netease_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease\\src\\ohosTest': { + moduleName: 'netease_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease': { + moduleName: 'netease', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\conversationkit_ui\\src\\main': { + moduleName: 'conversationkit_ui', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\conversationkit_ui', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\conversationkit_ui': { + moduleName: 'conversationkit_ui', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\conversationkit_ui', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\common\\src\\main': { + moduleName: 'common', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\common', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\common': { + moduleName: 'common', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\common', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\localconversationkit_ui\\src\\main': { + moduleName: 'localconversationkit_ui', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\localconversationkit_ui', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\localconversationkit_ui': { + moduleName: 'localconversationkit_ui', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\localconversationkit_ui', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony': { + moduleName: 'harmony', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + } + }, + pkgJsonFileHash: 'c5b4c4619e5c0b6eb2ff38daa97e9242', + allModulePaths: [ + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\polyv', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\scene_single_video', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit_ui', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\conversationkit_ui', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\common', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\localconversationkit_ui' + ], + routerMap: {}, + obfuscationOptions: { + selfConfig: { ruleOptions: [Object], consumerRules: [] }, + sdkApis: [], + obfuscationCacheDir: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\cache\\default\\default@CompileArkTS\\esmodule\\release\\obfuscation', + exportRulePath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\obfuscation\\default\\obfuscation.txt', + dependencies: { libraries: [Array], hars: [Array] } + }, + compileBlockPkg: [ + '@polyvharmony/media-player-sdk', + '@polyvharmony/media-player-core-ijk', + '@polyvharmony/media-player-sdk-addon-cache-down', + '@polyvharmony/httpdns-api', + '@polyvharmony/httpdns-impl-local', + '@polyvharmony/httpdns-impl-ali', + '@nimsdk/conversation', + '@nimsdk/localconversation', + '@nimsdk/message', + '@nimsdk/team', + '@nimsdk/user', + '@nimsdk/friend', + '@nimsdk/nim', + '@nimsdk/base', + '@polyvharmony/media-player-business', + '@polyvharmony/media-player-core-api', + '@polyvharmony/media-player-foundation', + '@aliyun/httpdns', + '@aliyun/logger', + '@aliyun/error' + ], + mockParams: { + decorator: '@MockSetup', + packageName: '@ohos/hamock', + etsSourceRootPath: 'src/main/ets', + mockConfigPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\src\\mock\\mock-config.json5', + mockConfigKey2ModuleInfo: {} + }, + copyCodeResourceEnable: true, + copyCodeResourceExcludes: [], + uiTransformOptimization: false, + otherPaths: { + '@ohos/crypto-js/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@ohos+crypto-js@2.0.4\\oh_modules\\@ohos\\crypto-js\\src\\main\\*' + ], + '@ohos/dataorm/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@ohos+dataorm@2.2.6\\oh_modules\\@ohos\\dataorm\\src\\main\\*' + ], + '@itcast/basic/*': [ + '..\\..\\..\\..\\..\\commons\\basic\\src\\main\\*', + '..\\..\\..\\..\\..\\commons\\basic\\build\\default\\generated\\profile\\default\\*' + ], + 'mypage/*': [ + '..\\..\\..\\..\\..\\features\\mypage\\src\\main\\*', + '..\\..\\..\\..\\..\\features\\mypage\\build\\default\\generated\\profile\\default\\*' + ], + 'home/*': [ + '..\\..\\..\\..\\..\\features\\Home\\src\\main\\*', + '..\\..\\..\\..\\..\\features\\Home\\build\\default\\generated\\profile\\default\\*' + ], + 'register/*': [ + '..\\..\\..\\..\\..\\features\\register\\src\\main\\*', + '..\\..\\..\\..\\..\\features\\register\\build\\default\\generated\\profile\\default\\*' + ], + 'scene_single_video/*': [ + '..\\..\\..\\..\\..\\scene_single_video\\src\\main\\*', + '..\\..\\..\\..\\..\\scene_single_video\\build\\default\\generated\\profile\\default\\*' + ], + 'media-player-common/*': [ + '..\\..\\..\\..\\..\\polyv\\src\\main\\*', + '..\\..\\..\\..\\..\\polyv\\build\\default\\generated\\profile\\default\\*' + ], + '@polyvharmony/media-player-sdk/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+media-player-sdk@2.5.0\\oh_modules\\@polyvharmony\\media-player-sdk\\src\\main\\*' + ], + '@polyvharmony/media-player-core-ijk/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+media-player-core-ijk@2.5.0\\oh_modules\\@polyvharmony\\media-player-core-ijk\\src\\main\\*' + ], + '@polyvharmony/media-player-sdk-addon-cache-down/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\\oh_modules\\@polyvharmony\\media-player-sdk-addon-cache-down\\src\\main\\*' + ], + '@polyvharmony/httpdns-api/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+httpdns-api@1.0.2\\oh_modules\\@polyvharmony\\httpdns-api\\src\\main\\*' + ], + '@polyvharmony/httpdns-impl-local/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+httpdns-impl-local@1.0.2\\oh_modules\\@polyvharmony\\httpdns-impl-local\\src\\main\\*' + ], + '@polyvharmony/httpdns-impl-ali/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+httpdns-impl-ali@1.0.2\\oh_modules\\@polyvharmony\\httpdns-impl-ali\\src\\main\\*' + ], + '@nimsdk/conversation/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+conversation@10.9.10\\oh_modules\\@nimsdk\\conversation\\src\\main\\*' + ], + '@nimsdk/localconversation/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+localconversation@10.9.10\\oh_modules\\@nimsdk\\localconversation\\src\\main\\*' + ], + '@nimsdk/message/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+message@10.9.10\\oh_modules\\@nimsdk\\message\\src\\main\\*' + ], + '@nimsdk/team/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+team@10.9.10\\oh_modules\\@nimsdk\\team\\src\\main\\*' + ], + '@nimsdk/user/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+user@10.9.10\\oh_modules\\@nimsdk\\user\\src\\main\\*' + ], + '@nimsdk/friend/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+friend@10.9.10\\oh_modules\\@nimsdk\\friend\\src\\main\\*' + ], + '@nimsdk/nim/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+nim@10.9.10\\oh_modules\\@nimsdk\\nim\\src\\main\\*' + ], + '@nimsdk/base/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\\oh_modules\\@nimsdk\\base\\src\\main\\*' + ], + '@nimkit/corekit/*': [ + '..\\..\\..\\..\\..\\corekit\\src\\main\\*', + '..\\..\\..\\..\\..\\corekit\\build\\default\\generated\\profile\\default\\*' + ], + '@nimkit/chatkit/*': [ + '..\\..\\..\\..\\..\\chatkit\\src\\main\\*', + '..\\..\\..\\..\\..\\chatkit\\build\\default\\generated\\profile\\default\\*' + ], + 'netease/*': [ + '..\\..\\..\\..\\..\\features\\netease\\src\\main\\*', + '..\\..\\..\\..\\..\\features\\netease\\build\\default\\generated\\profile\\default\\*' + ], + '@polyvharmony/media-player-business/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+media-player-business@2.5.0\\oh_modules\\@polyvharmony\\media-player-business\\src\\main\\*' + ], + '@polyvharmony/media-player-core-api/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+media-player-core-api@2.5.0\\oh_modules\\@polyvharmony\\media-player-core-api\\src\\main\\*' + ], + '@polyvharmony/media-player-foundation/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+media-player-foundation@2.5.0\\oh_modules\\@polyvharmony\\media-player-foundation\\src\\main\\*' + ], + '@aliyun/httpdns/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@aliyun+httpdns@1.1.1\\oh_modules\\@aliyun\\httpdns\\src\\main\\*' + ], + '@nimsdk/vendor/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+vendor@1.0.0\\oh_modules\\@nimsdk\\vendor\\src\\main\\*' + ], + '@nimkit/conversationkit_ui/*': [ + '..\\..\\..\\..\\..\\conversationkit_ui\\src\\main\\*', + '..\\..\\..\\..\\..\\conversationkit_ui\\build\\default\\generated\\profile\\default\\*' + ], + '@nimkit/chatkit_ui/*': [ + '..\\..\\..\\..\\..\\chatkit_ui\\src\\main\\*', + '..\\..\\..\\..\\..\\chatkit_ui\\build\\default\\generated\\profile\\default\\*' + ], + '@nimkit/common/*': [ + '..\\..\\..\\..\\..\\common\\src\\main\\*', + '..\\..\\..\\..\\..\\common\\build\\default\\generated\\profile\\default\\*' + ], + '@nimkit/localconversationkit_ui/*': [ + '..\\..\\..\\..\\..\\localconversationkit_ui\\src\\main\\*', + '..\\..\\..\\..\\..\\localconversationkit_ui\\build\\default\\generated\\profile\\default\\*' + ], + '@ohos/httpclient/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@ohos+httpclient@2.0.2\\oh_modules\\@ohos\\httpclient\\src\\main\\*' + ], + '@aliyun/logger/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@aliyun+logger@1.0.2\\oh_modules\\@aliyun\\logger\\src\\main\\*' + ], + '@aliyun/error/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@aliyun+error@1.0.2\\oh_modules\\@aliyun\\error\\src\\main\\*' + ], + '@nimkit/markdown/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimkit+markdown@1.1.0\\oh_modules\\@nimkit\\markdown\\src\\main\\*' + ], + '@ohos/pinyin4js/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@ohos+pinyin4js@2.0.1\\oh_modules\\@ohos\\pinyin4js\\src\\main\\*' + ], + 'expert/*': [ + '..\\*', + '..\\..\\..\\build\\default\\generated\\profile\\default\\*' + ] + }, + collectImportersConfig: undefined +} +[2025-07-09T18:57:11.183] [DEBUG] debug-file - Compile arkts with external api path: D:\Program Files\Huawei\DevEco Studioss\sdk\default\hms\ets +[2025-07-09T18:57:11.185] [DEBUG] debug-file - default@CompileArkTS work[76] is submitted. +[2025-07-09T18:57:11.185] [DEBUG] debug-file - default@CompileArkTS work[76] is pushed to ready queue. +[2025-07-09T18:57:11.185] [DEBUG] debug-file - A work dispatched to worker[15] failed because unable to get work from ready queue. +[2025-07-09T18:57:11.185] [DEBUG] debug-file - A work dispatched to worker[14] failed because unable to get work from ready queue. +[2025-07-09T18:57:11.185] [DEBUG] debug-file - A work dispatched to worker[13] failed because unable to get work from ready queue. +[2025-07-09T18:57:11.185] [DEBUG] debug-file - A work dispatched to worker[12] failed because unable to get work from ready queue. +[2025-07-09T18:57:11.185] [DEBUG] debug-file - A work dispatched to worker[11] failed because unable to get work from ready queue. +[2025-07-09T18:57:11.185] [DEBUG] debug-file - A work dispatched to worker[10] failed because unable to get work from ready queue. +[2025-07-09T18:57:11.185] [DEBUG] debug-file - A work dispatched to worker[9] failed because unable to get work from ready queue. +[2025-07-09T18:57:11.185] [DEBUG] debug-file - A work dispatched to worker[8] failed because unable to get work from ready queue. +[2025-07-09T18:57:11.185] [DEBUG] debug-file - A work dispatched to worker[7] failed because unable to get work from ready queue. +[2025-07-09T18:57:11.185] [DEBUG] debug-file - A work dispatched to worker[6] failed because unable to get work from ready queue. +[2025-07-09T18:57:11.185] [DEBUG] debug-file - A work dispatched to worker[5] failed because unable to get work from ready queue. +[2025-07-09T18:57:11.186] [DEBUG] debug-file - default@CompileArkTS work[76] has been dispatched to worker[4]. +[2025-07-09T18:57:11.186] [DEBUG] debug-file - default@CompileArkTS work[76] is dispatched. +[2025-07-09T18:57:11.186] [DEBUG] debug-file - CopyResources startTime: 36988913703000 +[2025-07-09T18:57:11.186] [DEBUG] debug-file - default@CompileArkTS work[77] is submitted. +[2025-07-09T18:57:11.186] [DEBUG] debug-file - default@CompileArkTS work[77] is pushed to ready queue. +[2025-07-09T18:57:11.186] [DEBUG] debug-file - A work dispatched to worker[15] failed because unable to get work from ready queue. +[2025-07-09T18:57:11.186] [DEBUG] debug-file - Create resident worker with id: 14. +[2025-07-09T18:57:11.188] [DEBUG] debug-file - default@CompileArkTS work[77] has been dispatched to worker[14]. +[2025-07-09T18:57:11.188] [DEBUG] debug-file - default@CompileArkTS work[77] is dispatched. +[2025-07-09T18:57:11.188] [DEBUG] debug-file - default : default@CompileArkTS cost memory -4.0670928955078125 +[2025-07-09T18:57:11.190] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:11.190] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:11.192] [DEBUG] debug-file - Executing task :default:default@BuildJS +[2025-07-09T18:57:11.197] [DEBUG] debug-file - default : default@BuildJS cost memory 0.6215591430664062 +[2025-07-09T18:57:11.198] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 455 ms +[2025-07-09T18:57:11.198] [INFO] debug-file - Finished :default:default@BuildJS... after 6 ms +[2025-07-09T18:57:11.199] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:57:11.199] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:57:11.199] [DEBUG] debug-file - Executing task :Home:default@ProcessLibs +[2025-07-09T18:57:11.201] [DEBUG] debug-file - Incremental task Home:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:57:11.201] [DEBUG] debug-file - Home : default@ProcessLibs cost memory 0.13294219970703125 +[2025-07-09T18:57:11.202] [INFO] debug-file - UP-TO-DATE :Home:default@ProcessLibs... +[2025-07-09T18:57:11.203] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:57:11.203] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:57:11.203] [DEBUG] debug-file - Executing task :chatkit_ui:default@ProcessLibs +[2025-07-09T18:57:11.205] [DEBUG] debug-file - Incremental task chatkit_ui:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:57:11.205] [DEBUG] debug-file - chatkit_ui : default@ProcessLibs cost memory 0.13091278076171875 +[2025-07-09T18:57:11.205] [INFO] debug-file - UP-TO-DATE :chatkit_ui:default@ProcessLibs... +[2025-07-09T18:57:11.207] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:57:11.207] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:57:11.208] [DEBUG] debug-file - Executing task :conversationkit_ui:default@ProcessLibs +[2025-07-09T18:57:11.210] [DEBUG] debug-file - Incremental task conversationkit_ui:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:57:11.210] [DEBUG] debug-file - conversationkit_ui : default@ProcessLibs cost memory 0.13164520263671875 +[2025-07-09T18:57:11.211] [INFO] debug-file - UP-TO-DATE :conversationkit_ui:default@ProcessLibs... +[2025-07-09T18:57:11.212] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:57:11.212] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:57:11.212] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@ProcessLibs +[2025-07-09T18:57:11.214] [DEBUG] debug-file - Incremental task localconversationkit_ui:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:57:11.214] [DEBUG] debug-file - localconversationkit_ui : default@ProcessLibs cost memory 0.132354736328125 +[2025-07-09T18:57:11.214] [INFO] debug-file - UP-TO-DATE :localconversationkit_ui:default@ProcessLibs... +[2025-07-09T18:57:11.216] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:11.216] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:11.216] [DEBUG] debug-file - Executing task :default:default@BuildNativeWithCmake +[2025-07-09T18:57:11.216] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:11.216] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:11.216] [DEBUG] debug-file - default : default@BuildNativeWithCmake cost memory 0.0687713623046875 +[2025-07-09T18:57:11.216] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 474 ms +[2025-07-09T18:57:11.217] [INFO] debug-file - Finished :default:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:57:11.218] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:57:11.218] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:57:11.220] [DEBUG] debug-file - Executing task :Home:default@DoNativeStrip +[2025-07-09T18:57:11.221] [DEBUG] debug-file - Task 'Home:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:11.221] [DEBUG] debug-file - Incremental task Home:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:57:11.221] [DEBUG] debug-file - Home : default@DoNativeStrip cost memory 0.07335662841796875 +[2025-07-09T18:57:11.221] [INFO] debug-file - UP-TO-DATE :Home:default@DoNativeStrip... +[2025-07-09T18:57:11.222] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:57:11.223] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:57:11.224] [DEBUG] debug-file - Executing task :chatkit_ui:default@DoNativeStrip +[2025-07-09T18:57:11.224] [DEBUG] debug-file - Task 'chatkit_ui:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:11.225] [DEBUG] debug-file - Incremental task chatkit_ui:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:57:11.225] [DEBUG] debug-file - chatkit_ui : default@DoNativeStrip cost memory 0.08042144775390625 +[2025-07-09T18:57:11.225] [INFO] debug-file - UP-TO-DATE :chatkit_ui:default@DoNativeStrip... +[2025-07-09T18:57:11.226] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:57:11.226] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:57:11.228] [DEBUG] debug-file - Executing task :conversationkit_ui:default@DoNativeStrip +[2025-07-09T18:57:11.228] [DEBUG] debug-file - Task 'conversationkit_ui:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:11.229] [DEBUG] debug-file - Incremental task conversationkit_ui:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:57:11.229] [DEBUG] debug-file - conversationkit_ui : default@DoNativeStrip cost memory 0.07332611083984375 +[2025-07-09T18:57:11.229] [INFO] debug-file - UP-TO-DATE :conversationkit_ui:default@DoNativeStrip... +[2025-07-09T18:57:11.230] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:57:11.230] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:57:11.232] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@DoNativeStrip +[2025-07-09T18:57:11.232] [DEBUG] debug-file - Task 'localconversationkit_ui:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:11.232] [DEBUG] debug-file - Incremental task localconversationkit_ui:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:57:11.232] [DEBUG] debug-file - localconversationkit_ui : default@DoNativeStrip cost memory 0.073577880859375 +[2025-07-09T18:57:11.232] [INFO] debug-file - UP-TO-DATE :localconversationkit_ui:default@DoNativeStrip... +[2025-07-09T18:57:11.234] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:57:11.234] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:57:11.234] [DEBUG] debug-file - Executing task :netease:default@BuildNativeWithNinja +[2025-07-09T18:57:11.234] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:57:11.235] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:57:11.235] [DEBUG] debug-file - netease : default@BuildNativeWithNinja cost memory 0.0687408447265625 +[2025-07-09T18:57:11.235] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 493 ms +[2025-07-09T18:57:11.236] [INFO] debug-file - Finished :netease:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:57:11.237] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:57:11.237] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:57:11.238] [DEBUG] debug-file - Executing task :netease:default@ProcessLibs +[2025-07-09T18:57:11.241] [DEBUG] debug-file - Incremental task netease:default@ProcessLibs pre-execution cost: 2 ms . +[2025-07-09T18:57:11.241] [DEBUG] debug-file - netease : default@ProcessLibs cost memory -14.704803466796875 +[2025-07-09T18:57:11.241] [INFO] debug-file - UP-TO-DATE :netease:default@ProcessLibs... +[2025-07-09T18:57:11.242] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:57:11.242] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:57:11.244] [DEBUG] debug-file - Executing task :netease:default@DoNativeStrip +[2025-07-09T18:57:11.244] [DEBUG] debug-file - Task 'netease:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:11.245] [DEBUG] debug-file - Incremental task netease:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:57:11.245] [DEBUG] debug-file - netease : default@DoNativeStrip cost memory 0.07372283935546875 +[2025-07-09T18:57:11.245] [INFO] debug-file - UP-TO-DATE :netease:default@DoNativeStrip... +[2025-07-09T18:57:11.246] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:11.246] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:11.247] [DEBUG] debug-file - Executing task :default:default@BuildNativeWithNinja +[2025-07-09T18:57:11.247] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:11.247] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:11.248] [DEBUG] debug-file - default : default@BuildNativeWithNinja cost memory 0.08913421630859375 +[2025-07-09T18:57:11.248] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 505 ms +[2025-07-09T18:57:11.248] [INFO] debug-file - Finished :default:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:57:11.250] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:11.250] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:11.250] [DEBUG] debug-file - Executing task :default:default@ProcessLibs +[2025-07-09T18:57:11.283] [DEBUG] debug-file - Incremental task default:default@ProcessLibs pre-execution cost: 11 ms . +[2025-07-09T18:57:11.283] [DEBUG] debug-file - default : default@ProcessLibs cost memory 5.0393524169921875 +[2025-07-09T18:57:11.285] [INFO] debug-file - UP-TO-DATE :default:default@ProcessLibs... +[2025-07-09T18:57:11.287] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:11.287] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:11.289] [DEBUG] debug-file - Executing task :default:default@DoNativeStrip +[2025-07-09T18:57:11.289] [DEBUG] debug-file - Task 'default:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:11.291] [DEBUG] debug-file - Incremental task default:default@DoNativeStrip pre-execution cost: 3 ms . +[2025-07-09T18:57:11.291] [DEBUG] debug-file - default : default@DoNativeStrip cost memory 0.4157257080078125 +[2025-07-09T18:57:11.292] [INFO] debug-file - UP-TO-DATE :default:default@DoNativeStrip... +[2025-07-09T18:57:11.293] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:11.293] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:11.295] [DEBUG] debug-file - Executing task :default:default@CacheNativeLibs +[2025-07-09T18:57:11.295] [DEBUG] debug-file - Task 'default:default@CacheNativeLibs' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:11.297] [DEBUG] debug-file - Incremental task default:default@CacheNativeLibs pre-execution cost: 3 ms . +[2025-07-09T18:57:11.297] [DEBUG] debug-file - default : default@CacheNativeLibs cost memory 0.4290771484375 +[2025-07-09T18:57:11.297] [INFO] debug-file - UP-TO-DATE :default:default@CacheNativeLibs... +[2025-07-09T18:57:11.894] [DEBUG] debug-file - worker[14] has one work done. +[2025-07-09T18:57:11.894] [DEBUG] debug-file - CopyResources is end, endTime: 36989622273500 +[2025-07-09T18:57:11.894] [DEBUG] debug-file - default@CompileArkTS work[77] done. +[2025-07-09T18:57:11.895] [DEBUG] debug-file - A work dispatched to worker[14] failed because unable to get work from ready queue. +[2025-07-09T18:57:19.036] [DEBUG] debug-file - worker[4] has one work done. +[2025-07-09T18:57:19.040] [DEBUG] debug-file - default@CompileArkTS work[76] done. +[2025-07-09T18:57:19.040] [DEBUG] debug-file - A work dispatched to worker[4] failed because unable to get work from ready queue. +[2025-07-09T18:57:19.045] [INFO] debug-file - Finished :default:default@CompileArkTS... after 7 s 928 ms +[2025-07-09T18:57:19.047] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:19.047] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:19.048] [DEBUG] debug-file - Executing task :default:default@GeneratePkgModuleJson +[2025-07-09T18:57:19.048] [DEBUG] debug-file - Task 'default:default@GeneratePkgModuleJson' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:57:19.048] [DEBUG] debug-file - Incremental task default:default@GeneratePkgModuleJson pre-execution cost: 1 ms . +[2025-07-09T18:57:19.048] [DEBUG] debug-file - default : default@GeneratePkgModuleJson cost memory 0.0697479248046875 +[2025-07-09T18:57:19.049] [INFO] debug-file - UP-TO-DATE :default:default@GeneratePkgModuleJson... +[2025-07-09T18:57:19.050] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:19.050] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:19.054] [DEBUG] debug-file - Executing task :default:default@PackageHap +[2025-07-09T18:57:19.058] [WARN] debug-file - Bytecode HARs [@polyvharmony/media-player-sdk, @polyvharmony/media-player-core-ijk, @polyvharmony/media-player-sdk-addon-cache-down, @polyvharmony/httpdns-api, @polyvharmony/httpdns-impl-local, @polyvharmony/httpdns-impl-ali, @nimsdk/conversation, @nimsdk/localconversation, @nimsdk/message, @nimsdk/team, @nimsdk/user, @nimsdk/friend, @nimsdk/nim, @nimsdk/base, @polyvharmony/media-player-business, @polyvharmony/media-player-core-api, @polyvharmony/media-player-foundation, @aliyun/httpdns, @aliyun/logger, @aliyun/error] to integrate are not obfuscated and will not be obfuscated later. +[2025-07-09T18:57:19.058] [WARN] debug-file - If obfuscation is needed, enable obfuscation settings in this build process; failing to do so may prevent future obfuscation. + Properly configure obfuscation rules to avoid runtime issues. +[2025-07-09T18:57:19.075] [DEBUG] debug-file - default:default@PackageHap is not up-to-date, since the input file 'D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader_out\default\ets' has been changed. +[2025-07-09T18:57:19.075] [DEBUG] debug-file - Incremental task default:default@PackageHap pre-execution cost: 18 ms . +[2025-07-09T18:57:19.076] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:19.076] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:19.077] [DEBUG] debug-file - Use tool [D:\Program Files\Huawei\DevEco Studioss\sdk\default\openharmony\toolchains\lib\app_packing_tool.jar] + [ + 'java', + '-Dfile.encoding=GBK', + '-jar', + 'D:\\Program Files\\Huawei\\DevEco Studioss\\sdk\\default\\openharmony\\toolchains\\lib\\app_packing_tool.jar', + '--mode', + 'hap', + '--force', + 'true', + '--lib-path', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\stripped_native_libs\\default', + '--json-path', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\package\\default\\module.json', + '--resources-path', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\res\\default\\resources', + '--index-path', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\res\\default\\resources.index', + '--pack-info-path', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\outputs\\default\\pack.info', + '--out-path', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\outputs\\default\\default-default-unsigned.hap', + '--ets-path', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\loader_out\\default\\ets', + '--pkg-context-path', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\loader\\default\\pkgContextInfo.json' +] +[2025-07-09T18:57:19.078] [DEBUG] debug-file - default@PackageHap work[78] is submitted. +[2025-07-09T18:57:19.078] [DEBUG] debug-file - default@PackageHap work[78] is pushed to ready queue. +[2025-07-09T18:57:19.078] [DEBUG] debug-file - A work dispatched to worker[15] failed because unable to get work from ready queue. +[2025-07-09T18:57:19.078] [DEBUG] debug-file - default@PackageHap work[78] has been dispatched to worker[14]. +[2025-07-09T18:57:19.078] [DEBUG] debug-file - default@PackageHap work[78] is dispatched. +[2025-07-09T18:57:19.092] [DEBUG] debug-file - default : default@PackageHap cost memory 4.451530456542969 +[2025-07-09T18:57:19.136] [DEBUG] debug-file - current process memoryUsage: { + rss: 1063874560, + heapTotal: 76275712, + heapUsed: 55545264, + external: 13627264, + arrayBuffers: 11574962 +} os memoryUsage :19.289871215820312 +[2025-07-09T18:57:19.703] [DEBUG] debug-file - worker[14] has one work done. +[2025-07-09T18:57:19.703] [DEBUG] debug-file - default@PackageHap work[78] done. +[2025-07-09T18:57:19.703] [DEBUG] debug-file - A work dispatched to worker[14] failed because unable to get work from ready queue. +[2025-07-09T18:57:19.705] [INFO] debug-file - Finished :default:default@PackageHap... after 607 ms +[2025-07-09T18:57:19.707] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:19.707] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:19.709] [DEBUG] debug-file - Executing task :default:default@SignHap +[2025-07-09T18:57:19.710] [DEBUG] debug-file - default:default@SignHap is not up-to-date, since the input file 'D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\default-default-unsigned.hap' has been changed. +[2025-07-09T18:57:19.710] [DEBUG] debug-file - Incremental task default:default@SignHap pre-execution cost: 1 ms . +[2025-07-09T18:57:19.710] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:19.710] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:19.755] [DEBUG] debug-file - java daemon socket received message:{"code":0,"message":"verify profile success"} +[2025-07-09T18:57:19.760] [DEBUG] debug-file - java daemon socket close code:1000 reason:close by user +[2025-07-09T18:57:20.058] [DEBUG] debug-file - java daemon socket received message:{"code":0,"message":"sign app success"} +[2025-07-09T18:57:20.059] [DEBUG] debug-file - default : default@SignHap cost memory 1.0962371826171875 +[2025-07-09T18:57:20.059] [DEBUG] debug-file - runTaskFromQueue task cost before running: 10 s 316 ms +[2025-07-09T18:57:20.059] [INFO] debug-file - Finished :default:default@SignHap... after 351 ms +[2025-07-09T18:57:20.061] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:20.061] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:20.061] [DEBUG] debug-file - Executing task :default:default@CollectDebugSymbol +[2025-07-09T18:57:20.066] [DEBUG] debug-file - default:default@CollectDebugSymbol is not up-to-date, since the input file 'D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\cache\default\default@CompileArkTS\esmodule\release\sourceMaps.map' has been changed. +[2025-07-09T18:57:20.066] [DEBUG] debug-file - Incremental task default:default@CollectDebugSymbol pre-execution cost: 3 ms . +[2025-07-09T18:57:20.066] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:57:20.066] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:57:20.070] [DEBUG] debug-file - nameCache.json for module default does not exists +[2025-07-09T18:57:20.070] [DEBUG] debug-file - default : default@CollectDebugSymbol cost memory 0.5458297729492188 +[2025-07-09T18:57:20.071] [DEBUG] debug-file - runTaskFromQueue task cost before running: 10 s 328 ms +[2025-07-09T18:57:20.072] [INFO] debug-file - Finished :default:default@CollectDebugSymbol... after 10 ms +[2025-07-09T18:57:20.073] [DEBUG] debug-file - Executing task :default:assembleHap +[2025-07-09T18:57:20.073] [DEBUG] debug-file - default : assembleHap cost memory 0.01136016845703125 +[2025-07-09T18:57:20.073] [DEBUG] debug-file - runTaskFromQueue task cost before running: 10 s 330 ms +[2025-07-09T18:57:20.073] [INFO] debug-file - Finished :default:assembleHap... after 1 ms +[2025-07-09T18:57:20.080] [DEBUG] debug-file - BUILD SUCCESSFUL in 10 s 338 ms +[2025-07-09T18:57:20.081] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@PreBuild is up-to-date. +[2025-07-09T18:57:20.081] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@PreBuild is up-to-date. +[2025-07-09T18:57:20.081] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@PreBuild is up-to-date. +[2025-07-09T18:57:20.081] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@PreBuild is up-to-date. +[2025-07-09T18:57:20.081] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task scene_single_video:default@PreBuild is up-to-date. +[2025-07-09T18:57:20.081] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task polyv:default@PreBuild is up-to-date. +[2025-07-09T18:57:20.081] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@PreBuild is up-to-date. +[2025-07-09T18:57:20.081] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task corekit:default@PreBuild is up-to-date. +[2025-07-09T18:57:20.081] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit:default@PreBuild is up-to-date. +[2025-07-09T18:57:20.081] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task netease:default@PreBuild is up-to-date. +[2025-07-09T18:57:20.081] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task conversationkit_ui:default@PreBuild is up-to-date. +[2025-07-09T18:57:20.081] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task common:default@PreBuild is up-to-date. +[2025-07-09T18:57:20.081] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit_ui:default@PreBuild is up-to-date. +[2025-07-09T18:57:20.081] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task localconversationkit_ui:default@PreBuild is up-to-date. +[2025-07-09T18:57:20.081] [DEBUG] debug-file - Update task default:default@CreateModuleInfo output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\generated\profile\default\ModuleInfo.ts cache. +[2025-07-09T18:57:20.082] [DEBUG] debug-file - Incremental task default:default@CreateModuleInfo post-execution cost:1 ms . +[2025-07-09T18:57:20.082] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@GenerateMetadata is up-to-date. +[2025-07-09T18:57:20.082] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@GeneratePkgContextInfo is up-to-date. +[2025-07-09T18:57:20.082] [DEBUG] debug-file - Update task default:default@ProcessIntegratedHsp output file:D:\202076work\hongmeng\newExpert\harmony\build\cache\default\integrated_hsp\integratedHspCache.json cache. +[2025-07-09T18:57:20.082] [DEBUG] debug-file - Incremental task default:default@ProcessIntegratedHsp post-execution cost:1 ms . +[2025-07-09T18:57:20.082] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:57:20.082] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@MergeProfile is up-to-date. +[2025-07-09T18:57:20.082] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task polyv:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:57:20.082] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task polyv:default@MergeProfile is up-to-date. +[2025-07-09T18:57:20.082] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task corekit:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:57:20.082] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task corekit:default@MergeProfile is up-to-date. +[2025-07-09T18:57:20.082] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task common:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:57:20.082] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task common:default@MergeProfile is up-to-date. +[2025-07-09T18:57:20.082] [DEBUG] debug-file - Update task default:default@SyscapTransform input file:D:\Program Files\Huawei\DevEco Studioss\sdk\default\openharmony\toolchains\syscap_tool.exe cache by regenerate. +[2025-07-09T18:57:20.083] [DEBUG] debug-file - Update task default:default@SyscapTransform input file:D:\Program Files\Huawei\DevEco Studioss\sdk\default\openharmony\ets\api\device-define cache by regenerate. +[2025-07-09T18:57:20.083] [DEBUG] debug-file - Update task default:default@SyscapTransform output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\syscap\default\rpcid.sc cache. +[2025-07-09T18:57:20.083] [DEBUG] debug-file - Incremental task default:default@SyscapTransform post-execution cost:1 ms . +[2025-07-09T18:57:20.083] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessRouterMap is up-to-date. +[2025-07-09T18:57:20.083] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:57:20.083] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:57:20.083] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@MergeProfile is up-to-date. +[2025-07-09T18:57:20.083] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@MergeProfile is up-to-date. +[2025-07-09T18:57:20.083] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task scene_single_video:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:57:20.083] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task scene_single_video:default@MergeProfile is up-to-date. +[2025-07-09T18:57:20.083] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:57:20.083] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit:default@MergeProfile is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@GenerateLoaderJson is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@MergeProfile is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit_ui:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task conversationkit_ui:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task localconversationkit_ui:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit_ui:default@MergeProfile is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task conversationkit_ui:default@MergeProfile is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task localconversationkit_ui:default@MergeProfile is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@ProcessLibs is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task polyv:default@ProcessLibs is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task netease:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task corekit:default@ProcessLibs is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task netease:default@MergeProfile is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task common:default@ProcessLibs is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@DoNativeStrip is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task polyv:default@DoNativeStrip is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@CreateBuildProfile is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task corekit:default@DoNativeStrip is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@MergeProfile is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task common:default@DoNativeStrip is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@MakePackInfo is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessProfile is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@ProcessLibs is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@ProcessLibs is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task scene_single_video:default@ProcessLibs is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit:default@ProcessLibs is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessResource is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@DoNativeStrip is up-to-date. +[2025-07-09T18:57:20.084] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@DoNativeStrip is up-to-date. +[2025-07-09T18:57:20.085] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task scene_single_video:default@DoNativeStrip is up-to-date. +[2025-07-09T18:57:20.085] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit:default@DoNativeStrip is up-to-date. +[2025-07-09T18:57:20.085] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@CompileResource is up-to-date. +[2025-07-09T18:57:20.088] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader\default cache by regenerate. +[2025-07-09T18:57:20.089] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\commons\basic\Index.ets cache by regenerate. +[2025-07-09T18:57:20.089] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\mypage\Index.ets cache by regenerate. +[2025-07-09T18:57:20.089] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\Home\Index.ets cache by regenerate. +[2025-07-09T18:57:20.089] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\register\Index.ets cache by regenerate. +[2025-07-09T18:57:20.089] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\scene_single_video\Index.ets cache by regenerate. +[2025-07-09T18:57:20.089] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\polyv\Index.ets cache by regenerate. +[2025-07-09T18:57:20.089] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\corekit\Index.ets cache by regenerate. +[2025-07-09T18:57:20.089] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit\Index.ets cache by regenerate. +[2025-07-09T18:57:20.089] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\netease\Index.ets cache by regenerate. +[2025-07-09T18:57:20.089] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\Index.js cache by regenerate. +[2025-07-09T18:57:20.089] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:57:20.089] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:57:20.090] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\common\Index.ets cache by regenerate. +[2025-07-09T18:57:20.090] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:57:20.090] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\index.ts cache by regenerate. +[2025-07-09T18:57:20.090] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js\index.ts cache by regenerate. +[2025-07-09T18:57:20.090] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown\Index.js cache by regenerate. +[2025-07-09T18:57:20.090] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js\index.ets cache by regenerate. +[2025-07-09T18:57:20.090] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm\index.ts cache by regenerate. +[2025-07-09T18:57:20.090] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\commons\basic\src\main\ets cache from map. +[2025-07-09T18:57:20.090] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\mypage\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.091] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\Home\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.093] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\register\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.093] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\scene_single_video\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.094] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\polyv\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.103] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk@2.5.0\oh_modules\@polyvharmony\media-player-sdk\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.103] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-ijk@2.5.0\oh_modules\@polyvharmony\media-player-core-ijk\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.105] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\oh_modules\@polyvharmony\media-player-sdk-addon-cache-down\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.108] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-api@1.0.2\oh_modules\@polyvharmony\httpdns-api\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.108] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-impl-local@1.0.2\oh_modules\@polyvharmony\httpdns-impl-local\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.109] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-impl-ali@1.0.2\oh_modules\@polyvharmony\httpdns-impl-ali\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.109] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.110] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+localconversation@10.9.10\oh_modules\@nimsdk\localconversation\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.113] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.118] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.119] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.120] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.121] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.131] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.147] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\corekit\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.147] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.149] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\netease\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.150] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-business@2.5.0\oh_modules\@polyvharmony\media-player-business\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.160] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-api@2.5.0\oh_modules\@polyvharmony\media-player-core-api\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.163] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-foundation@2.5.0\oh_modules\@polyvharmony\media-player-foundation\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.166] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+httpdns@1.1.1\oh_modules\@aliyun\httpdns\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.171] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.215] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.215] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.219] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\common\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.221] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.222] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.227] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+logger@1.0.2\oh_modules\@aliyun\logger\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.227] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+error@1.0.2\oh_modules\@aliyun\error\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.228] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.232] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.233] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.237] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources\rawfile cache by regenerate. +[2025-07-09T18:57:20.240] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\ResourceTable.txt cache by regenerate. +[2025-07-09T18:57:20.240] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\ark_module.json cache by regenerate. +[2025-07-09T18:57:20.240] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources\base\profile cache by regenerate. +[2025-07-09T18:57:20.241] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\src\main\ets cache by regenerate. +[2025-07-09T18:57:20.244] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader\default\pkgContextInfo.json cache by regenerate. +[2025-07-09T18:57:20.244] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\generated\profile\default\BuildProfile.ets cache by regenerate. +[2025-07-09T18:57:20.244] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\commons\basic\BuildProfile.ets cache by regenerate. +[2025-07-09T18:57:20.244] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\mypage\BuildProfile.ets cache by regenerate. +[2025-07-09T18:57:20.244] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\Home\BuildProfile.ets cache by regenerate. +[2025-07-09T18:57:20.244] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\register\BuildProfile.ets cache by regenerate. +[2025-07-09T18:57:20.244] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\scene_single_video\BuildProfile.ets cache by regenerate. +[2025-07-09T18:57:20.244] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\polyv\BuildProfile.ets cache by regenerate. +[2025-07-09T18:57:20.244] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\corekit\BuildProfile.ets cache by regenerate. +[2025-07-09T18:57:20.244] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit\BuildProfile.ets cache by regenerate. +[2025-07-09T18:57:20.244] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\netease\BuildProfile.ets cache by regenerate. +[2025-07-09T18:57:20.245] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\BuildProfile.ets cache by regenerate. +[2025-07-09T18:57:20.245] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\BuildProfile.ets cache by regenerate. +[2025-07-09T18:57:20.245] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\common\BuildProfile.ets cache by regenerate. +[2025-07-09T18:57:20.245] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\BuildProfile.ets cache by regenerate. +[2025-07-09T18:57:20.245] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\src\mock\mock-config.json5 cache by regenerate. +[2025-07-09T18:57:20.245] [DEBUG] debug-file - Update task default:default@CompileArkTS output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader_out\default\ets cache. +[2025-07-09T18:57:20.245] [DEBUG] debug-file - Incremental task default:default@CompileArkTS post-execution cost:161 ms . +[2025-07-09T18:57:20.247] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader\default cache by regenerate. +[2025-07-09T18:57:20.247] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\commons\basic\Index.ets cache by regenerate. +[2025-07-09T18:57:20.248] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\features\mypage\Index.ets cache by regenerate. +[2025-07-09T18:57:20.248] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\features\Home\Index.ets cache by regenerate. +[2025-07-09T18:57:20.248] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\features\register\Index.ets cache by regenerate. +[2025-07-09T18:57:20.248] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\scene_single_video\Index.ets cache by regenerate. +[2025-07-09T18:57:20.248] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\polyv\Index.ets cache by regenerate. +[2025-07-09T18:57:20.248] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\corekit\Index.ets cache by regenerate. +[2025-07-09T18:57:20.248] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit\Index.ets cache by regenerate. +[2025-07-09T18:57:20.248] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\features\netease\Index.ets cache by regenerate. +[2025-07-09T18:57:20.248] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\Index.js cache by regenerate. +[2025-07-09T18:57:20.248] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:57:20.248] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:57:20.248] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\common\Index.ets cache by regenerate. +[2025-07-09T18:57:20.249] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:57:20.249] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\index.ts cache by regenerate. +[2025-07-09T18:57:20.249] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js\index.ts cache by regenerate. +[2025-07-09T18:57:20.249] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown\Index.js cache by regenerate. +[2025-07-09T18:57:20.249] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js\index.ets cache by regenerate. +[2025-07-09T18:57:20.249] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm\index.ts cache by regenerate. +[2025-07-09T18:57:20.249] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js\src\main\js cache by regenerate. +[2025-07-09T18:57:20.249] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources\rawfile cache by regenerate. +[2025-07-09T18:57:20.253] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\ResourceTable.txt cache by regenerate. +[2025-07-09T18:57:20.253] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\ark_module.json cache by regenerate. +[2025-07-09T18:57:20.253] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources\base\profile cache by regenerate. +[2025-07-09T18:57:20.253] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader\default\pkgContextInfo.json cache by regenerate. +[2025-07-09T18:57:20.254] [DEBUG] debug-file - Update task default:default@BuildJS output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader_out\default\js cache. +[2025-07-09T18:57:20.254] [DEBUG] debug-file - Incremental task default:default@BuildJS post-execution cost:9 ms . +[2025-07-09T18:57:20.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@ProcessLibs is up-to-date. +[2025-07-09T18:57:20.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit_ui:default@ProcessLibs is up-to-date. +[2025-07-09T18:57:20.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task conversationkit_ui:default@ProcessLibs is up-to-date. +[2025-07-09T18:57:20.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task localconversationkit_ui:default@ProcessLibs is up-to-date. +[2025-07-09T18:57:20.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@DoNativeStrip is up-to-date. +[2025-07-09T18:57:20.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit_ui:default@DoNativeStrip is up-to-date. +[2025-07-09T18:57:20.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task conversationkit_ui:default@DoNativeStrip is up-to-date. +[2025-07-09T18:57:20.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task localconversationkit_ui:default@DoNativeStrip is up-to-date. +[2025-07-09T18:57:20.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task netease:default@ProcessLibs is up-to-date. +[2025-07-09T18:57:20.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task netease:default@DoNativeStrip is up-to-date. +[2025-07-09T18:57:20.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessLibs is up-to-date. +[2025-07-09T18:57:20.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@DoNativeStrip is up-to-date. +[2025-07-09T18:57:20.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@CacheNativeLibs is up-to-date. +[2025-07-09T18:57:20.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@GeneratePkgModuleJson is up-to-date. +[2025-07-09T18:57:20.255] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\stripped_native_libs\default cache by regenerate. +[2025-07-09T18:57:20.256] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\module.json cache by regenerate. +[2025-07-09T18:57:20.256] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources cache by regenerate. +[2025-07-09T18:57:20.268] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources.index cache by regenerate. +[2025-07-09T18:57:20.269] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\pack.info cache by regenerate. +[2025-07-09T18:57:20.269] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader_out\default\ets cache from map. +[2025-07-09T18:57:20.269] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader\default\pkgContextInfo.json cache by regenerate. +[2025-07-09T18:57:20.269] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\cache\default\default@CompileArkTS\esmodule\release\sourceMaps.map cache by regenerate. +[2025-07-09T18:57:20.269] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\generated\profile\default\BuildProfile.ets cache by regenerate. +[2025-07-09T18:57:20.269] [DEBUG] debug-file - Update task default:default@PackageHap output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\default-default-unsigned.hap cache. +[2025-07-09T18:57:20.270] [DEBUG] debug-file - Update task default:default@PackageHap output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\source_map\default\sourceMaps.map cache. +[2025-07-09T18:57:20.270] [DEBUG] debug-file - Update task default:default@PackageHap output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\mapping\sourceMaps.map cache. +[2025-07-09T18:57:20.270] [DEBUG] debug-file - Incremental task default:default@PackageHap post-execution cost:16 ms . +[2025-07-09T18:57:20.270] [DEBUG] debug-file - Update task default:default@SignHap input file:D:/202076work/鸿蒙专家端测试证书.cer cache by regenerate. +[2025-07-09T18:57:20.270] [DEBUG] debug-file - Update task default:default@SignHap input file:D:/202076work/profile测试Debug.p7b cache by regenerate. +[2025-07-09T18:57:20.270] [DEBUG] debug-file - Update task default:default@SignHap input file:D:/202076work/gdxzExport.p12 cache by regenerate. +[2025-07-09T18:57:20.270] [DEBUG] debug-file - Update task default:default@SignHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\default-default-unsigned.hap cache from map. +[2025-07-09T18:57:20.270] [DEBUG] debug-file - Update task default:default@SignHap output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\default-default-signed.hap cache. +[2025-07-09T18:57:20.270] [DEBUG] debug-file - Incremental task default:default@SignHap post-execution cost:1 ms . +[2025-07-09T18:57:20.272] [DEBUG] debug-file - Update task default:default@CollectDebugSymbol input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\cache\default\default@CompileArkTS\esmodule\release\sourceMaps.map cache from map. +[2025-07-09T18:57:20.272] [DEBUG] debug-file - Update task default:default@CollectDebugSymbol input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\libs\default cache by regenerate. +[2025-07-09T18:57:20.273] [DEBUG] debug-file - Update task default:default@CollectDebugSymbol output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\symbol cache. +[2025-07-09T18:57:20.274] [DEBUG] debug-file - Incremental task default:default@CollectDebugSymbol post-execution cost:4 ms . +[2025-07-09T18:57:20.323] [DEBUG] debug-file - Cleanup worker 14. +[2025-07-09T18:57:20.323] [DEBUG] debug-file - Worker 14 has been cleaned up. +[2025-07-09T18:57:20.323] [DEBUG] debug-file - Current idle worker size: 1. +[2025-07-09T18:57:20.323] [DEBUG] debug-file - Current resident worker size: 2. +[2025-07-09T18:57:20.325] [DEBUG] debug-file - hvigor build process will be closed. +[2025-07-09T18:57:20.325] [DEBUG] debug-file - java daemon socket close code:1000 reason:close by user +[2025-07-09T18:57:20.327] [DEBUG] debug-file - session manager: send message to worker process. +[2025-07-09T18:57:20.328] [DEBUG] debug-file - session manager: send message to worker process. +[2025-07-09T18:57:20.329] [DEBUG] debug-file - watch worker: worker id should be larger than 0. Nothing will be sent to any worker thread. +[2025-07-09T18:57:20.329] [DEBUG] debug-file - watch worker: worker id should be larger than 0. Nothing will be sent to any worker thread. +[2025-07-09T18:57:20.337] [DEBUG] debug-file - worker[14] exits with exit code 1. +[2025-07-09T18:59:41.788] [DEBUG] debug-file - session manager: set active socket. socketId=gypTRjjKgYGOWWE6AAAl +[2025-07-09T18:59:41.804] [DEBUG] debug-file - watch worker: worker id should be larger than 0. Nothing will be sent to any worker thread. +[2025-07-09T18:59:41.847] [DEBUG] debug-file - Hvigor init with startParameters:{ + hvigorfileTypeCheck: false, + parallelExecution: true, + incrementalExecution: true, + printStackTrace: true, + daemon: true, + analyze: 0, + logLevel: Level { level: 20000, levelStr: 'INFO', colour: 'green' } +} +[2025-07-09T18:59:41.886] [DEBUG] debug-file - Cache service initialization finished in 40 ms +[2025-07-09T18:59:41.894] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\hvigorfile.ts +[2025-07-09T18:59:41.897] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:59:41.898] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:59:41.913] [DEBUG] debug-file - Start initialize project's product build option map with build mode release. +[2025-07-09T18:59:41.913] [DEBUG] debug-file - Picking option from product 'default' with build mode 'release'. +[2025-07-09T18:59:41.913] [DEBUG] debug-file - Product 'default' build option: {} +[2025-07-09T18:59:41.913] [DEBUG] debug-file - End initialize project's product build option map with build mode 'release'. +[2025-07-09T18:59:41.914] [DEBUG] debug-file - Product 'default' using build option: { + "debuggable": false, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + } +} in this build. +[2025-07-09T18:59:41.933] [DEBUG] debug-file - Start recording SDK configuration permission data. +[2025-07-09T18:59:41.950] [DEBUG] debug-file - Sdk init in 22 ms +[2025-07-09T18:59:41.975] [DEBUG] debug-file - Project task initialization takes 24 ms +[2025-07-09T18:59:41.975] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:59:41.975] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\hvigorfile.ts +[2025-07-09T18:59:41.975] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\hvigorfile.ts +[2025-07-09T18:59:41.981] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\products\expert\hvigorfile.ts +[2025-07-09T18:59:41.990] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:59:41.990] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:59:42.001] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=default, buildMode=release +[2025-07-09T18:59:42.001] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:59:42.002] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:59:42.002] [DEBUG] debug-file - Module 'default' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + } + } + } +} +[2025-07-09T18:59:42.002] [DEBUG] debug-file - Module 'default' target 'ohosTest' build option: { + "debuggable": true, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "default" +} +[2025-07-09T18:59:42.002] [DEBUG] debug-file - End initialize module-target build option map, moduleName=default +[2025-07-09T18:59:42.002] [DEBUG] debug-file - Module 'default' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + } + } + } +} in this build. +[2025-07-09T18:59:42.006] [DEBUG] debug-file - Module default task initialization takes 2 ms +[2025-07-09T18:59:42.006] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:59:42.006] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\products\expert\hvigorfile.ts +[2025-07-09T18:59:42.006] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\products\expert\hvigorfile.ts +[2025-07-09T18:59:42.010] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\features\mypage\hvigorfile.ts +[2025-07-09T18:59:42.012] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:59:42.012] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:59:42.020] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=mypage, buildMode=release +[2025-07-09T18:59:42.020] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:59:42.020] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:59:42.020] [DEBUG] debug-file - Module 'mypage' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:59:42.020] [DEBUG] debug-file - Module 'mypage' target 'ohosTest' build option: { + "debuggable": true, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "default" +} +[2025-07-09T18:59:42.020] [DEBUG] debug-file - End initialize module-target build option map, moduleName=mypage +[2025-07-09T18:59:42.020] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.022] [DEBUG] debug-file - Module mypage task initialization takes 1 ms +[2025-07-09T18:59:42.022] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:59:42.022] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\features\mypage\hvigorfile.ts +[2025-07-09T18:59:42.023] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\features\mypage\hvigorfile.ts +[2025-07-09T18:59:42.029] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\commons\basic\hvigorfile.ts +[2025-07-09T18:59:42.031] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:59:42.031] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:59:42.037] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=basic, buildMode=release +[2025-07-09T18:59:42.037] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:59:42.037] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:59:42.037] [DEBUG] debug-file - Module 'basic' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:59:42.038] [DEBUG] debug-file - Module 'basic' target 'ohosTest' build option: { + "debuggable": true, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "default" +} +[2025-07-09T18:59:42.038] [DEBUG] debug-file - End initialize module-target build option map, moduleName=basic +[2025-07-09T18:59:42.038] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.040] [DEBUG] debug-file - Module basic task initialization takes 1 ms +[2025-07-09T18:59:42.041] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:59:42.041] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\commons\basic\hvigorfile.ts +[2025-07-09T18:59:42.041] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\commons\basic\hvigorfile.ts +[2025-07-09T18:59:42.049] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\features\Home\hvigorfile.ts +[2025-07-09T18:59:42.052] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:59:42.052] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:59:42.057] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=Home, buildMode=release +[2025-07-09T18:59:42.057] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:59:42.058] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:59:42.058] [DEBUG] debug-file - Module 'Home' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:59:42.058] [DEBUG] debug-file - Module 'Home' target 'ohosTest' build option: { + "debuggable": true, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "default" +} +[2025-07-09T18:59:42.058] [DEBUG] debug-file - End initialize module-target build option map, moduleName=Home +[2025-07-09T18:59:42.058] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.060] [DEBUG] debug-file - Module Home task initialization takes 1 ms +[2025-07-09T18:59:42.060] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:59:42.060] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\features\Home\hvigorfile.ts +[2025-07-09T18:59:42.060] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\features\Home\hvigorfile.ts +[2025-07-09T18:59:42.065] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\features\register\hvigorfile.ts +[2025-07-09T18:59:42.068] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:59:42.069] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:59:42.073] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=register, buildMode=release +[2025-07-09T18:59:42.073] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:59:42.073] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:59:42.073] [DEBUG] debug-file - Module 'register' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:59:42.073] [DEBUG] debug-file - Module 'register' target 'ohosTest' build option: { + "debuggable": true, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "default" +} +[2025-07-09T18:59:42.073] [DEBUG] debug-file - End initialize module-target build option map, moduleName=register +[2025-07-09T18:59:42.073] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.075] [DEBUG] debug-file - Module register task initialization takes 1 ms +[2025-07-09T18:59:42.075] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:59:42.075] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\features\register\hvigorfile.ts +[2025-07-09T18:59:42.075] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\features\register\hvigorfile.ts +[2025-07-09T18:59:42.081] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\polyv\hvigorfile.ts +[2025-07-09T18:59:42.084] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:59:42.084] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:59:42.087] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=polyv, buildMode=release +[2025-07-09T18:59:42.087] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:59:42.087] [DEBUG] debug-file - Module 'polyv' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} +[2025-07-09T18:59:42.087] [DEBUG] debug-file - End initialize module-target build option map, moduleName=polyv +[2025-07-09T18:59:42.087] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.089] [DEBUG] debug-file - Module polyv task initialization takes 1 ms +[2025-07-09T18:59:42.089] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:59:42.089] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\polyv\hvigorfile.ts +[2025-07-09T18:59:42.089] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\polyv\hvigorfile.ts +[2025-07-09T18:59:42.093] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\scene_single_video\hvigorfile.ts +[2025-07-09T18:59:42.095] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:59:42.095] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:59:42.098] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=scene_single_video, buildMode=release +[2025-07-09T18:59:42.098] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:59:42.098] [DEBUG] debug-file - Module 'scene_single_video' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} +[2025-07-09T18:59:42.098] [DEBUG] debug-file - End initialize module-target build option map, moduleName=scene_single_video +[2025-07-09T18:59:42.098] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.100] [DEBUG] debug-file - Module scene_single_video task initialization takes 1 ms +[2025-07-09T18:59:42.100] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:59:42.100] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\scene_single_video\hvigorfile.ts +[2025-07-09T18:59:42.100] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\scene_single_video\hvigorfile.ts +[2025-07-09T18:59:42.104] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\corekit\hvigorfile.ts +[2025-07-09T18:59:42.106] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:59:42.107] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:59:42.110] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=corekit, buildMode=release +[2025-07-09T18:59:42.110] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:59:42.110] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:59:42.110] [DEBUG] debug-file - Module 'corekit' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:59:42.110] [DEBUG] debug-file - Module 'corekit' target 'ohosTest' build option: { + "debuggable": true, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "default" +} +[2025-07-09T18:59:42.110] [DEBUG] debug-file - End initialize module-target build option map, moduleName=corekit +[2025-07-09T18:59:42.110] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.112] [DEBUG] debug-file - Module corekit task initialization takes 1 ms +[2025-07-09T18:59:42.112] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:59:42.112] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\corekit\hvigorfile.ts +[2025-07-09T18:59:42.112] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\corekit\hvigorfile.ts +[2025-07-09T18:59:42.116] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\chatkit\hvigorfile.ts +[2025-07-09T18:59:42.119] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:59:42.119] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:59:42.122] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=chatkit, buildMode=release +[2025-07-09T18:59:42.122] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:59:42.123] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:59:42.123] [DEBUG] debug-file - Module 'chatkit' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:59:42.123] [DEBUG] debug-file - Module 'chatkit' target 'ohosTest' build option: { + "debuggable": true, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "default" +} +[2025-07-09T18:59:42.123] [DEBUG] debug-file - End initialize module-target build option map, moduleName=chatkit +[2025-07-09T18:59:42.123] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.125] [DEBUG] debug-file - Module chatkit task initialization takes 1 ms +[2025-07-09T18:59:42.125] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:59:42.125] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\chatkit\hvigorfile.ts +[2025-07-09T18:59:42.125] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\chatkit\hvigorfile.ts +[2025-07-09T18:59:42.129] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\hvigorfile.ts +[2025-07-09T18:59:42.131] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:59:42.131] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:59:42.134] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=chatkit_ui, buildMode=release +[2025-07-09T18:59:42.134] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:59:42.135] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:59:42.135] [DEBUG] debug-file - End initialize module-target build option map, moduleName=chatkit_ui +[2025-07-09T18:59:42.135] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.136] [DEBUG] debug-file - Module chatkit_ui task initialization takes 1 ms +[2025-07-09T18:59:42.136] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:59:42.137] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\hvigorfile.ts +[2025-07-09T18:59:42.137] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\hvigorfile.ts +[2025-07-09T18:59:42.141] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\features\netease\hvigorfile.ts +[2025-07-09T18:59:42.143] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:59:42.143] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:59:42.147] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=netease, buildMode=release +[2025-07-09T18:59:42.147] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:59:42.147] [DEBUG] debug-file - Target 'ohosTest' config: {} +[2025-07-09T18:59:42.147] [DEBUG] debug-file - Module 'netease' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:59:42.147] [DEBUG] debug-file - Module 'netease' target 'ohosTest' build option: { + "debuggable": true, + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "default" +} +[2025-07-09T18:59:42.147] [DEBUG] debug-file - End initialize module-target build option map, moduleName=netease +[2025-07-09T18:59:42.147] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.149] [DEBUG] debug-file - Module netease task initialization takes 1 ms +[2025-07-09T18:59:42.149] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:59:42.149] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\features\netease\hvigorfile.ts +[2025-07-09T18:59:42.149] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\features\netease\hvigorfile.ts +[2025-07-09T18:59:42.153] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\hvigorfile.ts +[2025-07-09T18:59:42.155] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:59:42.155] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:59:42.158] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=conversationkit_ui, buildMode=release +[2025-07-09T18:59:42.158] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:59:42.159] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:59:42.159] [DEBUG] debug-file - End initialize module-target build option map, moduleName=conversationkit_ui +[2025-07-09T18:59:42.159] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.161] [DEBUG] debug-file - Module conversationkit_ui task initialization takes 1 ms +[2025-07-09T18:59:42.161] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:59:42.161] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\hvigorfile.ts +[2025-07-09T18:59:42.161] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\hvigorfile.ts +[2025-07-09T18:59:42.166] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\common\hvigorfile.ts +[2025-07-09T18:59:42.168] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:59:42.168] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:59:42.171] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=common, buildMode=release +[2025-07-09T18:59:42.172] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:59:42.172] [DEBUG] debug-file - Module 'common' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:59:42.172] [DEBUG] debug-file - End initialize module-target build option map, moduleName=common +[2025-07-09T18:59:42.172] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.173] [DEBUG] debug-file - Module common task initialization takes 1 ms +[2025-07-09T18:59:42.173] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:59:42.174] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\common\hvigorfile.ts +[2025-07-09T18:59:42.174] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\common\hvigorfile.ts +[2025-07-09T18:59:42.178] [DEBUG] debug-file - hvigorfile, resolving D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\hvigorfile.ts +[2025-07-09T18:59:42.180] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-07-09T18:59:42.180] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-07-09T18:59:42.184] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=localconversationkit_ui, buildMode=release +[2025-07-09T18:59:42.184] [DEBUG] debug-file - Target 'default' config: {} +[2025-07-09T18:59:42.184] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} +[2025-07-09T18:59:42.184] [DEBUG] debug-file - End initialize module-target build option map, moduleName=localconversationkit_ui +[2025-07-09T18:59:42.184] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.186] [DEBUG] debug-file - Module localconversationkit_ui task initialization takes 1 ms +[2025-07-09T18:59:42.186] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-07-09T18:59:42.186] [DEBUG] debug-file - hvigorfile, no custom plugins were found in D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\hvigorfile.ts +[2025-07-09T18:59:42.186] [DEBUG] debug-file - hvigorfile, resolve finished D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\hvigorfile.ts +[2025-07-09T18:59:42.206] [DEBUG] debug-file - hvigorfile, resolve hvigorfile dependencies in 19 ms +[2025-07-09T18:59:42.207] [DEBUG] debug-file - project has submodules:default,mypage,basic,Home,register,polyv,scene_single_video,corekit,chatkit,chatkit_ui,netease,conversationkit_ui,common,localconversationkit_ui +[2025-07-09T18:59:42.207] [DEBUG] debug-file - module:mypage no need to execute packageHap +[2025-07-09T18:59:42.207] [DEBUG] debug-file - module:basic no need to execute packageHap +[2025-07-09T18:59:42.207] [DEBUG] debug-file - module:Home no need to execute packageHap +[2025-07-09T18:59:42.207] [DEBUG] debug-file - module:register no need to execute packageHap +[2025-07-09T18:59:42.207] [DEBUG] debug-file - module:polyv no need to execute packageHap +[2025-07-09T18:59:42.207] [DEBUG] debug-file - module:scene_single_video no need to execute packageHap +[2025-07-09T18:59:42.207] [DEBUG] debug-file - module:corekit no need to execute packageHap +[2025-07-09T18:59:42.207] [DEBUG] debug-file - module:chatkit no need to execute packageHap +[2025-07-09T18:59:42.207] [DEBUG] debug-file - module:chatkit_ui no need to execute packageHap +[2025-07-09T18:59:42.207] [DEBUG] debug-file - module:netease no need to execute packageHap +[2025-07-09T18:59:42.207] [DEBUG] debug-file - module:conversationkit_ui no need to execute packageHap +[2025-07-09T18:59:42.208] [DEBUG] debug-file - module:common no need to execute packageHap +[2025-07-09T18:59:42.208] [DEBUG] debug-file - module:localconversationkit_ui no need to execute packageHap +[2025-07-09T18:59:42.209] [DEBUG] debug-file - start to load updatedOhPackageInfo to the disk +[2025-07-09T18:59:42.223] [DEBUG] debug-file - load to the disk finished +[2025-07-09T18:59:42.225] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:59:42.239] [DEBUG] debug-file - Module harmony Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:59:42.239] [DEBUG] debug-file - Module harmony's total dependency: 3 +[2025-07-09T18:59:42.241] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:59:42.496] [DEBUG] debug-file - Module default Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\commons\basic,D:\202076work\hongmeng\newExpert\harmony\features\mypage,D:\202076work\hongmeng\newExpert\harmony\features\Home,D:\202076work\hongmeng\newExpert\harmony\features\register,D:\202076work\hongmeng\newExpert\harmony\scene_single_video,D:\202076work\hongmeng\newExpert\harmony\polyv,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk@2.5.0\oh_modules\@polyvharmony\media-player-sdk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-ijk@2.5.0\oh_modules\@polyvharmony\media-player-core-ijk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\oh_modules\@polyvharmony\media-player-sdk-addon-cache-down,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-api@1.0.2\oh_modules\@polyvharmony\httpdns-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-impl-local@1.0.2\oh_modules\@polyvharmony\httpdns-impl-local,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-impl-ali@1.0.2\oh_modules\@polyvharmony\httpdns-impl-ali,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+localconversation@10.9.10\oh_modules\@nimsdk\localconversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base,D:\202076work\hongmeng\newExpert\harmony\corekit,D:\202076work\hongmeng\newExpert\harmony\chatkit,D:\202076work\hongmeng\newExpert\harmony\features\netease,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-business@2.5.0\oh_modules\@polyvharmony\media-player-business,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-api@2.5.0\oh_modules\@polyvharmony\media-player-core-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-foundation@2.5.0\oh_modules\@polyvharmony\media-player-foundation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+httpdns@1.1.1\oh_modules\@aliyun\httpdns,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\class-transformer@0.5.1\oh_modules\class-transformer,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata,D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui,D:\202076work\hongmeng\newExpert\harmony\chatkit_ui,D:\202076work\hongmeng\newExpert\harmony\common,D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+logger@1.0.2\oh_modules\@aliyun\logger,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+error@1.0.2\oh_modules\@aliyun\error,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\pako@2.1.0\oh_modules\pako,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\base64-js@1.5.1\oh_modules\base64-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm +[2025-07-09T18:59:42.496] [DEBUG] debug-file - Module default's total dependency: 43 +[2025-07-09T18:59:42.499] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:59:42.500] [DEBUG] debug-file - Module mypage Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\commons\basic,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:59:42.500] [DEBUG] debug-file - Module mypage's total dependency: 4 +[2025-07-09T18:59:42.502] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:59:42.503] [DEBUG] debug-file - Module basic Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:59:42.503] [DEBUG] debug-file - Module basic's total dependency: 3 +[2025-07-09T18:59:42.505] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:59:42.506] [DEBUG] debug-file - Module Home Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\commons\basic,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk@2.5.0\oh_modules\@polyvharmony\media-player-sdk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\oh_modules\@polyvharmony\media-player-sdk-addon-cache-down,D:\202076work\hongmeng\newExpert\harmony\scene_single_video,D:\202076work\hongmeng\newExpert\harmony\polyv,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-business@2.5.0\oh_modules\@polyvharmony\media-player-business,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-api@2.5.0\oh_modules\@polyvharmony\media-player-core-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-foundation@2.5.0\oh_modules\@polyvharmony\media-player-foundation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-ijk@2.5.0\oh_modules\@polyvharmony\media-player-core-ijk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-api@1.0.2\oh_modules\@polyvharmony\httpdns-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\pako@2.1.0\oh_modules\pako,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\base64-js@1.5.1\oh_modules\base64-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:59:42.506] [DEBUG] debug-file - Module Home's total dependency: 16 +[2025-07-09T18:59:42.508] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:59:42.509] [DEBUG] debug-file - Module register Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\commons\basic,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:59:42.509] [DEBUG] debug-file - Module register's total dependency: 4 +[2025-07-09T18:59:42.511] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:59:42.512] [DEBUG] debug-file - Module polyv Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk@2.5.0\oh_modules\@polyvharmony\media-player-sdk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\oh_modules\@polyvharmony\media-player-sdk-addon-cache-down,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-business@2.5.0\oh_modules\@polyvharmony\media-player-business,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-api@2.5.0\oh_modules\@polyvharmony\media-player-core-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-foundation@2.5.0\oh_modules\@polyvharmony\media-player-foundation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-ijk@2.5.0\oh_modules\@polyvharmony\media-player-core-ijk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-api@1.0.2\oh_modules\@polyvharmony\httpdns-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\pako@2.1.0\oh_modules\pako,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\base64-js@1.5.1\oh_modules\base64-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:59:42.512] [DEBUG] debug-file - Module polyv's total dependency: 13 +[2025-07-09T18:59:42.513] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:59:42.515] [DEBUG] debug-file - Module scene_single_video Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\polyv,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk@2.5.0\oh_modules\@polyvharmony\media-player-sdk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\oh_modules\@polyvharmony\media-player-sdk-addon-cache-down,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-business@2.5.0\oh_modules\@polyvharmony\media-player-business,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-api@2.5.0\oh_modules\@polyvharmony\media-player-core-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-foundation@2.5.0\oh_modules\@polyvharmony\media-player-foundation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-ijk@2.5.0\oh_modules\@polyvharmony\media-player-core-ijk,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-api@1.0.2\oh_modules\@polyvharmony\httpdns-api,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\pako@2.1.0\oh_modules\pako,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\base64-js@1.5.1\oh_modules\base64-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:59:42.515] [DEBUG] debug-file - Module scene_single_video's total dependency: 14 +[2025-07-09T18:59:42.516] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:59:42.517] [DEBUG] debug-file - Module corekit Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:59:42.517] [DEBUG] debug-file - Module corekit's total dependency: 3 +[2025-07-09T18:59:42.518] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:59:42.520] [DEBUG] debug-file - Module chatkit Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base,D:\202076work\hongmeng\newExpert\harmony\corekit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\class-transformer@0.5.1\oh_modules\class-transformer,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm +[2025-07-09T18:59:42.520] [DEBUG] debug-file - Module chatkit's total dependency: 13 +[2025-07-09T18:59:42.522] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:59:42.524] [DEBUG] debug-file - Module chatkit_ui Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\common,D:\202076work\hongmeng\newExpert\harmony\chatkit,D:\202076work\hongmeng\newExpert\harmony\corekit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\class-transformer@0.5.1\oh_modules\class-transformer,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown,D:\202076work\hongmeng\newExpert\harmony\commons\basic,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm +[2025-07-09T18:59:42.524] [DEBUG] debug-file - Module chatkit_ui's total dependency: 18 +[2025-07-09T18:59:42.526] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:59:42.528] [DEBUG] debug-file - Module netease Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\commons\basic,D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui,D:\202076work\hongmeng\newExpert\harmony\chatkit_ui,D:\202076work\hongmeng\newExpert\harmony\chatkit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base,D:\202076work\hongmeng\newExpert\harmony\common,D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui,D:\202076work\hongmeng\newExpert\harmony\corekit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\class-transformer@0.5.1\oh_modules\class-transformer,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm +[2025-07-09T18:59:42.528] [DEBUG] debug-file - Module netease's total dependency: 21 +[2025-07-09T18:59:42.529] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:59:42.531] [DEBUG] debug-file - Module conversationkit_ui Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\common,D:\202076work\hongmeng\newExpert\harmony\chatkit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim,D:\202076work\hongmeng\newExpert\harmony\corekit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\class-transformer@0.5.1\oh_modules\class-transformer,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm +[2025-07-09T18:59:42.531] [DEBUG] debug-file - Module conversationkit_ui's total dependency: 16 +[2025-07-09T18:59:42.532] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:59:42.533] [DEBUG] debug-file - Module common Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata +[2025-07-09T18:59:42.533] [DEBUG] debug-file - Module common's total dependency: 4 +[2025-07-09T18:59:42.535] [DEBUG] debug-file - Start to initialize dependency information. +[2025-07-09T18:59:42.536] [DEBUG] debug-file - Module localconversationkit_ui Collected Dependency: D:\202076work\hongmeng\newExpert\harmony\common,D:\202076work\hongmeng\newExpert\harmony\chatkit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim,D:\202076work\hongmeng\newExpert\harmony\corekit,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\class-transformer@0.5.1\oh_modules\class-transformer,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\reflect-metadata@0.2.1\oh_modules\reflect-metadata,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js,D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm +[2025-07-09T18:59:42.536] [DEBUG] debug-file - Module localconversationkit_ui's total dependency: 16 +[2025-07-09T18:59:42.538] [DEBUG] debug-file - Configuration phase cost:649 ms +[2025-07-09T18:59:42.543] [DEBUG] debug-file - Configuration task cost before running: 736 ms +[2025-07-09T18:59:42.544] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:42.544] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:42.547] [DEBUG] debug-file - Executing task :default:default@PreBuild +[2025-07-09T18:59:42.561] [DEBUG] debug-file - Incremental task default:default@PreBuild pre-execution cost: 3 ms . +[2025-07-09T18:59:42.561] [DEBUG] debug-file - default : default@PreBuild cost memory 2.0215682983398438 +[2025-07-09T18:59:42.562] [INFO] debug-file - UP-TO-DATE :default:default@PreBuild... +[2025-07-09T18:59:42.563] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:59:42.563] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:59:42.564] [DEBUG] debug-file - Executing task :basic:default@PreBuild +[2025-07-09T18:59:42.566] [DEBUG] debug-file - Incremental task basic:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:59:42.566] [DEBUG] debug-file - basic : default@PreBuild cost memory 0.23053741455078125 +[2025-07-09T18:59:42.567] [INFO] debug-file - UP-TO-DATE :basic:default@PreBuild... +[2025-07-09T18:59:42.568] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:59:42.568] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:59:42.569] [DEBUG] debug-file - Executing task :mypage:default@PreBuild +[2025-07-09T18:59:42.571] [DEBUG] debug-file - Incremental task mypage:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:59:42.571] [DEBUG] debug-file - mypage : default@PreBuild cost memory 0.23506927490234375 +[2025-07-09T18:59:42.572] [INFO] debug-file - UP-TO-DATE :mypage:default@PreBuild... +[2025-07-09T18:59:42.573] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:59:42.573] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:59:42.574] [DEBUG] debug-file - Executing task :Home:default@PreBuild +[2025-07-09T18:59:42.577] [DEBUG] debug-file - Incremental task Home:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:59:42.577] [DEBUG] debug-file - Home : default@PreBuild cost memory 0.24678802490234375 +[2025-07-09T18:59:42.577] [INFO] debug-file - UP-TO-DATE :Home:default@PreBuild... +[2025-07-09T18:59:42.578] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:59:42.578] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:59:42.579] [DEBUG] debug-file - Executing task :scene_single_video:default@PreBuild +[2025-07-09T18:59:42.581] [DEBUG] debug-file - Incremental task scene_single_video:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:59:42.581] [DEBUG] debug-file - scene_single_video : default@PreBuild cost memory 0.235748291015625 +[2025-07-09T18:59:42.582] [INFO] debug-file - UP-TO-DATE :scene_single_video:default@PreBuild... +[2025-07-09T18:59:42.584] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:59:42.584] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:59:42.585] [DEBUG] debug-file - Executing task :polyv:default@PreBuild +[2025-07-09T18:59:42.587] [DEBUG] debug-file - Incremental task polyv:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:59:42.587] [DEBUG] debug-file - polyv : default@PreBuild cost memory 0.23267364501953125 +[2025-07-09T18:59:42.587] [INFO] debug-file - UP-TO-DATE :polyv:default@PreBuild... +[2025-07-09T18:59:42.588] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:59:42.588] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:59:42.589] [DEBUG] debug-file - Executing task :register:default@PreBuild +[2025-07-09T18:59:42.591] [DEBUG] debug-file - Incremental task register:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:59:42.592] [DEBUG] debug-file - register : default@PreBuild cost memory 0.2359466552734375 +[2025-07-09T18:59:42.592] [INFO] debug-file - UP-TO-DATE :register:default@PreBuild... +[2025-07-09T18:59:42.593] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:59:42.593] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:59:42.594] [DEBUG] debug-file - Executing task :corekit:default@PreBuild +[2025-07-09T18:59:42.596] [DEBUG] debug-file - Incremental task corekit:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:59:42.596] [DEBUG] debug-file - corekit : default@PreBuild cost memory 0.23325347900390625 +[2025-07-09T18:59:42.597] [INFO] debug-file - UP-TO-DATE :corekit:default@PreBuild... +[2025-07-09T18:59:42.598] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:59:42.598] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:59:42.599] [DEBUG] debug-file - Executing task :chatkit:default@PreBuild +[2025-07-09T18:59:42.601] [DEBUG] debug-file - Incremental task chatkit:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:59:42.601] [DEBUG] debug-file - chatkit : default@PreBuild cost memory 0.24828338623046875 +[2025-07-09T18:59:42.602] [INFO] debug-file - UP-TO-DATE :chatkit:default@PreBuild... +[2025-07-09T18:59:42.603] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:59:42.603] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:59:42.604] [DEBUG] debug-file - Executing task :netease:default@PreBuild +[2025-07-09T18:59:42.608] [DEBUG] debug-file - Incremental task netease:default@PreBuild pre-execution cost: 3 ms . +[2025-07-09T18:59:42.608] [DEBUG] debug-file - netease : default@PreBuild cost memory -13.446998596191406 +[2025-07-09T18:59:42.609] [INFO] debug-file - UP-TO-DATE :netease:default@PreBuild... +[2025-07-09T18:59:42.610] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:59:42.610] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:59:42.611] [DEBUG] debug-file - Executing task :conversationkit_ui:default@PreBuild +[2025-07-09T18:59:42.613] [DEBUG] debug-file - Incremental task conversationkit_ui:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:59:42.613] [DEBUG] debug-file - conversationkit_ui : default@PreBuild cost memory 0.25730133056640625 +[2025-07-09T18:59:42.614] [INFO] debug-file - UP-TO-DATE :conversationkit_ui:default@PreBuild... +[2025-07-09T18:59:42.615] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:59:42.615] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:59:42.616] [DEBUG] debug-file - Executing task :common:default@PreBuild +[2025-07-09T18:59:42.618] [DEBUG] debug-file - Incremental task common:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:59:42.618] [DEBUG] debug-file - common : default@PreBuild cost memory 0.2445068359375 +[2025-07-09T18:59:42.619] [INFO] debug-file - UP-TO-DATE :common:default@PreBuild... +[2025-07-09T18:59:42.620] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:59:42.620] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:59:42.621] [DEBUG] debug-file - Executing task :chatkit_ui:default@PreBuild +[2025-07-09T18:59:42.624] [DEBUG] debug-file - Incremental task chatkit_ui:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:59:42.624] [DEBUG] debug-file - chatkit_ui : default@PreBuild cost memory 0.29277801513671875 +[2025-07-09T18:59:42.624] [INFO] debug-file - UP-TO-DATE :chatkit_ui:default@PreBuild... +[2025-07-09T18:59:42.625] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:59:42.625] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:59:42.626] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@PreBuild +[2025-07-09T18:59:42.628] [DEBUG] debug-file - Incremental task localconversationkit_ui:default@PreBuild pre-execution cost: 2 ms . +[2025-07-09T18:59:42.628] [DEBUG] debug-file - localconversationkit_ui : default@PreBuild cost memory 0.25600433349609375 +[2025-07-09T18:59:42.629] [INFO] debug-file - UP-TO-DATE :localconversationkit_ui:default@PreBuild... +[2025-07-09T18:59:42.631] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:42.631] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:42.631] [DEBUG] debug-file - Executing task :default:default@CreateModuleInfo +[2025-07-09T18:59:42.632] [DEBUG] debug-file - Task 'default:default@CreateModuleInfo' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:42.632] [DEBUG] debug-file - default : default@CreateModuleInfo cost memory 0.0607757568359375 +[2025-07-09T18:59:42.632] [DEBUG] debug-file - runTaskFromQueue task cost before running: 825 ms +[2025-07-09T18:59:42.632] [INFO] debug-file - Finished :default:default@CreateModuleInfo... after 1 ms +[2025-07-09T18:59:42.634] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:42.634] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:42.637] [DEBUG] debug-file - Executing task :default:default@GenerateMetadata +[2025-07-09T18:59:42.638] [DEBUG] debug-file - Task 'default:default@GenerateMetadata' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:42.638] [DEBUG] debug-file - Incremental task default:default@GenerateMetadata pre-execution cost: 1 ms . +[2025-07-09T18:59:42.638] [DEBUG] debug-file - default : default@GenerateMetadata cost memory 0.09616851806640625 +[2025-07-09T18:59:42.638] [INFO] debug-file - UP-TO-DATE :default:default@GenerateMetadata... +[2025-07-09T18:59:42.639] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:42.639] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:42.640] [DEBUG] debug-file - Executing task :default:default@PreCheckSyscap +[2025-07-09T18:59:42.640] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:42.640] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:42.640] [DEBUG] debug-file - default : default@PreCheckSyscap cost memory 0.069183349609375 +[2025-07-09T18:59:42.640] [DEBUG] debug-file - runTaskFromQueue task cost before running: 833 ms +[2025-07-09T18:59:42.640] [INFO] debug-file - Finished :default:default@PreCheckSyscap... after 1 ms +[2025-07-09T18:59:42.641] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:42.641] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:42.656] [DEBUG] debug-file - Executing task :default:default@GeneratePkgContextInfo +[2025-07-09T18:59:42.656] [DEBUG] debug-file - Task 'default:default@GeneratePkgContextInfo' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:42.657] [DEBUG] debug-file - Incremental task default:default@GeneratePkgContextInfo pre-execution cost: 1 ms . +[2025-07-09T18:59:42.657] [DEBUG] debug-file - default : default@GeneratePkgContextInfo cost memory 0.20897674560546875 +[2025-07-09T18:59:42.657] [INFO] debug-file - UP-TO-DATE :default:default@GeneratePkgContextInfo... +[2025-07-09T18:59:42.659] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:42.659] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:42.660] [DEBUG] debug-file - Executing task :default:default@ProcessIntegratedHsp +[2025-07-09T18:59:42.661] [DEBUG] debug-file - default:default@ProcessIntegratedHsp is not up-to-date, since the output file 'D:\202076work\hongmeng\newExpert\harmony\build\cache\default\integrated_hsp\integratedHspCache.json' does not exist. +[2025-07-09T18:59:42.661] [DEBUG] debug-file - Incremental task default:default@ProcessIntegratedHsp pre-execution cost: 1 ms . +[2025-07-09T18:59:42.661] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:42.661] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:42.661] [DEBUG] debug-file - default : default@ProcessIntegratedHsp cost memory 0.14954376220703125 +[2025-07-09T18:59:42.661] [DEBUG] debug-file - runTaskFromQueue task cost before running: 854 ms +[2025-07-09T18:59:42.662] [INFO] debug-file - Finished :default:default@ProcessIntegratedHsp... after 2 ms +[2025-07-09T18:59:42.663] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:59:42.663] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:59:42.663] [DEBUG] debug-file - Executing task :basic:default@CreateHarBuildProfile +[2025-07-09T18:59:42.663] [DEBUG] debug-file - Task 'basic:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:42.664] [DEBUG] debug-file - Incremental task basic:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:59:42.664] [DEBUG] debug-file - basic : default@CreateHarBuildProfile cost memory 0.07927703857421875 +[2025-07-09T18:59:42.664] [INFO] debug-file - UP-TO-DATE :basic:default@CreateHarBuildProfile... +[2025-07-09T18:59:42.665] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:59:42.665] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:59:42.665] [DEBUG] debug-file - Executing task :basic:default@ConfigureCmake +[2025-07-09T18:59:42.666] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:59:42.666] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:59:42.666] [DEBUG] debug-file - basic : default@ConfigureCmake cost memory 0.036224365234375 +[2025-07-09T18:59:42.666] [DEBUG] debug-file - runTaskFromQueue task cost before running: 858 ms +[2025-07-09T18:59:42.666] [INFO] debug-file - Finished :basic:default@ConfigureCmake... after 1 ms +[2025-07-09T18:59:42.667] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:59:42.667] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:59:42.667] [DEBUG] debug-file - Executing task :basic:default@MergeProfile +[2025-07-09T18:59:42.669] [DEBUG] debug-file - Incremental task basic:default@MergeProfile pre-execution cost: 1 ms . +[2025-07-09T18:59:42.669] [DEBUG] debug-file - basic : default@MergeProfile cost memory 0.15254974365234375 +[2025-07-09T18:59:42.669] [INFO] debug-file - UP-TO-DATE :basic:default@MergeProfile... +[2025-07-09T18:59:42.670] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:59:42.670] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:59:42.671] [DEBUG] debug-file - Executing task :polyv:default@CreateHarBuildProfile +[2025-07-09T18:59:42.671] [DEBUG] debug-file - Task 'polyv:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:42.671] [DEBUG] debug-file - Incremental task polyv:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:59:42.671] [DEBUG] debug-file - polyv : default@CreateHarBuildProfile cost memory 0.07953643798828125 +[2025-07-09T18:59:42.671] [INFO] debug-file - UP-TO-DATE :polyv:default@CreateHarBuildProfile... +[2025-07-09T18:59:42.672] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:59:42.673] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:59:42.673] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-business. +[2025-07-09T18:59:42.674] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-core-ijk. +[2025-07-09T18:59:42.674] [DEBUG] debug-file - Executing task :polyv:default@ConfigureCmake +[2025-07-09T18:59:42.674] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:59:42.674] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:59:42.674] [DEBUG] debug-file - polyv : default@ConfigureCmake cost memory 0.039306640625 +[2025-07-09T18:59:42.674] [DEBUG] debug-file - runTaskFromQueue task cost before running: 867 ms +[2025-07-09T18:59:42.674] [INFO] debug-file - Finished :polyv:default@ConfigureCmake... after 1 ms +[2025-07-09T18:59:42.676] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:59:42.676] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:59:42.677] [DEBUG] debug-file - Executing task :polyv:default@MergeProfile +[2025-07-09T18:59:42.681] [DEBUG] debug-file - Incremental task polyv:default@MergeProfile pre-execution cost: 2 ms . +[2025-07-09T18:59:42.681] [DEBUG] debug-file - polyv : default@MergeProfile cost memory 0.38417816162109375 +[2025-07-09T18:59:42.681] [INFO] debug-file - UP-TO-DATE :polyv:default@MergeProfile... +[2025-07-09T18:59:42.682] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:59:42.682] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:59:42.682] [DEBUG] debug-file - Executing task :corekit:default@CreateHarBuildProfile +[2025-07-09T18:59:42.683] [DEBUG] debug-file - Task 'corekit:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:42.683] [DEBUG] debug-file - Incremental task corekit:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:59:42.683] [DEBUG] debug-file - corekit : default@CreateHarBuildProfile cost memory 0.07866668701171875 +[2025-07-09T18:59:42.683] [INFO] debug-file - UP-TO-DATE :corekit:default@CreateHarBuildProfile... +[2025-07-09T18:59:42.684] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:59:42.684] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:59:42.684] [DEBUG] debug-file - Executing task :corekit:default@ConfigureCmake +[2025-07-09T18:59:42.685] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:59:42.685] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:59:42.685] [DEBUG] debug-file - corekit : default@ConfigureCmake cost memory 0.0372772216796875 +[2025-07-09T18:59:42.685] [DEBUG] debug-file - runTaskFromQueue task cost before running: 877 ms +[2025-07-09T18:59:42.685] [INFO] debug-file - Finished :corekit:default@ConfigureCmake... after 1 ms +[2025-07-09T18:59:42.686] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:59:42.686] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:59:42.686] [DEBUG] debug-file - Executing task :corekit:default@MergeProfile +[2025-07-09T18:59:42.687] [DEBUG] debug-file - Incremental task corekit:default@MergeProfile pre-execution cost: 1 ms . +[2025-07-09T18:59:42.687] [DEBUG] debug-file - corekit : default@MergeProfile cost memory 0.15506744384765625 +[2025-07-09T18:59:42.688] [INFO] debug-file - UP-TO-DATE :corekit:default@MergeProfile... +[2025-07-09T18:59:42.689] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:59:42.689] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:59:42.689] [DEBUG] debug-file - Executing task :common:default@CreateHarBuildProfile +[2025-07-09T18:59:42.689] [DEBUG] debug-file - Task 'common:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:42.690] [DEBUG] debug-file - Incremental task common:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:59:42.690] [DEBUG] debug-file - common : default@CreateHarBuildProfile cost memory 0.07880401611328125 +[2025-07-09T18:59:42.690] [INFO] debug-file - UP-TO-DATE :common:default@CreateHarBuildProfile... +[2025-07-09T18:59:42.691] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:59:42.691] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:59:42.691] [DEBUG] debug-file - Executing task :common:default@ConfigureCmake +[2025-07-09T18:59:42.691] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:59:42.692] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:59:42.692] [DEBUG] debug-file - common : default@ConfigureCmake cost memory 0.0387725830078125 +[2025-07-09T18:59:42.692] [DEBUG] debug-file - runTaskFromQueue task cost before running: 884 ms +[2025-07-09T18:59:42.692] [INFO] debug-file - Finished :common:default@ConfigureCmake... after 1 ms +[2025-07-09T18:59:42.693] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:59:42.693] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:59:42.693] [DEBUG] debug-file - Executing task :common:default@MergeProfile +[2025-07-09T18:59:42.695] [DEBUG] debug-file - Incremental task common:default@MergeProfile pre-execution cost: 1 ms . +[2025-07-09T18:59:42.695] [DEBUG] debug-file - common : default@MergeProfile cost memory 0.1806488037109375 +[2025-07-09T18:59:42.695] [INFO] debug-file - UP-TO-DATE :common:default@MergeProfile... +[2025-07-09T18:59:42.696] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:42.696] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:42.697] [DEBUG] debug-file - Executing task :default:default@SyscapTransform +[2025-07-09T18:59:42.697] [DEBUG] debug-file - File: 'D:\202076work\hongmeng\newExpert\harmony\products\expert\src\main\syscap.json' from 'sysCapJsonPath' is not exists, just ignore. +[2025-07-09T18:59:42.698] [DEBUG] debug-file - Task 'default:default@SyscapTransform' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:42.698] [DEBUG] debug-file - default:default@SyscapTransform is not up-to-date, since the output file 'D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\syscap\default\rpcid.sc' does not exist. +[2025-07-09T18:59:42.698] [DEBUG] debug-file - Incremental task default:default@SyscapTransform pre-execution cost: 1 ms . +[2025-07-09T18:59:42.698] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:42.698] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:42.698] [DEBUG] debug-file - default : default@SyscapTransform cost memory 0.18300628662109375 +[2025-07-09T18:59:42.698] [DEBUG] debug-file - runTaskFromQueue task cost before running: 891 ms +[2025-07-09T18:59:42.698] [INFO] debug-file - Finished :default:default@SyscapTransform... after 2 ms +[2025-07-09T18:59:42.700] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:42.700] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:42.701] [DEBUG] debug-file - Executing task :default:default@ProcessRouterMap +[2025-07-09T18:59:42.708] [DEBUG] debug-file - Incremental task default:default@ProcessRouterMap pre-execution cost: 4 ms . +[2025-07-09T18:59:42.708] [DEBUG] debug-file - default : default@ProcessRouterMap cost memory -11.772018432617188 +[2025-07-09T18:59:42.710] [INFO] debug-file - UP-TO-DATE :default:default@ProcessRouterMap... +[2025-07-09T18:59:42.711] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:59:42.711] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:59:42.711] [DEBUG] debug-file - Executing task :mypage:default@CreateHarBuildProfile +[2025-07-09T18:59:42.711] [DEBUG] debug-file - Task 'mypage:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:42.712] [DEBUG] debug-file - Incremental task mypage:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:59:42.712] [DEBUG] debug-file - mypage : default@CreateHarBuildProfile cost memory 0.0797576904296875 +[2025-07-09T18:59:42.712] [INFO] debug-file - UP-TO-DATE :mypage:default@CreateHarBuildProfile... +[2025-07-09T18:59:42.713] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:59:42.713] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:59:42.713] [DEBUG] debug-file - Executing task :register:default@CreateHarBuildProfile +[2025-07-09T18:59:42.713] [DEBUG] debug-file - Task 'register:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:42.714] [DEBUG] debug-file - Incremental task register:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:59:42.714] [DEBUG] debug-file - register : default@CreateHarBuildProfile cost memory 0.0791015625 +[2025-07-09T18:59:42.714] [INFO] debug-file - UP-TO-DATE :register:default@CreateHarBuildProfile... +[2025-07-09T18:59:42.715] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:59:42.715] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:59:42.715] [DEBUG] debug-file - Executing task :basic:default@BuildNativeWithCmake +[2025-07-09T18:59:42.715] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:59:42.715] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:59:42.715] [DEBUG] debug-file - basic : default@BuildNativeWithCmake cost memory 0.03726959228515625 +[2025-07-09T18:59:42.715] [DEBUG] debug-file - runTaskFromQueue task cost before running: 908 ms +[2025-07-09T18:59:42.715] [INFO] debug-file - Finished :basic:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:59:42.716] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:59:42.717] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:59:42.717] [DEBUG] debug-file - Executing task :mypage:default@MergeProfile +[2025-07-09T18:59:42.719] [DEBUG] debug-file - Incremental task mypage:default@MergeProfile pre-execution cost: 1 ms . +[2025-07-09T18:59:42.719] [DEBUG] debug-file - mypage : default@MergeProfile cost memory 0.189117431640625 +[2025-07-09T18:59:42.719] [INFO] debug-file - UP-TO-DATE :mypage:default@MergeProfile... +[2025-07-09T18:59:42.720] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:59:42.720] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:59:42.720] [DEBUG] debug-file - Executing task :register:default@MergeProfile +[2025-07-09T18:59:42.722] [DEBUG] debug-file - Incremental task register:default@MergeProfile pre-execution cost: 1 ms . +[2025-07-09T18:59:42.722] [DEBUG] debug-file - register : default@MergeProfile cost memory 0.18951416015625 +[2025-07-09T18:59:42.722] [INFO] debug-file - UP-TO-DATE :register:default@MergeProfile... +[2025-07-09T18:59:42.723] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:59:42.723] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:59:42.724] [DEBUG] debug-file - Executing task :scene_single_video:default@CreateHarBuildProfile +[2025-07-09T18:59:42.724] [DEBUG] debug-file - Task 'scene_single_video:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:42.724] [DEBUG] debug-file - Incremental task scene_single_video:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:59:42.724] [DEBUG] debug-file - scene_single_video : default@CreateHarBuildProfile cost memory 0.0792694091796875 +[2025-07-09T18:59:42.724] [INFO] debug-file - UP-TO-DATE :scene_single_video:default@CreateHarBuildProfile... +[2025-07-09T18:59:42.725] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:59:42.725] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:59:42.726] [DEBUG] debug-file - Executing task :polyv:default@BuildNativeWithCmake +[2025-07-09T18:59:42.726] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:59:42.726] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:59:42.726] [DEBUG] debug-file - polyv : default@BuildNativeWithCmake cost memory 0.0403594970703125 +[2025-07-09T18:59:42.726] [DEBUG] debug-file - runTaskFromQueue task cost before running: 919 ms +[2025-07-09T18:59:42.726] [INFO] debug-file - Finished :polyv:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:59:42.727] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:59:42.727] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:59:42.727] [DEBUG] debug-file - Executing task :scene_single_video:default@MergeProfile +[2025-07-09T18:59:42.731] [DEBUG] debug-file - Incremental task scene_single_video:default@MergeProfile pre-execution cost: 2 ms . +[2025-07-09T18:59:42.731] [DEBUG] debug-file - scene_single_video : default@MergeProfile cost memory 0.42008209228515625 +[2025-07-09T18:59:42.732] [INFO] debug-file - UP-TO-DATE :scene_single_video:default@MergeProfile... +[2025-07-09T18:59:42.733] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:59:42.733] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:59:42.734] [DEBUG] debug-file - Executing task :chatkit:default@CreateHarBuildProfile +[2025-07-09T18:59:42.734] [DEBUG] debug-file - Task 'chatkit:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:42.734] [DEBUG] debug-file - Incremental task chatkit:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:59:42.735] [DEBUG] debug-file - chatkit : default@CreateHarBuildProfile cost memory 0.078887939453125 +[2025-07-09T18:59:42.735] [INFO] debug-file - UP-TO-DATE :chatkit:default@CreateHarBuildProfile... +[2025-07-09T18:59:42.736] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:59:42.736] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:59:42.736] [DEBUG] debug-file - Executing task :corekit:default@BuildNativeWithCmake +[2025-07-09T18:59:42.736] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:59:42.737] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:59:42.737] [DEBUG] debug-file - corekit : default@BuildNativeWithCmake cost memory 0.03806304931640625 +[2025-07-09T18:59:42.737] [DEBUG] debug-file - runTaskFromQueue task cost before running: 929 ms +[2025-07-09T18:59:42.737] [INFO] debug-file - Finished :corekit:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:59:42.738] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:59:42.738] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:59:42.738] [DEBUG] debug-file - Executing task :chatkit:default@MergeProfile +[2025-07-09T18:59:42.743] [DEBUG] debug-file - Incremental task chatkit:default@MergeProfile pre-execution cost: 2 ms . +[2025-07-09T18:59:42.743] [DEBUG] debug-file - chatkit : default@MergeProfile cost memory 0.4127960205078125 +[2025-07-09T18:59:42.743] [INFO] debug-file - UP-TO-DATE :chatkit:default@MergeProfile... +[2025-07-09T18:59:42.744] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:59:42.744] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:59:42.744] [DEBUG] debug-file - Executing task :common:default@BuildNativeWithCmake +[2025-07-09T18:59:42.744] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:59:42.744] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:59:42.744] [DEBUG] debug-file - common : default@BuildNativeWithCmake cost memory 0.03875732421875 +[2025-07-09T18:59:42.745] [DEBUG] debug-file - runTaskFromQueue task cost before running: 937 ms +[2025-07-09T18:59:42.745] [INFO] debug-file - Finished :common:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:59:42.746] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:42.746] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:42.746] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.747] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.747] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.747] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.747] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.747] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.747] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.747] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.747] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.747] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.747] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.747] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.747] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.753] [DEBUG] debug-file - Executing task :default:default@GenerateLoaderJson +[2025-07-09T18:59:42.755] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.755] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.755] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.755] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.755] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.755] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.755] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.755] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.755] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.755] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.756] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.756] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.756] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.757] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.757] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.757] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.758] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.758] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.758] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.760] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.760] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.760] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.761] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.761] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.761] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.761] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.796] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.796] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.796] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.796] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.796] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.796] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.796] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.796] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.796] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.796] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.796] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.796] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.797] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.800] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.800] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.800] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.800] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.800] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.800] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.803] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.803] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.803] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.804] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.804] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.804] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.804] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.808] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.808] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.808] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.808] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.808] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.808] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.811] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.811] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.811] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.812] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.812] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.812] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.812] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.897] [DEBUG] debug-file - Incremental task default:default@GenerateLoaderJson pre-execution cost: 103 ms . +[2025-07-09T18:59:42.897] [DEBUG] debug-file - default : default@GenerateLoaderJson cost memory -2.4425811767578125 +[2025-07-09T18:59:42.899] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.899] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.899] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.899] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.899] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.899] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.899] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.899] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.899] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.899] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.900] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.900] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.900] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.902] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.902] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.902] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.902] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.902] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.902] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.905] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.905] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.905] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.905] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.905] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.906] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.906] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:42.907] [INFO] debug-file - UP-TO-DATE :default:default@GenerateLoaderJson... +[2025-07-09T18:59:42.908] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:59:42.908] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:59:42.908] [DEBUG] debug-file - Executing task :mypage:default@ConfigureCmake +[2025-07-09T18:59:42.908] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:59:42.908] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:59:42.908] [DEBUG] debug-file - mypage : default@ConfigureCmake cost memory 0.03905487060546875 +[2025-07-09T18:59:42.908] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 101 ms +[2025-07-09T18:59:42.908] [INFO] debug-file - Finished :mypage:default@ConfigureCmake... after 1 ms +[2025-07-09T18:59:42.909] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:59:42.910] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:59:42.910] [DEBUG] debug-file - Executing task :basic:default@BuildNativeWithNinja +[2025-07-09T18:59:42.910] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:59:42.910] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:59:42.910] [DEBUG] debug-file - basic : default@BuildNativeWithNinja cost memory 0.05753326416015625 +[2025-07-09T18:59:42.910] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 103 ms +[2025-07-09T18:59:42.911] [INFO] debug-file - Finished :basic:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:59:42.912] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:59:42.912] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:59:42.912] [DEBUG] debug-file - Executing task :register:default@ConfigureCmake +[2025-07-09T18:59:42.912] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:59:42.912] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:59:42.912] [DEBUG] debug-file - register : default@ConfigureCmake cost memory 0.039031982421875 +[2025-07-09T18:59:42.912] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 105 ms +[2025-07-09T18:59:42.912] [INFO] debug-file - Finished :register:default@ConfigureCmake... after 1 ms +[2025-07-09T18:59:42.913] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:59:42.913] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:59:42.913] [DEBUG] debug-file - Executing task :Home:default@CreateHarBuildProfile +[2025-07-09T18:59:42.914] [DEBUG] debug-file - Task 'Home:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:42.914] [DEBUG] debug-file - Incremental task Home:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:59:42.914] [DEBUG] debug-file - Home : default@CreateHarBuildProfile cost memory 0.0775146484375 +[2025-07-09T18:59:42.914] [INFO] debug-file - UP-TO-DATE :Home:default@CreateHarBuildProfile... +[2025-07-09T18:59:42.915] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:59:42.915] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:59:42.915] [DEBUG] debug-file - Executing task :polyv:default@BuildNativeWithNinja +[2025-07-09T18:59:42.915] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:59:42.916] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:59:42.916] [DEBUG] debug-file - polyv : default@BuildNativeWithNinja cost memory 0.05989837646484375 +[2025-07-09T18:59:42.916] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 109 ms +[2025-07-09T18:59:42.916] [INFO] debug-file - Finished :polyv:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:59:42.917] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:59:42.917] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:59:42.918] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-business. +[2025-07-09T18:59:42.918] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-core-ijk. +[2025-07-09T18:59:42.918] [DEBUG] debug-file - Executing task :scene_single_video:default@ConfigureCmake +[2025-07-09T18:59:42.918] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:59:42.918] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:59:42.919] [DEBUG] debug-file - scene_single_video : default@ConfigureCmake cost memory 0.04019927978515625 +[2025-07-09T18:59:42.919] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 111 ms +[2025-07-09T18:59:42.919] [INFO] debug-file - Finished :scene_single_video:default@ConfigureCmake... after 1 ms +[2025-07-09T18:59:42.920] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:59:42.920] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:59:42.920] [DEBUG] debug-file - Executing task :Home:default@MergeProfile +[2025-07-09T18:59:42.925] [DEBUG] debug-file - Incremental task Home:default@MergeProfile pre-execution cost: 2 ms . +[2025-07-09T18:59:42.925] [DEBUG] debug-file - Home : default@MergeProfile cost memory 0.48104095458984375 +[2025-07-09T18:59:42.926] [INFO] debug-file - UP-TO-DATE :Home:default@MergeProfile... +[2025-07-09T18:59:42.927] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:59:42.927] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:59:42.927] [DEBUG] debug-file - Executing task :chatkit_ui:default@CreateHarBuildProfile +[2025-07-09T18:59:42.927] [DEBUG] debug-file - Task 'chatkit_ui:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:42.928] [DEBUG] debug-file - Incremental task chatkit_ui:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:59:42.928] [DEBUG] debug-file - chatkit_ui : default@CreateHarBuildProfile cost memory 0.07682037353515625 +[2025-07-09T18:59:42.928] [INFO] debug-file - UP-TO-DATE :chatkit_ui:default@CreateHarBuildProfile... +[2025-07-09T18:59:42.929] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:59:42.929] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:59:42.929] [DEBUG] debug-file - Executing task :conversationkit_ui:default@CreateHarBuildProfile +[2025-07-09T18:59:42.929] [DEBUG] debug-file - Task 'conversationkit_ui:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:42.930] [DEBUG] debug-file - Incremental task conversationkit_ui:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:59:42.930] [DEBUG] debug-file - conversationkit_ui : default@CreateHarBuildProfile cost memory 0.07709503173828125 +[2025-07-09T18:59:42.930] [INFO] debug-file - UP-TO-DATE :conversationkit_ui:default@CreateHarBuildProfile... +[2025-07-09T18:59:42.931] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:59:42.931] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:59:42.931] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@CreateHarBuildProfile +[2025-07-09T18:59:42.931] [DEBUG] debug-file - Task 'localconversationkit_ui:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:42.932] [DEBUG] debug-file - Incremental task localconversationkit_ui:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:59:42.932] [DEBUG] debug-file - localconversationkit_ui : default@CreateHarBuildProfile cost memory 0.07759857177734375 +[2025-07-09T18:59:42.932] [INFO] debug-file - UP-TO-DATE :localconversationkit_ui:default@CreateHarBuildProfile... +[2025-07-09T18:59:42.933] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:59:42.933] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:59:42.933] [DEBUG] debug-file - Executing task :corekit:default@BuildNativeWithNinja +[2025-07-09T18:59:42.933] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:59:42.933] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:59:42.933] [DEBUG] debug-file - corekit : default@BuildNativeWithNinja cost memory 0.056884765625 +[2025-07-09T18:59:42.934] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 126 ms +[2025-07-09T18:59:42.934] [INFO] debug-file - Finished :corekit:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:59:42.935] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:59:42.935] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:59:42.935] [DEBUG] debug-file - Resolve native package @nimsdk/conversation. +[2025-07-09T18:59:42.935] [DEBUG] debug-file - Resolve native package @nimsdk/message. +[2025-07-09T18:59:42.936] [DEBUG] debug-file - Resolve native package @nimsdk/team. +[2025-07-09T18:59:42.936] [DEBUG] debug-file - Resolve native package @nimsdk/user. +[2025-07-09T18:59:42.936] [DEBUG] debug-file - Resolve native package @nimsdk/friend. +[2025-07-09T18:59:42.937] [DEBUG] debug-file - Resolve native package @nimsdk/nim. +[2025-07-09T18:59:42.937] [DEBUG] debug-file - Executing task :chatkit:default@ConfigureCmake +[2025-07-09T18:59:42.937] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:59:42.937] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:59:42.937] [DEBUG] debug-file - chatkit : default@ConfigureCmake cost memory 0.0481719970703125 +[2025-07-09T18:59:42.937] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 130 ms +[2025-07-09T18:59:42.937] [INFO] debug-file - Finished :chatkit:default@ConfigureCmake... after 1 ms +[2025-07-09T18:59:42.938] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:59:42.938] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:59:42.939] [DEBUG] debug-file - Executing task :chatkit_ui:default@MergeProfile +[2025-07-09T18:59:42.945] [DEBUG] debug-file - Incremental task chatkit_ui:default@MergeProfile pre-execution cost: 3 ms . +[2025-07-09T18:59:42.945] [DEBUG] debug-file - chatkit_ui : default@MergeProfile cost memory 0.5744094848632812 +[2025-07-09T18:59:42.945] [INFO] debug-file - UP-TO-DATE :chatkit_ui:default@MergeProfile... +[2025-07-09T18:59:42.946] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:59:42.946] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:59:42.947] [DEBUG] debug-file - Executing task :conversationkit_ui:default@MergeProfile +[2025-07-09T18:59:42.952] [DEBUG] debug-file - Incremental task conversationkit_ui:default@MergeProfile pre-execution cost: 2 ms . +[2025-07-09T18:59:42.952] [DEBUG] debug-file - conversationkit_ui : default@MergeProfile cost memory 0.5054779052734375 +[2025-07-09T18:59:42.953] [INFO] debug-file - UP-TO-DATE :conversationkit_ui:default@MergeProfile... +[2025-07-09T18:59:42.954] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:59:42.954] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:59:42.954] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@MergeProfile +[2025-07-09T18:59:42.960] [DEBUG] debug-file - Incremental task localconversationkit_ui:default@MergeProfile pre-execution cost: 3 ms . +[2025-07-09T18:59:42.960] [DEBUG] debug-file - localconversationkit_ui : default@MergeProfile cost memory 0.5062408447265625 +[2025-07-09T18:59:42.960] [INFO] debug-file - UP-TO-DATE :localconversationkit_ui:default@MergeProfile... +[2025-07-09T18:59:42.961] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:59:42.961] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:59:42.962] [DEBUG] debug-file - Executing task :common:default@BuildNativeWithNinja +[2025-07-09T18:59:42.962] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:59:42.962] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:59:42.962] [DEBUG] debug-file - common : default@BuildNativeWithNinja cost memory 0.05834197998046875 +[2025-07-09T18:59:42.962] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 155 ms +[2025-07-09T18:59:42.963] [INFO] debug-file - Finished :common:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:59:42.964] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:59:42.964] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:59:42.964] [DEBUG] debug-file - Executing task :mypage:default@BuildNativeWithCmake +[2025-07-09T18:59:42.964] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:59:42.964] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:59:42.964] [DEBUG] debug-file - mypage : default@BuildNativeWithCmake cost memory 0.0391082763671875 +[2025-07-09T18:59:42.964] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 157 ms +[2025-07-09T18:59:42.964] [INFO] debug-file - Finished :mypage:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:59:42.966] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:59:42.966] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:59:42.966] [DEBUG] debug-file - Executing task :basic:default@ProcessLibs +[2025-07-09T18:59:42.968] [DEBUG] debug-file - Incremental task basic:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:59:42.968] [DEBUG] debug-file - basic : default@ProcessLibs cost memory 0.13263702392578125 +[2025-07-09T18:59:42.968] [INFO] debug-file - UP-TO-DATE :basic:default@ProcessLibs... +[2025-07-09T18:59:42.969] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:59:42.969] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:59:42.969] [DEBUG] debug-file - Executing task :register:default@BuildNativeWithCmake +[2025-07-09T18:59:42.970] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:59:42.970] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:59:42.970] [DEBUG] debug-file - register : default@BuildNativeWithCmake cost memory 0.03916168212890625 +[2025-07-09T18:59:42.970] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 162 ms +[2025-07-09T18:59:42.970] [INFO] debug-file - Finished :register:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:59:42.971] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:59:42.971] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:59:42.971] [DEBUG] debug-file - Executing task :polyv:default@ProcessLibs +[2025-07-09T18:59:42.973] [DEBUG] debug-file - Incremental task polyv:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:59:42.973] [DEBUG] debug-file - polyv : default@ProcessLibs cost memory 0.12917327880859375 +[2025-07-09T18:59:42.973] [INFO] debug-file - UP-TO-DATE :polyv:default@ProcessLibs... +[2025-07-09T18:59:42.974] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:59:42.974] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:59:42.974] [DEBUG] debug-file - Executing task :scene_single_video:default@BuildNativeWithCmake +[2025-07-09T18:59:42.975] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:59:42.975] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:59:42.975] [DEBUG] debug-file - scene_single_video : default@BuildNativeWithCmake cost memory 0.03990936279296875 +[2025-07-09T18:59:42.975] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 167 ms +[2025-07-09T18:59:42.975] [INFO] debug-file - Finished :scene_single_video:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:59:42.976] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:59:42.976] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:59:42.976] [DEBUG] debug-file - Executing task :netease:default@CreateHarBuildProfile +[2025-07-09T18:59:42.977] [DEBUG] debug-file - Task 'netease:default@CreateHarBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:42.977] [DEBUG] debug-file - Incremental task netease:default@CreateHarBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:59:42.977] [DEBUG] debug-file - netease : default@CreateHarBuildProfile cost memory 0.077056884765625 +[2025-07-09T18:59:42.977] [INFO] debug-file - UP-TO-DATE :netease:default@CreateHarBuildProfile... +[2025-07-09T18:59:42.978] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:59:42.978] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:59:42.978] [DEBUG] debug-file - Executing task :corekit:default@ProcessLibs +[2025-07-09T18:59:42.980] [DEBUG] debug-file - Incremental task corekit:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:59:42.980] [DEBUG] debug-file - corekit : default@ProcessLibs cost memory 0.1284942626953125 +[2025-07-09T18:59:42.980] [INFO] debug-file - UP-TO-DATE :corekit:default@ProcessLibs... +[2025-07-09T18:59:42.981] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:59:42.981] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:59:42.982] [DEBUG] debug-file - Executing task :chatkit:default@BuildNativeWithCmake +[2025-07-09T18:59:42.982] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:59:42.982] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:59:42.982] [DEBUG] debug-file - chatkit : default@BuildNativeWithCmake cost memory 0.04816436767578125 +[2025-07-09T18:59:42.983] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 175 ms +[2025-07-09T18:59:42.983] [INFO] debug-file - Finished :chatkit:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:59:42.984] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:59:42.984] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:59:42.985] [DEBUG] debug-file - Executing task :netease:default@MergeProfile +[2025-07-09T18:59:42.992] [DEBUG] debug-file - Incremental task netease:default@MergeProfile pre-execution cost: 3 ms . +[2025-07-09T18:59:42.992] [DEBUG] debug-file - netease : default@MergeProfile cost memory 0.6712875366210938 +[2025-07-09T18:59:42.993] [INFO] debug-file - UP-TO-DATE :netease:default@MergeProfile... +[2025-07-09T18:59:42.994] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:59:42.994] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:59:42.994] [DEBUG] debug-file - Executing task :common:default@ProcessLibs +[2025-07-09T18:59:42.995] [DEBUG] debug-file - Incremental task common:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:59:42.995] [DEBUG] debug-file - common : default@ProcessLibs cost memory 0.1287994384765625 +[2025-07-09T18:59:42.996] [INFO] debug-file - UP-TO-DATE :common:default@ProcessLibs... +[2025-07-09T18:59:42.997] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:59:42.997] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:59:42.998] [DEBUG] debug-file - Executing task :basic:default@DoNativeStrip +[2025-07-09T18:59:42.998] [DEBUG] debug-file - Task 'basic:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:42.999] [DEBUG] debug-file - Incremental task basic:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:59:42.999] [DEBUG] debug-file - basic : default@DoNativeStrip cost memory 0.07180023193359375 +[2025-07-09T18:59:42.999] [INFO] debug-file - UP-TO-DATE :basic:default@DoNativeStrip... +[2025-07-09T18:59:43.000] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:59:43.000] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:59:43.001] [DEBUG] debug-file - Executing task :polyv:default@DoNativeStrip +[2025-07-09T18:59:43.001] [DEBUG] debug-file - Task 'polyv:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:43.001] [DEBUG] debug-file - Incremental task polyv:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:59:43.001] [DEBUG] debug-file - polyv : default@DoNativeStrip cost memory 0.07173919677734375 +[2025-07-09T18:59:43.002] [INFO] debug-file - UP-TO-DATE :polyv:default@DoNativeStrip... +[2025-07-09T18:59:43.003] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:59:43.003] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:59:43.003] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-business. +[2025-07-09T18:59:43.004] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-core-ijk. +[2025-07-09T18:59:43.005] [DEBUG] debug-file - Executing task :Home:default@ConfigureCmake +[2025-07-09T18:59:43.005] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:59:43.005] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:59:43.005] [DEBUG] debug-file - Home : default@ConfigureCmake cost memory 0.0460357666015625 +[2025-07-09T18:59:43.005] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 198 ms +[2025-07-09T18:59:43.005] [INFO] debug-file - Finished :Home:default@ConfigureCmake... after 1 ms +[2025-07-09T18:59:43.007] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:43.007] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:43.007] [DEBUG] debug-file - Executing task :default:default@CreateBuildProfile +[2025-07-09T18:59:43.008] [DEBUG] debug-file - Task 'default:default@CreateBuildProfile' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:43.008] [DEBUG] debug-file - Incremental task default:default@CreateBuildProfile pre-execution cost: 1 ms . +[2025-07-09T18:59:43.008] [DEBUG] debug-file - default : default@CreateBuildProfile cost memory 0.1363677978515625 +[2025-07-09T18:59:43.009] [INFO] debug-file - UP-TO-DATE :default:default@CreateBuildProfile... +[2025-07-09T18:59:43.010] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:59:43.010] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:59:43.011] [DEBUG] debug-file - Executing task :corekit:default@DoNativeStrip +[2025-07-09T18:59:43.011] [DEBUG] debug-file - Task 'corekit:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:43.011] [DEBUG] debug-file - Incremental task corekit:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:59:43.011] [DEBUG] debug-file - corekit : default@DoNativeStrip cost memory 0.0719451904296875 +[2025-07-09T18:59:43.011] [INFO] debug-file - UP-TO-DATE :corekit:default@DoNativeStrip... +[2025-07-09T18:59:43.012] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:59:43.012] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:59:43.013] [DEBUG] debug-file - Resolve native package @nimsdk/conversation. +[2025-07-09T18:59:43.013] [DEBUG] debug-file - Resolve native package @nimsdk/message. +[2025-07-09T18:59:43.014] [DEBUG] debug-file - Resolve native package @nimsdk/team. +[2025-07-09T18:59:43.014] [DEBUG] debug-file - Resolve native package @nimsdk/user. +[2025-07-09T18:59:43.014] [DEBUG] debug-file - Resolve native package @nimsdk/friend. +[2025-07-09T18:59:43.014] [DEBUG] debug-file - Resolve native package @nimsdk/nim. +[2025-07-09T18:59:43.015] [DEBUG] debug-file - Executing task :chatkit_ui:default@ConfigureCmake +[2025-07-09T18:59:43.015] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:59:43.015] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:59:43.015] [DEBUG] debug-file - chatkit_ui : default@ConfigureCmake cost memory 0.04767608642578125 +[2025-07-09T18:59:43.015] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 208 ms +[2025-07-09T18:59:43.015] [INFO] debug-file - Finished :chatkit_ui:default@ConfigureCmake... after 1 ms +[2025-07-09T18:59:43.016] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:59:43.016] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:59:43.016] [DEBUG] debug-file - Resolve native package @nimsdk/conversation. +[2025-07-09T18:59:43.017] [DEBUG] debug-file - Resolve native package @nimsdk/message. +[2025-07-09T18:59:43.017] [DEBUG] debug-file - Resolve native package @nimsdk/team. +[2025-07-09T18:59:43.018] [DEBUG] debug-file - Resolve native package @nimsdk/user. +[2025-07-09T18:59:43.018] [DEBUG] debug-file - Resolve native package @nimsdk/friend. +[2025-07-09T18:59:43.018] [DEBUG] debug-file - Resolve native package @nimsdk/nim. +[2025-07-09T18:59:43.019] [DEBUG] debug-file - Executing task :conversationkit_ui:default@ConfigureCmake +[2025-07-09T18:59:43.019] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:59:43.019] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:59:43.020] [DEBUG] debug-file - conversationkit_ui : default@ConfigureCmake cost memory 0.04045867919921875 +[2025-07-09T18:59:43.020] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 212 ms +[2025-07-09T18:59:43.020] [INFO] debug-file - Finished :conversationkit_ui:default@ConfigureCmake... after 1 ms +[2025-07-09T18:59:43.021] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:59:43.021] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:59:43.022] [DEBUG] debug-file - Resolve native package @nimsdk/conversation. +[2025-07-09T18:59:43.022] [DEBUG] debug-file - Resolve native package @nimsdk/message. +[2025-07-09T18:59:43.022] [DEBUG] debug-file - Resolve native package @nimsdk/team. +[2025-07-09T18:59:43.023] [DEBUG] debug-file - Resolve native package @nimsdk/user. +[2025-07-09T18:59:43.023] [DEBUG] debug-file - Resolve native package @nimsdk/friend. +[2025-07-09T18:59:43.023] [DEBUG] debug-file - Resolve native package @nimsdk/nim. +[2025-07-09T18:59:43.024] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@ConfigureCmake +[2025-07-09T18:59:43.024] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:59:43.024] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:59:43.024] [DEBUG] debug-file - localconversationkit_ui : default@ConfigureCmake cost memory 0.04051971435546875 +[2025-07-09T18:59:43.024] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 217 ms +[2025-07-09T18:59:43.024] [INFO] debug-file - Finished :localconversationkit_ui:default@ConfigureCmake... after 1 ms +[2025-07-09T18:59:43.025] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:43.025] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:43.026] [DEBUG] debug-file - Executing task :default:default@MergeProfile +[2025-07-09T18:59:43.040] [DEBUG] debug-file - Incremental task default:default@MergeProfile pre-execution cost: 6 ms . +[2025-07-09T18:59:43.041] [DEBUG] debug-file - default : default@MergeProfile cost memory 1.29278564453125 +[2025-07-09T18:59:43.042] [INFO] debug-file - UP-TO-DATE :default:default@MergeProfile... +[2025-07-09T18:59:43.043] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:59:43.043] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:59:43.044] [DEBUG] debug-file - Executing task :common:default@DoNativeStrip +[2025-07-09T18:59:43.044] [DEBUG] debug-file - Task 'common:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:43.045] [DEBUG] debug-file - Incremental task common:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:59:43.045] [DEBUG] debug-file - common : default@DoNativeStrip cost memory 0.070831298828125 +[2025-07-09T18:59:43.045] [INFO] debug-file - UP-TO-DATE :common:default@DoNativeStrip... +[2025-07-09T18:59:43.046] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:59:43.046] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:59:43.046] [DEBUG] debug-file - Executing task :mypage:default@BuildNativeWithNinja +[2025-07-09T18:59:43.046] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:59:43.046] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:59:43.047] [DEBUG] debug-file - mypage : default@BuildNativeWithNinja cost memory 0.0594635009765625 +[2025-07-09T18:59:43.047] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 240 ms +[2025-07-09T18:59:43.047] [INFO] debug-file - Finished :mypage:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:59:43.048] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:59:43.048] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:59:43.048] [DEBUG] debug-file - Executing task :register:default@BuildNativeWithNinja +[2025-07-09T18:59:43.049] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:59:43.049] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:59:43.049] [DEBUG] debug-file - register : default@BuildNativeWithNinja cost memory 0.05950927734375 +[2025-07-09T18:59:43.049] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 242 ms +[2025-07-09T18:59:43.049] [INFO] debug-file - Finished :register:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:59:43.050] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:59:43.051] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:59:43.051] [DEBUG] debug-file - Executing task :scene_single_video:default@BuildNativeWithNinja +[2025-07-09T18:59:43.051] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:59:43.051] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:59:43.052] [DEBUG] debug-file - scene_single_video : default@BuildNativeWithNinja cost memory 0.05979156494140625 +[2025-07-09T18:59:43.052] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 244 ms +[2025-07-09T18:59:43.052] [INFO] debug-file - Finished :scene_single_video:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:59:43.053] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:59:43.053] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:59:43.054] [DEBUG] debug-file - Executing task :Home:default@BuildNativeWithCmake +[2025-07-09T18:59:43.054] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:59:43.054] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:59:43.054] [DEBUG] debug-file - Home : default@BuildNativeWithCmake cost memory 0.04709625244140625 +[2025-07-09T18:59:43.054] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 247 ms +[2025-07-09T18:59:43.054] [INFO] debug-file - Finished :Home:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:59:43.055] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:59:43.055] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:59:43.056] [DEBUG] debug-file - Executing task :chatkit:default@BuildNativeWithNinja +[2025-07-09T18:59:43.056] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:59:43.056] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:59:43.056] [DEBUG] debug-file - chatkit : default@BuildNativeWithNinja cost memory 0.067779541015625 +[2025-07-09T18:59:43.056] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 249 ms +[2025-07-09T18:59:43.057] [INFO] debug-file - Finished :chatkit:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:59:43.058] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:59:43.058] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:59:43.058] [DEBUG] debug-file - Executing task :chatkit_ui:default@BuildNativeWithCmake +[2025-07-09T18:59:43.058] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:59:43.058] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:59:43.058] [DEBUG] debug-file - chatkit_ui : default@BuildNativeWithCmake cost memory 0.04769134521484375 +[2025-07-09T18:59:43.059] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 251 ms +[2025-07-09T18:59:43.059] [INFO] debug-file - Finished :chatkit_ui:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:59:43.060] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:59:43.060] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:59:43.060] [DEBUG] debug-file - Executing task :conversationkit_ui:default@BuildNativeWithCmake +[2025-07-09T18:59:43.060] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:59:43.060] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:59:43.060] [DEBUG] debug-file - conversationkit_ui : default@BuildNativeWithCmake cost memory 0.04047393798828125 +[2025-07-09T18:59:43.060] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 253 ms +[2025-07-09T18:59:43.060] [INFO] debug-file - Finished :conversationkit_ui:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:59:43.061] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:59:43.061] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:59:43.062] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@BuildNativeWithCmake +[2025-07-09T18:59:43.062] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:59:43.062] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:59:43.062] [DEBUG] debug-file - localconversationkit_ui : default@BuildNativeWithCmake cost memory 0.04055023193359375 +[2025-07-09T18:59:43.062] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 255 ms +[2025-07-09T18:59:43.062] [INFO] debug-file - Finished :localconversationkit_ui:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:59:43.064] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:43.064] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:43.064] [DEBUG] debug-file - Executing task :default:default@MakePackInfo +[2025-07-09T18:59:43.066] [DEBUG] debug-file - Incremental task default:default@MakePackInfo pre-execution cost: 2 ms . +[2025-07-09T18:59:43.066] [DEBUG] debug-file - default : default@MakePackInfo cost memory 0.1583099365234375 +[2025-07-09T18:59:43.066] [INFO] debug-file - UP-TO-DATE :default:default@MakePackInfo... +[2025-07-09T18:59:43.068] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:43.068] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:43.069] [DEBUG] debug-file - Executing task :default:default@ProcessProfile +[2025-07-09T18:59:43.070] [DEBUG] debug-file - Incremental task default:default@ProcessProfile pre-execution cost: 1 ms . +[2025-07-09T18:59:43.070] [DEBUG] debug-file - default : default@ProcessProfile cost memory 0.139068603515625 +[2025-07-09T18:59:43.070] [INFO] debug-file - UP-TO-DATE :default:default@ProcessProfile... +[2025-07-09T18:59:43.071] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:59:43.071] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:59:43.072] [DEBUG] debug-file - Executing task :mypage:default@ProcessLibs +[2025-07-09T18:59:43.073] [DEBUG] debug-file - Incremental task mypage:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:59:43.073] [DEBUG] debug-file - mypage : default@ProcessLibs cost memory 0.13353729248046875 +[2025-07-09T18:59:43.073] [INFO] debug-file - UP-TO-DATE :mypage:default@ProcessLibs... +[2025-07-09T18:59:43.074] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:59:43.074] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:59:43.075] [DEBUG] debug-file - Executing task :register:default@ProcessLibs +[2025-07-09T18:59:43.076] [DEBUG] debug-file - Incremental task register:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:59:43.076] [DEBUG] debug-file - register : default@ProcessLibs cost memory 0.13335418701171875 +[2025-07-09T18:59:43.076] [INFO] debug-file - UP-TO-DATE :register:default@ProcessLibs... +[2025-07-09T18:59:43.077] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:59:43.077] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:59:43.078] [DEBUG] debug-file - Executing task :scene_single_video:default@ProcessLibs +[2025-07-09T18:59:43.079] [DEBUG] debug-file - Incremental task scene_single_video:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:59:43.079] [DEBUG] debug-file - scene_single_video : default@ProcessLibs cost memory 0.13140869140625 +[2025-07-09T18:59:43.079] [INFO] debug-file - UP-TO-DATE :scene_single_video:default@ProcessLibs... +[2025-07-09T18:59:43.080] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:59:43.080] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:59:43.081] [DEBUG] debug-file - Executing task :chatkit:default@ProcessLibs +[2025-07-09T18:59:43.082] [DEBUG] debug-file - Incremental task chatkit:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:59:43.082] [DEBUG] debug-file - chatkit : default@ProcessLibs cost memory 0.12895965576171875 +[2025-07-09T18:59:43.082] [INFO] debug-file - UP-TO-DATE :chatkit:default@ProcessLibs... +[2025-07-09T18:59:43.083] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:59:43.083] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:59:43.084] [DEBUG] debug-file - Resolve native package @nimsdk/conversation. +[2025-07-09T18:59:43.084] [DEBUG] debug-file - Resolve native package @nimsdk/message. +[2025-07-09T18:59:43.085] [DEBUG] debug-file - Resolve native package @nimsdk/team. +[2025-07-09T18:59:43.085] [DEBUG] debug-file - Resolve native package @nimsdk/user. +[2025-07-09T18:59:43.086] [DEBUG] debug-file - Resolve native package @nimsdk/friend. +[2025-07-09T18:59:43.086] [DEBUG] debug-file - Resolve native package @nimsdk/nim. +[2025-07-09T18:59:43.086] [DEBUG] debug-file - Executing task :netease:default@ConfigureCmake +[2025-07-09T18:59:43.087] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:59:43.087] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:59:43.087] [DEBUG] debug-file - netease : default@ConfigureCmake cost memory 0.04840087890625 +[2025-07-09T18:59:43.087] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 279 ms +[2025-07-09T18:59:43.087] [INFO] debug-file - Finished :netease:default@ConfigureCmake... after 1 ms +[2025-07-09T18:59:43.088] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:43.088] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:43.089] [DEBUG] debug-file - restool module names: default,mypage,basic,Home,register,polyv,scene_single_video,corekit,chatkit,chatkit_ui,netease,conversationkit_ui,common,localconversationkit_ui; moduleName=default, taskName=default@ProcessResource +[2025-07-09T18:59:43.098] [DEBUG] debug-file - Executing task :default:default@ProcessResource +[2025-07-09T18:59:43.099] [DEBUG] debug-file - Incremental task default:default@ProcessResource pre-execution cost: 1 ms . +[2025-07-09T18:59:43.099] [DEBUG] debug-file - default : default@ProcessResource cost memory 0.20493316650390625 +[2025-07-09T18:59:43.101] [INFO] debug-file - UP-TO-DATE :default:default@ProcessResource... +[2025-07-09T18:59:43.104] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:59:43.104] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:59:43.105] [DEBUG] debug-file - Executing task :mypage:default@DoNativeStrip +[2025-07-09T18:59:43.105] [DEBUG] debug-file - Task 'mypage:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:43.106] [DEBUG] debug-file - Incremental task mypage:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:59:43.106] [DEBUG] debug-file - mypage : default@DoNativeStrip cost memory 0.12383270263671875 +[2025-07-09T18:59:43.106] [INFO] debug-file - UP-TO-DATE :mypage:default@DoNativeStrip... +[2025-07-09T18:59:43.107] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:59:43.107] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:59:43.108] [DEBUG] debug-file - Executing task :register:default@DoNativeStrip +[2025-07-09T18:59:43.108] [DEBUG] debug-file - Task 'register:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:43.108] [DEBUG] debug-file - Incremental task register:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:59:43.109] [DEBUG] debug-file - register : default@DoNativeStrip cost memory 0.07346343994140625 +[2025-07-09T18:59:43.109] [INFO] debug-file - UP-TO-DATE :register:default@DoNativeStrip... +[2025-07-09T18:59:43.110] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:59:43.110] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:59:43.111] [DEBUG] debug-file - Executing task :scene_single_video:default@DoNativeStrip +[2025-07-09T18:59:43.111] [DEBUG] debug-file - Task 'scene_single_video:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:43.112] [DEBUG] debug-file - Incremental task scene_single_video:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:59:43.112] [DEBUG] debug-file - scene_single_video : default@DoNativeStrip cost memory 0.07262420654296875 +[2025-07-09T18:59:43.112] [INFO] debug-file - UP-TO-DATE :scene_single_video:default@DoNativeStrip... +[2025-07-09T18:59:43.113] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:59:43.113] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:59:43.115] [DEBUG] debug-file - Executing task :chatkit:default@DoNativeStrip +[2025-07-09T18:59:43.115] [DEBUG] debug-file - Task 'chatkit:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:43.115] [DEBUG] debug-file - Incremental task chatkit:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:59:43.115] [DEBUG] debug-file - chatkit : default@DoNativeStrip cost memory 0.0725860595703125 +[2025-07-09T18:59:43.115] [INFO] debug-file - UP-TO-DATE :chatkit:default@DoNativeStrip... +[2025-07-09T18:59:43.116] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:59:43.116] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:59:43.117] [DEBUG] debug-file - Executing task :netease:default@BuildNativeWithCmake +[2025-07-09T18:59:43.117] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:59:43.117] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:59:43.117] [DEBUG] debug-file - netease : default@BuildNativeWithCmake cost memory 0.048431396484375 +[2025-07-09T18:59:43.117] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 310 ms +[2025-07-09T18:59:43.117] [INFO] debug-file - Finished :netease:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:59:43.119] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:43.119] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:43.119] [DEBUG] debug-file - restool module names: default,mypage,basic,Home,register,polyv,scene_single_video,corekit,chatkit,chatkit_ui,netease,conversationkit_ui,common,localconversationkit_ui; moduleName=default, taskName=default@CompileResource +[2025-07-09T18:59:43.129] [DEBUG] debug-file - Executing task :default:default@CompileResource +[2025-07-09T18:59:43.197] [DEBUG] debug-file - Incremental task default:default@CompileResource pre-execution cost: 68 ms . +[2025-07-09T18:59:43.198] [DEBUG] debug-file - default : default@CompileResource cost memory 10.923347473144531 +[2025-07-09T18:59:43.199] [INFO] debug-file - UP-TO-DATE :default:default@CompileResource... +[2025-07-09T18:59:43.200] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:59:43.201] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:59:43.201] [DEBUG] debug-file - Executing task :Home:default@BuildNativeWithNinja +[2025-07-09T18:59:43.201] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:59:43.201] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:59:43.202] [DEBUG] debug-file - Home : default@BuildNativeWithNinja cost memory 0.0675048828125 +[2025-07-09T18:59:43.202] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 395 ms +[2025-07-09T18:59:43.202] [INFO] debug-file - Finished :Home:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:59:43.205] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:59:43.205] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:59:43.205] [DEBUG] debug-file - Executing task :chatkit_ui:default@BuildNativeWithNinja +[2025-07-09T18:59:43.206] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:59:43.206] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:59:43.206] [DEBUG] debug-file - chatkit_ui : default@BuildNativeWithNinja cost memory 0.067474365234375 +[2025-07-09T18:59:43.206] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 399 ms +[2025-07-09T18:59:43.206] [INFO] debug-file - Finished :chatkit_ui:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:59:43.208] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:59:43.208] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:59:43.208] [DEBUG] debug-file - Executing task :conversationkit_ui:default@BuildNativeWithNinja +[2025-07-09T18:59:43.208] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:59:43.208] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:59:43.208] [DEBUG] debug-file - conversationkit_ui : default@BuildNativeWithNinja cost memory 0.06035614013671875 +[2025-07-09T18:59:43.208] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 401 ms +[2025-07-09T18:59:43.209] [INFO] debug-file - Finished :conversationkit_ui:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:59:43.210] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:59:43.210] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:59:43.211] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@BuildNativeWithNinja +[2025-07-09T18:59:43.211] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:59:43.211] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:59:43.211] [DEBUG] debug-file - localconversationkit_ui : default@BuildNativeWithNinja cost memory 0.060516357421875 +[2025-07-09T18:59:43.211] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 404 ms +[2025-07-09T18:59:43.212] [INFO] debug-file - Finished :localconversationkit_ui:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:59:43.213] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:43.213] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:43.213] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-core-ijk. +[2025-07-09T18:59:43.214] [DEBUG] debug-file - Resolve native package @nimsdk/conversation. +[2025-07-09T18:59:43.214] [DEBUG] debug-file - Resolve native package @nimsdk/localconversation. +[2025-07-09T18:59:43.215] [DEBUG] debug-file - Resolve native package @nimsdk/message. +[2025-07-09T18:59:43.215] [DEBUG] debug-file - Resolve native package @nimsdk/team. +[2025-07-09T18:59:43.215] [DEBUG] debug-file - Resolve native package @nimsdk/user. +[2025-07-09T18:59:43.216] [DEBUG] debug-file - Resolve native package @nimsdk/friend. +[2025-07-09T18:59:43.216] [DEBUG] debug-file - Resolve native package @nimsdk/nim. +[2025-07-09T18:59:43.216] [DEBUG] debug-file - Resolve native package @polyvharmony/media-player-business. +[2025-07-09T18:59:43.217] [DEBUG] debug-file - Executing task :default:default@ConfigureCmake +[2025-07-09T18:59:43.217] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:43.217] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:43.218] [DEBUG] debug-file - default : default@ConfigureCmake cost memory 0.0691375732421875 +[2025-07-09T18:59:43.218] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 410 ms +[2025-07-09T18:59:43.218] [INFO] debug-file - Finished :default:default@ConfigureCmake... after 1 ms +[2025-07-09T18:59:43.219] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:43.220] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:43.222] [DEBUG] debug-file - Executing task :default:default@CompileArkTS +[2025-07-09T18:59:43.229] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:43.229] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:43.229] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.229] [DEBUG] debug-file - Collect obfuscation config from library basic. +[2025-07-09T18:59:43.230] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:59:43.230] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@itcast/basic","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:59:43.230] [DEBUG] debug-file - Module 'mypage' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.230] [DEBUG] debug-file - Collect obfuscation config from library mypage. +[2025-07-09T18:59:43.231] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:59:43.231] [DEBUG] debug-file - jsonObjWithoutParam {"name":"mypage","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:59:43.231] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.231] [DEBUG] debug-file - Module 'Home' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.232] [DEBUG] debug-file - Collect obfuscation config from library Home. +[2025-07-09T18:59:43.232] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:59:43.232] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:59:43.232] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.233] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.234] [DEBUG] debug-file - Collect obfuscation config from library scene_single_video. +[2025-07-09T18:59:43.234] [DEBUG] debug-file - jsonObjWithoutParam {"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"} at undefined +[2025-07-09T18:59:43.234] [DEBUG] debug-file - jsonObjWithoutParam {"name":"scene_single_video","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"media-player-common":"file:../polyv","@polyvharmony/media-player-sdk":"2.5.0"}} at undefined +[2025-07-09T18:59:43.234] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.234] [DEBUG] debug-file - Collect obfuscation config from library polyv. +[2025-07-09T18:59:43.235] [DEBUG] debug-file - jsonObjWithoutParam {"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"} at undefined +[2025-07-09T18:59:43.235] [DEBUG] debug-file - jsonObjWithoutParam {"name":"media-player-common","version":"2.5.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"MIT","dependencies":{"@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0"}} at undefined +[2025-07-09T18:59:43.236] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.237] [DEBUG] debug-file - Module 'register' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.237] [DEBUG] debug-file - Collect obfuscation config from library register. +[2025-07-09T18:59:43.238] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic"} at undefined +[2025-07-09T18:59:43.238] [DEBUG] debug-file - jsonObjWithoutParam {"name":"register","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic"}} at undefined +[2025-07-09T18:59:43.238] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.238] [DEBUG] debug-file - Module 'scene_single_video' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.239] [DEBUG] debug-file - Module 'polyv' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./obfuscation-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.240] [DEBUG] debug-file - Collect obfuscation config from dependency @polyvharmony/httpdns-api. +[2025-07-09T18:59:43.241] [DEBUG] debug-file - Collect obfuscation config from dependency @polyvharmony/httpdns-impl-local. +[2025-07-09T18:59:43.241] [DEBUG] debug-file - Collect obfuscation config from dependency @polyvharmony/httpdns-impl-ali. +[2025-07-09T18:59:43.241] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/conversation. +[2025-07-09T18:59:43.242] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/localconversation. +[2025-07-09T18:59:43.242] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/message. +[2025-07-09T18:59:43.242] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/team. +[2025-07-09T18:59:43.243] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/user. +[2025-07-09T18:59:43.243] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/friend. +[2025-07-09T18:59:43.244] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/nim. +[2025-07-09T18:59:43.244] [DEBUG] debug-file - Collect obfuscation config from dependency @nimsdk/base. +[2025-07-09T18:59:43.244] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.244] [DEBUG] debug-file - Collect obfuscation config from library corekit. +[2025-07-09T18:59:43.245] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-07-09T18:59:43.245] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/corekit","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{}} at undefined +[2025-07-09T18:59:43.245] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.245] [DEBUG] debug-file - Collect obfuscation config from library chatkit. +[2025-07-09T18:59:43.246] [DEBUG] debug-file - jsonObjWithoutParam {"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"} at undefined +[2025-07-09T18:59:43.246] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimsdk/conversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../corekit","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13"}} at undefined +[2025-07-09T18:59:43.248] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.249] [DEBUG] debug-file - Module 'netease' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.249] [DEBUG] debug-file - Collect obfuscation config from library netease. +[2025-07-09T18:59:43.249] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:59:43.249] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:59:43.250] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.250] [DEBUG] debug-file - Module 'conversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.250] [DEBUG] debug-file - Collect obfuscation config from library conversationkit_ui. +[2025-07-09T18:59:43.251] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:59:43.251] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:59:43.251] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.251] [DEBUG] debug-file - Collect obfuscation config from library common. +[2025-07-09T18:59:43.252] [DEBUG] debug-file - jsonObjWithoutParam {"@ohos/pinyin4js":"^2.0.0"} at undefined +[2025-07-09T18:59:43.252] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/common","version":"1.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@ohos/pinyin4js":"^2.0.0"}} at undefined +[2025-07-09T18:59:43.253] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.253] [DEBUG] debug-file - Module 'chatkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.253] [DEBUG] debug-file - Collect obfuscation config from library chatkit_ui. +[2025-07-09T18:59:43.254] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:59:43.254] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:59:43.254] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.255] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.255] [DEBUG] debug-file - Module 'corekit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.256] [DEBUG] debug-file - Collect obfuscation config from dependency @nimkit/markdown. +[2025-07-09T18:59:43.256] [DEBUG] debug-file - Module 'basic' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.257] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.258] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.258] [DEBUG] debug-file - Module 'localconversationkit_ui' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.258] [DEBUG] debug-file - Collect obfuscation config from library localconversationkit_ui. +[2025-07-09T18:59:43.258] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:59:43.258] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:59:43.259] [DEBUG] debug-file - Module 'common' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.259] [DEBUG] debug-file - Module 'chatkit' target 'default' using build option: { + "debuggable": false, + "copyFrom": "default", + "strictMode": { + "caseSensitiveCheck": true, + "useNormalizedOHMUrl": true + }, + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } +} in this build. +[2025-07-09T18:59:43.454] [DEBUG] debug-file - default:default@CompileArkTS is not up-to-date, since the input file 'D:\202076work\hongmeng\newExpert\harmony\products\expert\src\main\ets' has been changed. +[2025-07-09T18:59:43.454] [DEBUG] debug-file - Incremental task default:default@CompileArkTS pre-execution cost: 184 ms . +[2025-07-09T18:59:43.471] [DEBUG] debug-file - build config: +[2025-07-09T18:59:43.471] [DEBUG] debug-file - { + moduleType: 'entry', + perf: 0, + targetName: '.default', + packageManagerType: 'ohpm', + localPropertiesPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\local.properties', + isPreview: false, + isOhosTest: false, + isLocalTest: false, + buildMode: 'Release', + watchMode: 'false', + aceProfilePath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\res\\default\\resources\\base\\profile', + etsLoaderPath: 'D:\\Program Files\\Huawei\\DevEco Studioss\\sdk\\default\\openharmony\\ets\\build-tools\\ets-loader', + modulePath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', + testFrameworkPar: { + testMode: undefined, + coveragePathFilter: undefined, + coverageMode: undefined + }, + needCoverageInsert: false, + debugLine: false, + projectTopDir: 'D:\\202076work\\hongmeng\\newExpert\\harmony', + compileSdkVersion: 17, + compatibleSdkVersion: 14, + compatibleSdkVersionStage: undefined, + bundleName: 'c***s', + etsLoaderVersion: '5.0.5.165', + etsLoaderReleaseType: 'Release', + aotCompileMode: 'type', + apPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\modules.ap', + entryModuleName: 'default', + entryModuleVersion: '1.0.0', + entryPackageName: 'expert', + allModuleNameHash: '45f520d1ffaad6d8698c233baf217609', + externalApiPaths: [ + 'D:\\Program Files\\Huawei\\DevEco Studioss\\sdk\\default\\hms\\ets' + ], + compilerTypes: undefined, + isCrossplatform: false, + hvigorPluginFile: undefined, + compilePluginPath: undefined, + buildGeneratedProfilePath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\generated\\profile\\default', + bundleType: 'app', + arkTSVersion: undefined, + apiVersion: 17, + needCompleteSourcesMap: false, + isFaMode: false, + strictMode: { + caseSensitiveCheck: true, + useNormalizedOHMUrl: true, + noExternalImportByPath: true + }, + buildDir: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build', + deviceTypes: [ 'phone', 'tablet', '2in1' ], + useNormalizedOHMUrl: true, + pkgContextInfo: { + '@itcast/basic': { + packageName: '@itcast/basic', + bundleName: '*****', + moduleName: '', + version: '1.0.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + mypage: { + packageName: 'mypage', + bundleName: '*****', + moduleName: '', + version: '1.0.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + home: { + packageName: 'home', + bundleName: '*****', + moduleName: '', + version: '1.0.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + register: { + packageName: 'register', + bundleName: '*****', + moduleName: '', + version: '1.0.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + scene_single_video: { + packageName: 'scene_single_video', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + 'media-player-common': { + packageName: 'media-player-common', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/media-player-sdk': { + packageName: '@polyvharmony/media-player-sdk', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/media-player-core-ijk': { + packageName: '@polyvharmony/media-player-core-ijk', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/media-player-sdk-addon-cache-down': { + packageName: '@polyvharmony/media-player-sdk-addon-cache-down', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/httpdns-api': { + packageName: '@polyvharmony/httpdns-api', + bundleName: '*****', + moduleName: '', + version: '1.0.2', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/httpdns-impl-local': { + packageName: '@polyvharmony/httpdns-impl-local', + bundleName: '*****', + moduleName: '', + version: '1.0.2', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/httpdns-impl-ali': { + packageName: '@polyvharmony/httpdns-impl-ali', + bundleName: '*****', + moduleName: '', + version: '1.0.2', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/conversation': { + packageName: '@nimsdk/conversation', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/localconversation': { + packageName: '@nimsdk/localconversation', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/message': { + packageName: '@nimsdk/message', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/team': { + packageName: '@nimsdk/team', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/user': { + packageName: '@nimsdk/user', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/friend': { + packageName: '@nimsdk/friend', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/nim': { + packageName: '@nimsdk/nim', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/base': { + packageName: '@nimsdk/base', + bundleName: '*****', + moduleName: '', + version: '10.9.10', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/corekit': { + packageName: '@nimkit/corekit', + bundleName: '*****', + moduleName: '', + version: '1.1.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/chatkit': { + packageName: '@nimkit/chatkit', + bundleName: '*****', + moduleName: '', + version: '10.1.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + netease: { + packageName: 'netease', + bundleName: '*****', + moduleName: '', + version: '1.0.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/media-player-business': { + packageName: '@polyvharmony/media-player-business', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/media-player-core-api': { + packageName: '@polyvharmony/media-player-core-api', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@polyvharmony/media-player-foundation': { + packageName: '@polyvharmony/media-player-foundation', + bundleName: '*****', + moduleName: '', + version: '2.5.0', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@aliyun/httpdns': { + packageName: '@aliyun/httpdns', + bundleName: '*****', + moduleName: '', + version: '1.1.1', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimsdk/vendor': { + packageName: '@nimsdk/vendor', + bundleName: '*****', + moduleName: '', + version: '1.0.0', + entryPath: 'Index.js', + isSO: false, + dependencyAlias: '' + }, + 'class-transformer': { + packageName: 'class-transformer', + bundleName: '*****', + moduleName: '', + version: '0.5.1', + entryPath: 'esm5/index.js', + isSO: false, + dependencyAlias: '' + }, + 'reflect-metadata': { + packageName: 'reflect-metadata', + bundleName: '*****', + moduleName: '', + version: '0.2.1', + entryPath: 'Reflect.js', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/conversationkit_ui': { + packageName: '@nimkit/conversationkit_ui', + bundleName: '*****', + moduleName: '', + version: '10.1.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/chatkit_ui': { + packageName: '@nimkit/chatkit_ui', + bundleName: '*****', + moduleName: '', + version: '10.1.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/common': { + packageName: '@nimkit/common', + bundleName: '*****', + moduleName: '', + version: '1.1.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/localconversationkit_ui': { + packageName: '@nimkit/localconversationkit_ui', + bundleName: '*****', + moduleName: '', + version: '10.1.0', + entryPath: 'Index.ets', + isSO: false, + dependencyAlias: '' + }, + '@ohos/httpclient': { + packageName: '@ohos/httpclient', + bundleName: '*****', + moduleName: '', + version: '2.0.2', + entryPath: 'index.ts', + isSO: false, + dependencyAlias: '' + }, + '@ohos/crypto-js': { + packageName: '@ohos/crypto-js', + bundleName: '*****', + moduleName: '', + version: '2.0.4', + entryPath: 'index.ts', + isSO: false, + dependencyAlias: '' + }, + '@aliyun/logger': { + packageName: '@aliyun/logger', + bundleName: '*****', + moduleName: '', + version: '1.0.2', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@aliyun/error': { + packageName: '@aliyun/error', + bundleName: '*****', + moduleName: '', + version: '1.0.2', + entryPath: 'Index', + isSO: false, + dependencyAlias: '' + }, + '@nimkit/markdown': { + packageName: '@nimkit/markdown', + bundleName: '*****', + moduleName: '', + version: '1.1.0', + entryPath: 'Index.js', + isSO: false, + dependencyAlias: '' + }, + '@ohos/pinyin4js': { + packageName: '@ohos/pinyin4js', + bundleName: '*****', + moduleName: '', + version: '2.0.1', + entryPath: 'index.ets', + isSO: false, + dependencyAlias: '' + }, + pako: { + packageName: 'pako', + bundleName: '*****', + moduleName: '', + version: '2.1.0', + entryPath: 'dist/pako.esm.mjs', + isSO: false, + dependencyAlias: '' + }, + 'base64-js': { + packageName: 'base64-js', + bundleName: '*****', + moduleName: '', + version: '1.5.1', + entryPath: 'index.js', + isSO: false, + dependencyAlias: '' + }, + '@ohos/dataorm': { + packageName: '@ohos/dataorm', + bundleName: '*****', + moduleName: '', + version: '2.2.6', + entryPath: 'index.ts', + isSO: false, + dependencyAlias: '' + }, + '@ohos/hypium': { + packageName: '@ohos/hypium', + bundleName: '*****', + moduleName: '', + version: '1.0.21', + entryPath: 'index.js', + isSO: false, + dependencyAlias: '' + }, + '@ohos/hamock': { + packageName: '@ohos/hamock', + bundleName: '*****', + moduleName: '', + version: '1.0.0', + entryPath: 'index.ets', + isSO: false, + dependencyAlias: '' + }, + expert: { + packageName: 'expert', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: 'src/main/', + isSO: false, + dependencyAlias: '' + }, + 'libplvsdl.so': { + packageName: 'libplvsdl.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libplvplayer_xcomponent.so': { + packageName: 'libplvplayer_xcomponent.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libplvplayer_napi.so': { + packageName: 'libplvplayer_napi.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libplvplayer.so': { + packageName: 'libplvplayer.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libplvffmpeg.so': { + packageName: 'libplvffmpeg.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libLebConnection.so': { + packageName: 'libLebConnection.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libc++_shared.so': { + packageName: 'libc++_shared.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + }, + 'libplvnative.so': { + packageName: 'libplvnative.so', + bundleName: '*****', + moduleName: '', + version: '', + entryPath: '', + isSO: true, + dependencyAlias: '' + } + }, + ohPackagePathMap: {}, + dependencyAliasMap: {}, + permission: { + requestPermissions: [ [Object], [Object], [Object] ], + definePermissions: undefined + }, + integratedHsp: false, + projectArkOption: { obfuscation: { ruleOptions: [Object], consumerRules: [] } }, + sourceMapDir: undefined, + branchElimination: false, + transformLib: undefined, + caseSensitiveCheck: true, + tsImportSendable: false, + resolveConflictMode: true, + depName2RootPath: {}, + depName2DepInfo: {}, + rootPathSet: [ 'D:\\202076work\\hongmeng\\newExpert\\harmony' ], + useNativeResolver: true, + shouldEmitJs: true, + autoLazyImport: undefined, + allowEmptyBundleName: false, + singleFileEmit: false, + arkCompileCachePath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\cache\\default\\default@CompileArkTS\\esmodule', + reExportCheckMode: 'noCheck', + aceModuleJsonPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\res\\default\\ark_module.json', + appResource: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\res\\default\\ResourceTable.txt', + rawFileResource: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\res\\default\\resources\\rawfile', + resourceTableHash: 'fa307d675b5bf0bf887914133e63ea09', + runtimeOS: 'HarmonyOS', + sdkInfo: 'false:17:5.0.5.165:Release', + aceModuleRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\src\\main\\ets', + compileMode: 'esmodule', + aceSuperVisualPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\src\\main\\supervisual', + aceBuildJson: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\loader\\default\\loader.json', + cachePath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\cache\\default\\default@CompileArkTS\\esmodule\\release', + aceModuleBuild: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\loader_out\\default\\ets', + supportChunks: true, + declaredFilesPath: undefined, + pkgNameToPkgBriefInfo: { + '@ohos/crypto-js': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@ohos+crypto-js@2.0.4\\oh_modules\\@ohos\\crypto-js', + pkgName: '@ohos/crypto-js', + sourceRoots: [Array] + }, + '@ohos/dataorm': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@ohos+dataorm@2.2.6\\oh_modules\\@ohos\\dataorm', + pkgName: '@ohos/dataorm', + sourceRoots: [Array] + }, + '@itcast/basic': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic', + pkgName: '@itcast/basic', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + mypage: { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage', + pkgName: 'mypage', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + home: { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home', + pkgName: 'home', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + register: { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register', + pkgName: 'register', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + scene_single_video: { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\scene_single_video', + pkgName: 'scene_single_video', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + 'media-player-common': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\polyv', + pkgName: 'media-player-common', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@polyvharmony/media-player-sdk': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+media-player-sdk@2.5.0\\oh_modules\\@polyvharmony\\media-player-sdk', + pkgName: '@polyvharmony/media-player-sdk', + sourceRoots: [Array] + }, + '@polyvharmony/media-player-core-ijk': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+media-player-core-ijk@2.5.0\\oh_modules\\@polyvharmony\\media-player-core-ijk', + pkgName: '@polyvharmony/media-player-core-ijk', + sourceRoots: [Array] + }, + '@polyvharmony/media-player-sdk-addon-cache-down': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\\oh_modules\\@polyvharmony\\media-player-sdk-addon-cache-down', + pkgName: '@polyvharmony/media-player-sdk-addon-cache-down', + sourceRoots: [Array] + }, + '@polyvharmony/httpdns-api': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+httpdns-api@1.0.2\\oh_modules\\@polyvharmony\\httpdns-api', + pkgName: '@polyvharmony/httpdns-api', + sourceRoots: [Array] + }, + '@polyvharmony/httpdns-impl-local': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+httpdns-impl-local@1.0.2\\oh_modules\\@polyvharmony\\httpdns-impl-local', + pkgName: '@polyvharmony/httpdns-impl-local', + sourceRoots: [Array] + }, + '@polyvharmony/httpdns-impl-ali': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+httpdns-impl-ali@1.0.2\\oh_modules\\@polyvharmony\\httpdns-impl-ali', + pkgName: '@polyvharmony/httpdns-impl-ali', + sourceRoots: [Array] + }, + '@nimsdk/conversation': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+conversation@10.9.10\\oh_modules\\@nimsdk\\conversation', + pkgName: '@nimsdk/conversation', + sourceRoots: [Array] + }, + '@nimsdk/localconversation': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+localconversation@10.9.10\\oh_modules\\@nimsdk\\localconversation', + pkgName: '@nimsdk/localconversation', + sourceRoots: [Array] + }, + '@nimsdk/message': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+message@10.9.10\\oh_modules\\@nimsdk\\message', + pkgName: '@nimsdk/message', + sourceRoots: [Array] + }, + '@nimsdk/team': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+team@10.9.10\\oh_modules\\@nimsdk\\team', + pkgName: '@nimsdk/team', + sourceRoots: [Array] + }, + '@nimsdk/user': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+user@10.9.10\\oh_modules\\@nimsdk\\user', + pkgName: '@nimsdk/user', + sourceRoots: [Array] + }, + '@nimsdk/friend': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+friend@10.9.10\\oh_modules\\@nimsdk\\friend', + pkgName: '@nimsdk/friend', + sourceRoots: [Array] + }, + '@nimsdk/nim': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+nim@10.9.10\\oh_modules\\@nimsdk\\nim', + pkgName: '@nimsdk/nim', + sourceRoots: [Array] + }, + '@nimsdk/base': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\\oh_modules\\@nimsdk\\base', + pkgName: '@nimsdk/base', + sourceRoots: [Array] + }, + '@nimkit/corekit': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit', + pkgName: '@nimkit/corekit', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@nimkit/chatkit': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit', + pkgName: '@nimkit/chatkit', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + netease: { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease', + pkgName: 'netease', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@polyvharmony/media-player-business': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+media-player-business@2.5.0\\oh_modules\\@polyvharmony\\media-player-business', + pkgName: '@polyvharmony/media-player-business', + sourceRoots: [Array] + }, + '@polyvharmony/media-player-core-api': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+media-player-core-api@2.5.0\\oh_modules\\@polyvharmony\\media-player-core-api', + pkgName: '@polyvharmony/media-player-core-api', + sourceRoots: [Array] + }, + '@polyvharmony/media-player-foundation': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@polyvharmony+media-player-foundation@2.5.0\\oh_modules\\@polyvharmony\\media-player-foundation', + pkgName: '@polyvharmony/media-player-foundation', + sourceRoots: [Array] + }, + '@aliyun/httpdns': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@aliyun+httpdns@1.1.1\\oh_modules\\@aliyun\\httpdns', + pkgName: '@aliyun/httpdns', + sourceRoots: [Array] + }, + '@nimsdk/vendor': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimsdk+vendor@1.0.0\\oh_modules\\@nimsdk\\vendor', + pkgName: '@nimsdk/vendor', + sourceRoots: [Array] + }, + '@nimkit/conversationkit_ui': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\conversationkit_ui', + pkgName: '@nimkit/conversationkit_ui', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@nimkit/chatkit_ui': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit_ui', + pkgName: '@nimkit/chatkit_ui', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@nimkit/common': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\common', + pkgName: '@nimkit/common', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@nimkit/localconversationkit_ui': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\localconversationkit_ui', + pkgName: '@nimkit/localconversationkit_ui', + sourceRoots: [Array], + originalSourceRoots: undefined + }, + '@ohos/httpclient': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@ohos+httpclient@2.0.2\\oh_modules\\@ohos\\httpclient', + pkgName: '@ohos/httpclient', + sourceRoots: [Array] + }, + '@aliyun/logger': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@aliyun+logger@1.0.2\\oh_modules\\@aliyun\\logger', + pkgName: '@aliyun/logger', + sourceRoots: [Array] + }, + '@aliyun/error': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@aliyun+error@1.0.2\\oh_modules\\@aliyun\\error', + pkgName: '@aliyun/error', + sourceRoots: [Array] + }, + '@nimkit/markdown': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@nimkit+markdown@1.1.0\\oh_modules\\@nimkit\\markdown', + pkgName: '@nimkit/markdown', + sourceRoots: [Array] + }, + '@ohos/pinyin4js': { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\oh_modules\\.ohpm\\@ohos+pinyin4js@2.0.1\\oh_modules\\@ohos\\pinyin4js', + pkgName: '@ohos/pinyin4js', + sourceRoots: [Array] + }, + expert: { + pkgRoot: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', + originalSourceRoots: undefined, + sourceRoots: [Array], + pkgName: 'expert' + } + }, + projectModel: { + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\src\\main': { + moduleName: 'default', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'default_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\src\\ohosTest': { + moduleName: 'default_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert': { + moduleName: 'default', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage\\src\\main': { + moduleName: 'mypage', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'mypage_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage\\src\\ohosTest': { + moduleName: 'mypage_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage': { + moduleName: 'mypage', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic\\src\\main': { + moduleName: 'basic', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'basic_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic\\src\\ohosTest': { + moduleName: 'basic_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic': { + moduleName: 'basic', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home\\src\\main': { + moduleName: 'Home', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'Home_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home\\src\\ohosTest': { + moduleName: 'Home_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home': { + moduleName: 'Home', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register\\src\\main': { + moduleName: 'register', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'register_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register\\src\\ohosTest': { + moduleName: 'register_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register': { + moduleName: 'register', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\polyv\\src\\main': { + moduleName: 'polyv', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\polyv', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\polyv': { + moduleName: 'polyv', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\polyv', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\scene_single_video\\src\\main': { + moduleName: 'scene_single_video', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\scene_single_video', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\scene_single_video': { + moduleName: 'scene_single_video', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\scene_single_video', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit\\src\\main': { + moduleName: 'corekit', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'corekit_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit\\src\\ohosTest': { + moduleName: 'corekit_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit': { + moduleName: 'corekit', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit\\src\\main': { + moduleName: 'chatkit', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'chatkit_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit\\src\\ohosTest': { + moduleName: 'chatkit_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit': { + moduleName: 'chatkit', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit_ui\\src\\main': { + moduleName: 'chatkit_ui', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit_ui', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit_ui': { + moduleName: 'chatkit_ui', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit_ui', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease\\src\\main': { + moduleName: 'netease', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease\\build\\default\\intermediates\\src\\ohosTest\\ets': { + moduleName: 'netease_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease\\src\\ohosTest': { + moduleName: 'netease_test', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease': { + moduleName: 'netease', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\conversationkit_ui\\src\\main': { + moduleName: 'conversationkit_ui', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\conversationkit_ui', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\conversationkit_ui': { + moduleName: 'conversationkit_ui', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\conversationkit_ui', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\common\\src\\main': { + moduleName: 'common', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\common', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\common': { + moduleName: 'common', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\common', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\localconversationkit_ui\\src\\main': { + moduleName: 'localconversationkit_ui', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\localconversationkit_ui', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\localconversationkit_ui': { + moduleName: 'localconversationkit_ui', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\localconversationkit_ui', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + }, + 'D:\\202076work\\hongmeng\\newExpert\\harmony': { + moduleName: 'harmony', + modulePkgPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony', + belongProjectPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony' + } + }, + pkgJsonFileHash: 'c5b4c4619e5c0b6eb2ff38daa97e9242', + allModulePaths: [ + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\mypage', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\commons\\basic', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\Home', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\register', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\polyv', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\scene_single_video', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\corekit', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\chatkit_ui', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\features\\netease', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\conversationkit_ui', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\common', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\localconversationkit_ui' + ], + routerMap: {}, + obfuscationOptions: { + selfConfig: { ruleOptions: [Object], consumerRules: [] }, + sdkApis: [], + obfuscationCacheDir: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\cache\\default\\default@CompileArkTS\\esmodule\\release\\obfuscation', + exportRulePath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\obfuscation\\default\\obfuscation.txt', + dependencies: { libraries: [Array], hars: [Array] } + }, + compileBlockPkg: [ + '@polyvharmony/media-player-sdk', + '@polyvharmony/media-player-core-ijk', + '@polyvharmony/media-player-sdk-addon-cache-down', + '@polyvharmony/httpdns-api', + '@polyvharmony/httpdns-impl-local', + '@polyvharmony/httpdns-impl-ali', + '@nimsdk/conversation', + '@nimsdk/localconversation', + '@nimsdk/message', + '@nimsdk/team', + '@nimsdk/user', + '@nimsdk/friend', + '@nimsdk/nim', + '@nimsdk/base', + '@polyvharmony/media-player-business', + '@polyvharmony/media-player-core-api', + '@polyvharmony/media-player-foundation', + '@aliyun/httpdns', + '@aliyun/logger', + '@aliyun/error' + ], + mockParams: { + decorator: '@MockSetup', + packageName: '@ohos/hamock', + etsSourceRootPath: 'src/main/ets', + mockConfigPath: 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\src\\mock\\mock-config.json5', + mockConfigKey2ModuleInfo: {} + }, + copyCodeResourceEnable: true, + copyCodeResourceExcludes: [], + uiTransformOptimization: false, + otherPaths: { + '@ohos/crypto-js/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@ohos+crypto-js@2.0.4\\oh_modules\\@ohos\\crypto-js\\src\\main\\*' + ], + '@ohos/dataorm/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@ohos+dataorm@2.2.6\\oh_modules\\@ohos\\dataorm\\src\\main\\*' + ], + '@itcast/basic/*': [ + '..\\..\\..\\..\\..\\commons\\basic\\src\\main\\*', + '..\\..\\..\\..\\..\\commons\\basic\\build\\default\\generated\\profile\\default\\*' + ], + 'mypage/*': [ + '..\\..\\..\\..\\..\\features\\mypage\\src\\main\\*', + '..\\..\\..\\..\\..\\features\\mypage\\build\\default\\generated\\profile\\default\\*' + ], + 'home/*': [ + '..\\..\\..\\..\\..\\features\\Home\\src\\main\\*', + '..\\..\\..\\..\\..\\features\\Home\\build\\default\\generated\\profile\\default\\*' + ], + 'register/*': [ + '..\\..\\..\\..\\..\\features\\register\\src\\main\\*', + '..\\..\\..\\..\\..\\features\\register\\build\\default\\generated\\profile\\default\\*' + ], + 'scene_single_video/*': [ + '..\\..\\..\\..\\..\\scene_single_video\\src\\main\\*', + '..\\..\\..\\..\\..\\scene_single_video\\build\\default\\generated\\profile\\default\\*' + ], + 'media-player-common/*': [ + '..\\..\\..\\..\\..\\polyv\\src\\main\\*', + '..\\..\\..\\..\\..\\polyv\\build\\default\\generated\\profile\\default\\*' + ], + '@polyvharmony/media-player-sdk/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+media-player-sdk@2.5.0\\oh_modules\\@polyvharmony\\media-player-sdk\\src\\main\\*' + ], + '@polyvharmony/media-player-core-ijk/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+media-player-core-ijk@2.5.0\\oh_modules\\@polyvharmony\\media-player-core-ijk\\src\\main\\*' + ], + '@polyvharmony/media-player-sdk-addon-cache-down/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\\oh_modules\\@polyvharmony\\media-player-sdk-addon-cache-down\\src\\main\\*' + ], + '@polyvharmony/httpdns-api/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+httpdns-api@1.0.2\\oh_modules\\@polyvharmony\\httpdns-api\\src\\main\\*' + ], + '@polyvharmony/httpdns-impl-local/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+httpdns-impl-local@1.0.2\\oh_modules\\@polyvharmony\\httpdns-impl-local\\src\\main\\*' + ], + '@polyvharmony/httpdns-impl-ali/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+httpdns-impl-ali@1.0.2\\oh_modules\\@polyvharmony\\httpdns-impl-ali\\src\\main\\*' + ], + '@nimsdk/conversation/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+conversation@10.9.10\\oh_modules\\@nimsdk\\conversation\\src\\main\\*' + ], + '@nimsdk/localconversation/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+localconversation@10.9.10\\oh_modules\\@nimsdk\\localconversation\\src\\main\\*' + ], + '@nimsdk/message/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+message@10.9.10\\oh_modules\\@nimsdk\\message\\src\\main\\*' + ], + '@nimsdk/team/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+team@10.9.10\\oh_modules\\@nimsdk\\team\\src\\main\\*' + ], + '@nimsdk/user/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+user@10.9.10\\oh_modules\\@nimsdk\\user\\src\\main\\*' + ], + '@nimsdk/friend/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+friend@10.9.10\\oh_modules\\@nimsdk\\friend\\src\\main\\*' + ], + '@nimsdk/nim/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+nim@10.9.10\\oh_modules\\@nimsdk\\nim\\src\\main\\*' + ], + '@nimsdk/base/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\\oh_modules\\@nimsdk\\base\\src\\main\\*' + ], + '@nimkit/corekit/*': [ + '..\\..\\..\\..\\..\\corekit\\src\\main\\*', + '..\\..\\..\\..\\..\\corekit\\build\\default\\generated\\profile\\default\\*' + ], + '@nimkit/chatkit/*': [ + '..\\..\\..\\..\\..\\chatkit\\src\\main\\*', + '..\\..\\..\\..\\..\\chatkit\\build\\default\\generated\\profile\\default\\*' + ], + 'netease/*': [ + '..\\..\\..\\..\\..\\features\\netease\\src\\main\\*', + '..\\..\\..\\..\\..\\features\\netease\\build\\default\\generated\\profile\\default\\*' + ], + '@polyvharmony/media-player-business/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+media-player-business@2.5.0\\oh_modules\\@polyvharmony\\media-player-business\\src\\main\\*' + ], + '@polyvharmony/media-player-core-api/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+media-player-core-api@2.5.0\\oh_modules\\@polyvharmony\\media-player-core-api\\src\\main\\*' + ], + '@polyvharmony/media-player-foundation/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@polyvharmony+media-player-foundation@2.5.0\\oh_modules\\@polyvharmony\\media-player-foundation\\src\\main\\*' + ], + '@aliyun/httpdns/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@aliyun+httpdns@1.1.1\\oh_modules\\@aliyun\\httpdns\\src\\main\\*' + ], + '@nimsdk/vendor/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimsdk+vendor@1.0.0\\oh_modules\\@nimsdk\\vendor\\src\\main\\*' + ], + '@nimkit/conversationkit_ui/*': [ + '..\\..\\..\\..\\..\\conversationkit_ui\\src\\main\\*', + '..\\..\\..\\..\\..\\conversationkit_ui\\build\\default\\generated\\profile\\default\\*' + ], + '@nimkit/chatkit_ui/*': [ + '..\\..\\..\\..\\..\\chatkit_ui\\src\\main\\*', + '..\\..\\..\\..\\..\\chatkit_ui\\build\\default\\generated\\profile\\default\\*' + ], + '@nimkit/common/*': [ + '..\\..\\..\\..\\..\\common\\src\\main\\*', + '..\\..\\..\\..\\..\\common\\build\\default\\generated\\profile\\default\\*' + ], + '@nimkit/localconversationkit_ui/*': [ + '..\\..\\..\\..\\..\\localconversationkit_ui\\src\\main\\*', + '..\\..\\..\\..\\..\\localconversationkit_ui\\build\\default\\generated\\profile\\default\\*' + ], + '@ohos/httpclient/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@ohos+httpclient@2.0.2\\oh_modules\\@ohos\\httpclient\\src\\main\\*' + ], + '@aliyun/logger/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@aliyun+logger@1.0.2\\oh_modules\\@aliyun\\logger\\src\\main\\*' + ], + '@aliyun/error/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@aliyun+error@1.0.2\\oh_modules\\@aliyun\\error\\src\\main\\*' + ], + '@nimkit/markdown/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@nimkit+markdown@1.1.0\\oh_modules\\@nimkit\\markdown\\src\\main\\*' + ], + '@ohos/pinyin4js/*': [ + '..\\..\\..\\..\\..\\oh_modules\\.ohpm\\@ohos+pinyin4js@2.0.1\\oh_modules\\@ohos\\pinyin4js\\src\\main\\*' + ], + 'expert/*': [ + '..\\*', + '..\\..\\..\\build\\default\\generated\\profile\\default\\*' + ] + }, + collectImportersConfig: undefined +} +[2025-07-09T18:59:43.472] [DEBUG] debug-file - Compile arkts with external api path: D:\Program Files\Huawei\DevEco Studioss\sdk\default\hms\ets +[2025-07-09T18:59:43.475] [DEBUG] debug-file - default@CompileArkTS work[79] is submitted. +[2025-07-09T18:59:43.475] [DEBUG] debug-file - default@CompileArkTS work[79] is pushed to ready queue. +[2025-07-09T18:59:43.475] [DEBUG] debug-file - A work dispatched to worker[15] failed because unable to get work from ready queue. +[2025-07-09T18:59:43.475] [DEBUG] debug-file - A work dispatched to worker[14] failed because unable to get work from ready queue. +[2025-07-09T18:59:43.475] [DEBUG] debug-file - A work dispatched to worker[13] failed because unable to get work from ready queue. +[2025-07-09T18:59:43.475] [DEBUG] debug-file - A work dispatched to worker[12] failed because unable to get work from ready queue. +[2025-07-09T18:59:43.475] [DEBUG] debug-file - A work dispatched to worker[11] failed because unable to get work from ready queue. +[2025-07-09T18:59:43.475] [DEBUG] debug-file - A work dispatched to worker[10] failed because unable to get work from ready queue. +[2025-07-09T18:59:43.475] [DEBUG] debug-file - A work dispatched to worker[9] failed because unable to get work from ready queue. +[2025-07-09T18:59:43.475] [DEBUG] debug-file - A work dispatched to worker[8] failed because unable to get work from ready queue. +[2025-07-09T18:59:43.475] [DEBUG] debug-file - A work dispatched to worker[7] failed because unable to get work from ready queue. +[2025-07-09T18:59:43.475] [DEBUG] debug-file - A work dispatched to worker[6] failed because unable to get work from ready queue. +[2025-07-09T18:59:43.475] [DEBUG] debug-file - A work dispatched to worker[5] failed because unable to get work from ready queue. +[2025-07-09T18:59:43.476] [DEBUG] debug-file - default@CompileArkTS work[79] has been dispatched to worker[4]. +[2025-07-09T18:59:43.476] [DEBUG] debug-file - default@CompileArkTS work[79] is dispatched. +[2025-07-09T18:59:43.476] [DEBUG] debug-file - CopyResources startTime: 37141203543100 +[2025-07-09T18:59:43.476] [DEBUG] debug-file - default@CompileArkTS work[80] is submitted. +[2025-07-09T18:59:43.476] [DEBUG] debug-file - default@CompileArkTS work[80] is pushed to ready queue. +[2025-07-09T18:59:43.476] [DEBUG] debug-file - A work dispatched to worker[15] failed because unable to get work from ready queue. +[2025-07-09T18:59:43.476] [DEBUG] debug-file - Create resident worker with id: 14. +[2025-07-09T18:59:43.478] [DEBUG] debug-file - default@CompileArkTS work[80] has been dispatched to worker[14]. +[2025-07-09T18:59:43.478] [DEBUG] debug-file - default@CompileArkTS work[80] is dispatched. +[2025-07-09T18:59:43.478] [DEBUG] debug-file - default : default@CompileArkTS cost memory -0.20764923095703125 +[2025-07-09T18:59:43.480] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:43.480] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:43.483] [DEBUG] debug-file - Executing task :default:default@BuildJS +[2025-07-09T18:59:43.489] [DEBUG] debug-file - default : default@BuildJS cost memory 0.6218719482421875 +[2025-07-09T18:59:43.489] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 682 ms +[2025-07-09T18:59:43.490] [INFO] debug-file - Finished :default:default@BuildJS... after 7 ms +[2025-07-09T18:59:43.491] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:59:43.491] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:59:43.492] [DEBUG] debug-file - Executing task :Home:default@ProcessLibs +[2025-07-09T18:59:43.494] [DEBUG] debug-file - Incremental task Home:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:59:43.494] [DEBUG] debug-file - Home : default@ProcessLibs cost memory 0.13195037841796875 +[2025-07-09T18:59:43.495] [INFO] debug-file - UP-TO-DATE :Home:default@ProcessLibs... +[2025-07-09T18:59:43.496] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:59:43.496] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:59:43.497] [DEBUG] debug-file - Executing task :chatkit_ui:default@ProcessLibs +[2025-07-09T18:59:43.499] [DEBUG] debug-file - Incremental task chatkit_ui:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:59:43.499] [DEBUG] debug-file - chatkit_ui : default@ProcessLibs cost memory 0.1296234130859375 +[2025-07-09T18:59:43.499] [INFO] debug-file - UP-TO-DATE :chatkit_ui:default@ProcessLibs... +[2025-07-09T18:59:43.501] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:59:43.501] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:59:43.501] [DEBUG] debug-file - Executing task :conversationkit_ui:default@ProcessLibs +[2025-07-09T18:59:43.503] [DEBUG] debug-file - Incremental task conversationkit_ui:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:59:43.503] [DEBUG] debug-file - conversationkit_ui : default@ProcessLibs cost memory 0.1303863525390625 +[2025-07-09T18:59:43.503] [INFO] debug-file - UP-TO-DATE :conversationkit_ui:default@ProcessLibs... +[2025-07-09T18:59:43.504] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:59:43.504] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:59:43.505] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@ProcessLibs +[2025-07-09T18:59:43.506] [DEBUG] debug-file - Incremental task localconversationkit_ui:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:59:43.506] [DEBUG] debug-file - localconversationkit_ui : default@ProcessLibs cost memory 0.1310882568359375 +[2025-07-09T18:59:43.507] [INFO] debug-file - UP-TO-DATE :localconversationkit_ui:default@ProcessLibs... +[2025-07-09T18:59:43.508] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:43.508] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:43.508] [DEBUG] debug-file - Executing task :default:default@BuildNativeWithCmake +[2025-07-09T18:59:43.508] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:43.509] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:43.509] [DEBUG] debug-file - default : default@BuildNativeWithCmake cost memory 0.06896209716796875 +[2025-07-09T18:59:43.509] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 701 ms +[2025-07-09T18:59:43.509] [INFO] debug-file - Finished :default:default@BuildNativeWithCmake... after 1 ms +[2025-07-09T18:59:43.510] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"} at undefined +[2025-07-09T18:59:43.510] [DEBUG] debug-file - jsonObjWithoutParam {"name":"home","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv"}} at undefined +[2025-07-09T18:59:43.511] [DEBUG] debug-file - Executing task :Home:default@DoNativeStrip +[2025-07-09T18:59:43.512] [DEBUG] debug-file - Task 'Home:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:43.512] [DEBUG] debug-file - Incremental task Home:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:59:43.512] [DEBUG] debug-file - Home : default@DoNativeStrip cost memory 0.07094573974609375 +[2025-07-09T18:59:43.512] [INFO] debug-file - UP-TO-DATE :Home:default@DoNativeStrip... +[2025-07-09T18:59:43.513] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"} at undefined +[2025-07-09T18:59:43.513] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/chatkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimkit/corekit":"file:../corekit","@nimsdk/base":"10.9.10","class-transformer":"^0.5.1","reflect-metadata":"^0.1.13","@nimkit/markdown":"1.1.0","@itcast/basic":"file:../commons/basic"}} at undefined +[2025-07-09T18:59:43.515] [DEBUG] debug-file - Executing task :chatkit_ui:default@DoNativeStrip +[2025-07-09T18:59:43.515] [DEBUG] debug-file - Task 'chatkit_ui:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:43.516] [DEBUG] debug-file - Incremental task chatkit_ui:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:59:43.516] [DEBUG] debug-file - chatkit_ui : default@DoNativeStrip cost memory 0.07057952880859375 +[2025-07-09T18:59:43.516] [INFO] debug-file - UP-TO-DATE :chatkit_ui:default@DoNativeStrip... +[2025-07-09T18:59:43.518] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:59:43.518] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/conversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:59:43.521] [DEBUG] debug-file - Executing task :conversationkit_ui:default@DoNativeStrip +[2025-07-09T18:59:43.521] [DEBUG] debug-file - Task 'conversationkit_ui:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:43.522] [DEBUG] debug-file - Incremental task conversationkit_ui:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:59:43.522] [DEBUG] debug-file - conversationkit_ui : default@DoNativeStrip cost memory 0.07097625732421875 +[2025-07-09T18:59:43.522] [INFO] debug-file - UP-TO-DATE :conversationkit_ui:default@DoNativeStrip... +[2025-07-09T18:59:43.524] [DEBUG] debug-file - jsonObjWithoutParam {"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"} at undefined +[2025-07-09T18:59:43.524] [DEBUG] debug-file - jsonObjWithoutParam {"name":"@nimkit/localconversationkit_ui","version":"10.1.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@nimkit/common":"file:../common","@nimkit/chatkit":"file:../chatkit","@nimsdk/base":"10.9.10"}} at undefined +[2025-07-09T18:59:43.526] [DEBUG] debug-file - Executing task :localconversationkit_ui:default@DoNativeStrip +[2025-07-09T18:59:43.526] [DEBUG] debug-file - Task 'localconversationkit_ui:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:43.527] [DEBUG] debug-file - Incremental task localconversationkit_ui:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:59:43.527] [DEBUG] debug-file - localconversationkit_ui : default@DoNativeStrip cost memory 0.0717010498046875 +[2025-07-09T18:59:43.527] [INFO] debug-file - UP-TO-DATE :localconversationkit_ui:default@DoNativeStrip... +[2025-07-09T18:59:43.528] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:59:43.529] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:59:43.529] [DEBUG] debug-file - Executing task :netease:default@BuildNativeWithNinja +[2025-07-09T18:59:43.529] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:59:43.529] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:59:43.530] [DEBUG] debug-file - netease : default@BuildNativeWithNinja cost memory 0.06884765625 +[2025-07-09T18:59:43.530] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 723 ms +[2025-07-09T18:59:43.530] [INFO] debug-file - Finished :netease:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:59:43.532] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:59:43.532] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:59:43.532] [DEBUG] debug-file - Executing task :netease:default@ProcessLibs +[2025-07-09T18:59:43.534] [DEBUG] debug-file - Incremental task netease:default@ProcessLibs pre-execution cost: 1 ms . +[2025-07-09T18:59:43.534] [DEBUG] debug-file - netease : default@ProcessLibs cost memory 0.1323089599609375 +[2025-07-09T18:59:43.534] [INFO] debug-file - UP-TO-DATE :netease:default@ProcessLibs... +[2025-07-09T18:59:43.535] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"} at undefined +[2025-07-09T18:59:43.536] [DEBUG] debug-file - jsonObjWithoutParam {"name":"netease","version":"1.0.0","description":"Please describe the basic information.","main":"Index.ets","author":"","license":"Apache-2.0","dependencies":{"@itcast/basic":"file:../../commons/basic","@nimkit/conversationkit_ui":"file:../../conversationkit_ui","@nimkit/chatkit_ui":"file:../../chatkit_ui","@nimkit/chatkit":"file:../../chatkit","@nimsdk/base":"10.9.10","@nimkit/common":"file:../../common","@nimkit/localconversationkit_ui":"file:../../localconversationkit_ui"}} at undefined +[2025-07-09T18:59:43.537] [DEBUG] debug-file - Executing task :netease:default@DoNativeStrip +[2025-07-09T18:59:43.537] [DEBUG] debug-file - Task 'netease:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:43.538] [DEBUG] debug-file - Incremental task netease:default@DoNativeStrip pre-execution cost: 1 ms . +[2025-07-09T18:59:43.538] [DEBUG] debug-file - netease : default@DoNativeStrip cost memory 0.07159423828125 +[2025-07-09T18:59:43.538] [INFO] debug-file - UP-TO-DATE :netease:default@DoNativeStrip... +[2025-07-09T18:59:43.539] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:43.539] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:43.540] [DEBUG] debug-file - Executing task :default:default@BuildNativeWithNinja +[2025-07-09T18:59:43.540] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:43.540] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:43.540] [DEBUG] debug-file - default : default@BuildNativeWithNinja cost memory 0.0892181396484375 +[2025-07-09T18:59:43.540] [DEBUG] debug-file - runTaskFromQueue task cost before running: 1 s 733 ms +[2025-07-09T18:59:43.541] [INFO] debug-file - Finished :default:default@BuildNativeWithNinja... after 1 ms +[2025-07-09T18:59:43.542] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:43.542] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:43.543] [DEBUG] debug-file - Executing task :default:default@ProcessLibs +[2025-07-09T18:59:43.574] [DEBUG] debug-file - Incremental task default:default@ProcessLibs pre-execution cost: 10 ms . +[2025-07-09T18:59:43.574] [DEBUG] debug-file - default : default@ProcessLibs cost memory 4.9164276123046875 +[2025-07-09T18:59:43.576] [INFO] debug-file - UP-TO-DATE :default:default@ProcessLibs... +[2025-07-09T18:59:43.578] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:43.578] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:43.580] [DEBUG] debug-file - Executing task :default:default@DoNativeStrip +[2025-07-09T18:59:43.580] [DEBUG] debug-file - Task 'default:default@DoNativeStrip' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:43.583] [DEBUG] debug-file - Incremental task default:default@DoNativeStrip pre-execution cost: 3 ms . +[2025-07-09T18:59:43.583] [DEBUG] debug-file - default : default@DoNativeStrip cost memory 0.4072723388671875 +[2025-07-09T18:59:43.583] [INFO] debug-file - UP-TO-DATE :default:default@DoNativeStrip... +[2025-07-09T18:59:43.585] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:43.585] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:43.586] [DEBUG] debug-file - Executing task :default:default@CacheNativeLibs +[2025-07-09T18:59:43.587] [DEBUG] debug-file - Task 'default:default@CacheNativeLibs' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:43.589] [DEBUG] debug-file - Incremental task default:default@CacheNativeLibs pre-execution cost: 3 ms . +[2025-07-09T18:59:43.589] [DEBUG] debug-file - default : default@CacheNativeLibs cost memory 0.42076873779296875 +[2025-07-09T18:59:43.590] [INFO] debug-file - UP-TO-DATE :default:default@CacheNativeLibs... +[2025-07-09T18:59:44.197] [DEBUG] debug-file - worker[14] has one work done. +[2025-07-09T18:59:44.198] [DEBUG] debug-file - CopyResources is end, endTime: 37141925348300 +[2025-07-09T18:59:44.198] [DEBUG] debug-file - default@CompileArkTS work[80] done. +[2025-07-09T18:59:44.198] [DEBUG] debug-file - A work dispatched to worker[14] failed because unable to get work from ready queue. +[2025-07-09T18:59:48.221] [DEBUG] debug-file - worker[4] has one work done. +[2025-07-09T18:59:48.224] [DEBUG] debug-file - default@CompileArkTS work[79] done. +[2025-07-09T18:59:48.224] [DEBUG] debug-file - A work dispatched to worker[4] failed because unable to get work from ready queue. +[2025-07-09T18:59:48.228] [INFO] debug-file - Finished :default:default@CompileArkTS... after 4 s 998 ms +[2025-07-09T18:59:48.229] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:48.229] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:48.230] [DEBUG] debug-file - Executing task :default:default@GeneratePkgModuleJson +[2025-07-09T18:59:48.230] [DEBUG] debug-file - Task 'default:default@GeneratePkgModuleJson' cost while wrapping incremental declarations: 1 ms +[2025-07-09T18:59:48.230] [DEBUG] debug-file - Incremental task default:default@GeneratePkgModuleJson pre-execution cost: 1 ms . +[2025-07-09T18:59:48.230] [DEBUG] debug-file - default : default@GeneratePkgModuleJson cost memory 0.06969451904296875 +[2025-07-09T18:59:48.230] [INFO] debug-file - UP-TO-DATE :default:default@GeneratePkgModuleJson... +[2025-07-09T18:59:48.232] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:48.232] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:48.236] [DEBUG] debug-file - Executing task :default:default@PackageHap +[2025-07-09T18:59:48.240] [WARN] debug-file - Bytecode HARs [@polyvharmony/media-player-sdk, @polyvharmony/media-player-core-ijk, @polyvharmony/media-player-sdk-addon-cache-down, @polyvharmony/httpdns-api, @polyvharmony/httpdns-impl-local, @polyvharmony/httpdns-impl-ali, @nimsdk/conversation, @nimsdk/localconversation, @nimsdk/message, @nimsdk/team, @nimsdk/user, @nimsdk/friend, @nimsdk/nim, @nimsdk/base, @polyvharmony/media-player-business, @polyvharmony/media-player-core-api, @polyvharmony/media-player-foundation, @aliyun/httpdns, @aliyun/logger, @aliyun/error] to integrate are not obfuscated and will not be obfuscated later. +[2025-07-09T18:59:48.240] [WARN] debug-file - If obfuscation is needed, enable obfuscation settings in this build process; failing to do so may prevent future obfuscation. + Properly configure obfuscation rules to avoid runtime issues. +[2025-07-09T18:59:48.257] [DEBUG] debug-file - default:default@PackageHap is not up-to-date, since the input file 'D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader_out\default\ets' has been changed. +[2025-07-09T18:59:48.258] [DEBUG] debug-file - Incremental task default:default@PackageHap pre-execution cost: 18 ms . +[2025-07-09T18:59:48.258] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:48.258] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:48.259] [DEBUG] debug-file - Use tool [D:\Program Files\Huawei\DevEco Studioss\sdk\default\openharmony\toolchains\lib\app_packing_tool.jar] + [ + 'java', + '-Dfile.encoding=GBK', + '-jar', + 'D:\\Program Files\\Huawei\\DevEco Studioss\\sdk\\default\\openharmony\\toolchains\\lib\\app_packing_tool.jar', + '--mode', + 'hap', + '--force', + 'true', + '--lib-path', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\stripped_native_libs\\default', + '--json-path', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\package\\default\\module.json', + '--resources-path', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\res\\default\\resources', + '--index-path', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\res\\default\\resources.index', + '--pack-info-path', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\outputs\\default\\pack.info', + '--out-path', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\outputs\\default\\default-default-unsigned.hap', + '--ets-path', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\loader_out\\default\\ets', + '--pkg-context-path', + 'D:\\202076work\\hongmeng\\newExpert\\harmony\\products\\expert\\build\\default\\intermediates\\loader\\default\\pkgContextInfo.json' +] +[2025-07-09T18:59:48.260] [DEBUG] debug-file - default@PackageHap work[81] is submitted. +[2025-07-09T18:59:48.261] [DEBUG] debug-file - default@PackageHap work[81] is pushed to ready queue. +[2025-07-09T18:59:48.261] [DEBUG] debug-file - A work dispatched to worker[15] failed because unable to get work from ready queue. +[2025-07-09T18:59:48.261] [DEBUG] debug-file - default@PackageHap work[81] has been dispatched to worker[14]. +[2025-07-09T18:59:48.261] [DEBUG] debug-file - default@PackageHap work[81] is dispatched. +[2025-07-09T18:59:48.276] [DEBUG] debug-file - default : default@PackageHap cost memory 4.5590362548828125 +[2025-07-09T18:59:48.328] [DEBUG] debug-file - current process memoryUsage: { + rss: 1015123968, + heapTotal: 76275712, + heapUsed: 55528240, + external: 2681535, + arrayBuffers: 629233 +} os memoryUsage :19.165817260742188 +[2025-07-09T18:59:48.892] [DEBUG] debug-file - worker[14] has one work done. +[2025-07-09T18:59:48.893] [DEBUG] debug-file - default@PackageHap work[81] done. +[2025-07-09T18:59:48.893] [DEBUG] debug-file - A work dispatched to worker[14] failed because unable to get work from ready queue. +[2025-07-09T18:59:48.894] [INFO] debug-file - Finished :default:default@PackageHap... after 608 ms +[2025-07-09T18:59:48.896] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:48.896] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:48.897] [DEBUG] debug-file - Executing task :default:default@SignHap +[2025-07-09T18:59:48.898] [DEBUG] debug-file - default:default@SignHap is not up-to-date, since the input file 'D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\default-default-unsigned.hap' has been changed. +[2025-07-09T18:59:48.898] [DEBUG] debug-file - Incremental task default:default@SignHap pre-execution cost: 1 ms . +[2025-07-09T18:59:48.898] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:48.898] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:48.934] [DEBUG] debug-file - java daemon socket received message:{"code":0,"message":"verify profile success"} +[2025-07-09T18:59:48.940] [DEBUG] debug-file - java daemon socket close code:1000 reason:close by user +[2025-07-09T18:59:49.228] [DEBUG] debug-file - java daemon socket received message:{"code":0,"message":"sign app success"} +[2025-07-09T18:59:49.229] [DEBUG] debug-file - default : default@SignHap cost memory 1.090423583984375 +[2025-07-09T18:59:49.229] [DEBUG] debug-file - runTaskFromQueue task cost before running: 7 s 421 ms +[2025-07-09T18:59:49.229] [INFO] debug-file - Finished :default:default@SignHap... after 332 ms +[2025-07-09T18:59:49.230] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:49.230] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:49.231] [DEBUG] debug-file - Executing task :default:default@CollectDebugSymbol +[2025-07-09T18:59:49.235] [DEBUG] debug-file - default:default@CollectDebugSymbol is not up-to-date, since the input file 'D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\cache\default\default@CompileArkTS\esmodule\release\sourceMaps.map' has been changed. +[2025-07-09T18:59:49.235] [DEBUG] debug-file - Incremental task default:default@CollectDebugSymbol pre-execution cost: 3 ms . +[2025-07-09T18:59:49.235] [DEBUG] debug-file - jsonObjWithoutParam {"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"} at undefined +[2025-07-09T18:59:49.235] [DEBUG] debug-file - jsonObjWithoutParam {"name":"expert","version":"1.0.0","description":"Please describe the basic information.","main":"","author":"","license":"","dependencies":{"@itcast/basic":"file:../../commons/basic","mypage":"file:../../features/mypage","home":"file:../../features/Home","register":"file:../../features/register","scene_single_video":"file:../../scene_single_video","media-player-common":"file:../../polyv","@polyvharmony/media-player-sdk":"2.5.0","@polyvharmony/media-player-core-ijk":"2.5.0","@polyvharmony/media-player-sdk-addon-cache-down":"2.5.0","@polyvharmony/httpdns-api":"1.0.2","@polyvharmony/httpdns-impl-local":"1.0.2","@polyvharmony/httpdns-impl-ali":"1.0.2","@nimsdk/conversation":"10.9.10","@nimsdk/localconversation":"10.9.10","@nimsdk/message":"10.9.10","@nimsdk/team":"10.9.10","@nimsdk/user":"10.9.10","@nimsdk/friend":"10.9.10","@nimsdk/nim":"10.9.10","@nimsdk/base":"10.9.10","@nimkit/corekit":"file:../../corekit","@nimkit/chatkit":"file:../../chatkit","netease":"file:../../features/netease"}} at undefined +[2025-07-09T18:59:49.239] [DEBUG] debug-file - nameCache.json for module default does not exists +[2025-07-09T18:59:49.240] [DEBUG] debug-file - default : default@CollectDebugSymbol cost memory 0.5457611083984375 +[2025-07-09T18:59:49.240] [DEBUG] debug-file - runTaskFromQueue task cost before running: 7 s 433 ms +[2025-07-09T18:59:49.241] [INFO] debug-file - Finished :default:default@CollectDebugSymbol... after 10 ms +[2025-07-09T18:59:49.242] [DEBUG] debug-file - Executing task :default:assembleHap +[2025-07-09T18:59:49.242] [DEBUG] debug-file - default : assembleHap cost memory 0.01139068603515625 +[2025-07-09T18:59:49.243] [DEBUG] debug-file - runTaskFromQueue task cost before running: 7 s 435 ms +[2025-07-09T18:59:49.243] [INFO] debug-file - Finished :default:assembleHap... after 1 ms +[2025-07-09T18:59:49.251] [DEBUG] debug-file - BUILD SUCCESSFUL in 7 s 443 ms +[2025-07-09T18:59:49.251] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@PreBuild is up-to-date. +[2025-07-09T18:59:49.251] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@PreBuild is up-to-date. +[2025-07-09T18:59:49.251] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@PreBuild is up-to-date. +[2025-07-09T18:59:49.251] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@PreBuild is up-to-date. +[2025-07-09T18:59:49.251] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task scene_single_video:default@PreBuild is up-to-date. +[2025-07-09T18:59:49.251] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task polyv:default@PreBuild is up-to-date. +[2025-07-09T18:59:49.251] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@PreBuild is up-to-date. +[2025-07-09T18:59:49.251] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task corekit:default@PreBuild is up-to-date. +[2025-07-09T18:59:49.251] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit:default@PreBuild is up-to-date. +[2025-07-09T18:59:49.251] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task netease:default@PreBuild is up-to-date. +[2025-07-09T18:59:49.252] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task conversationkit_ui:default@PreBuild is up-to-date. +[2025-07-09T18:59:49.252] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task common:default@PreBuild is up-to-date. +[2025-07-09T18:59:49.252] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit_ui:default@PreBuild is up-to-date. +[2025-07-09T18:59:49.252] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task localconversationkit_ui:default@PreBuild is up-to-date. +[2025-07-09T18:59:49.252] [DEBUG] debug-file - Update task default:default@CreateModuleInfo output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\generated\profile\default\ModuleInfo.ts cache. +[2025-07-09T18:59:49.252] [DEBUG] debug-file - Incremental task default:default@CreateModuleInfo post-execution cost:1 ms . +[2025-07-09T18:59:49.252] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@GenerateMetadata is up-to-date. +[2025-07-09T18:59:49.252] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@GeneratePkgContextInfo is up-to-date. +[2025-07-09T18:59:49.252] [DEBUG] debug-file - Update task default:default@ProcessIntegratedHsp output file:D:\202076work\hongmeng\newExpert\harmony\build\cache\default\integrated_hsp\integratedHspCache.json cache. +[2025-07-09T18:59:49.253] [DEBUG] debug-file - Incremental task default:default@ProcessIntegratedHsp post-execution cost:1 ms . +[2025-07-09T18:59:49.253] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:59:49.253] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@MergeProfile is up-to-date. +[2025-07-09T18:59:49.253] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task polyv:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:59:49.253] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task polyv:default@MergeProfile is up-to-date. +[2025-07-09T18:59:49.253] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task corekit:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:59:49.253] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task corekit:default@MergeProfile is up-to-date. +[2025-07-09T18:59:49.253] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task common:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:59:49.253] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task common:default@MergeProfile is up-to-date. +[2025-07-09T18:59:49.253] [DEBUG] debug-file - Update task default:default@SyscapTransform input file:D:\Program Files\Huawei\DevEco Studioss\sdk\default\openharmony\toolchains\syscap_tool.exe cache by regenerate. +[2025-07-09T18:59:49.253] [DEBUG] debug-file - Update task default:default@SyscapTransform input file:D:\Program Files\Huawei\DevEco Studioss\sdk\default\openharmony\ets\api\device-define cache by regenerate. +[2025-07-09T18:59:49.253] [DEBUG] debug-file - Update task default:default@SyscapTransform output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\syscap\default\rpcid.sc cache. +[2025-07-09T18:59:49.253] [DEBUG] debug-file - Incremental task default:default@SyscapTransform post-execution cost:1 ms . +[2025-07-09T18:59:49.253] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessRouterMap is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@MergeProfile is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@MergeProfile is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task scene_single_video:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task scene_single_video:default@MergeProfile is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit:default@MergeProfile is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@GenerateLoaderJson is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@MergeProfile is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit_ui:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task conversationkit_ui:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task localconversationkit_ui:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit_ui:default@MergeProfile is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task conversationkit_ui:default@MergeProfile is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task localconversationkit_ui:default@MergeProfile is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@ProcessLibs is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task polyv:default@ProcessLibs is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task netease:default@CreateHarBuildProfile is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task corekit:default@ProcessLibs is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task netease:default@MergeProfile is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task common:default@ProcessLibs is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task basic:default@DoNativeStrip is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task polyv:default@DoNativeStrip is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@CreateBuildProfile is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task corekit:default@DoNativeStrip is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@MergeProfile is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task common:default@DoNativeStrip is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@MakePackInfo is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessProfile is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@ProcessLibs is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@ProcessLibs is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task scene_single_video:default@ProcessLibs is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit:default@ProcessLibs is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessResource is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task mypage:default@DoNativeStrip is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task register:default@DoNativeStrip is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task scene_single_video:default@DoNativeStrip is up-to-date. +[2025-07-09T18:59:49.254] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit:default@DoNativeStrip is up-to-date. +[2025-07-09T18:59:49.255] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@CompileResource is up-to-date. +[2025-07-09T18:59:49.258] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader\default cache by regenerate. +[2025-07-09T18:59:49.258] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\commons\basic\Index.ets cache by regenerate. +[2025-07-09T18:59:49.258] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\mypage\Index.ets cache by regenerate. +[2025-07-09T18:59:49.258] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\Home\Index.ets cache by regenerate. +[2025-07-09T18:59:49.258] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\register\Index.ets cache by regenerate. +[2025-07-09T18:59:49.259] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\scene_single_video\Index.ets cache by regenerate. +[2025-07-09T18:59:49.259] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\polyv\Index.ets cache by regenerate. +[2025-07-09T18:59:49.259] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\corekit\Index.ets cache by regenerate. +[2025-07-09T18:59:49.259] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit\Index.ets cache by regenerate. +[2025-07-09T18:59:49.259] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\netease\Index.ets cache by regenerate. +[2025-07-09T18:59:49.259] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\Index.js cache by regenerate. +[2025-07-09T18:59:49.259] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:59:49.259] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:59:49.259] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\common\Index.ets cache by regenerate. +[2025-07-09T18:59:49.259] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:59:49.259] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\index.ts cache by regenerate. +[2025-07-09T18:59:49.259] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js\index.ts cache by regenerate. +[2025-07-09T18:59:49.260] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown\Index.js cache by regenerate. +[2025-07-09T18:59:49.260] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js\index.ets cache by regenerate. +[2025-07-09T18:59:49.260] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm\index.ts cache by regenerate. +[2025-07-09T18:59:49.260] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\commons\basic\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.262] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\mypage\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.263] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\Home\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.265] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\register\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.265] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\scene_single_video\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.266] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\polyv\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.274] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk@2.5.0\oh_modules\@polyvharmony\media-player-sdk\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.274] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-ijk@2.5.0\oh_modules\@polyvharmony\media-player-core-ijk\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.277] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-sdk-addon-cache-down@2.5.0\oh_modules\@polyvharmony\media-player-sdk-addon-cache-down\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.281] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-api@1.0.2\oh_modules\@polyvharmony\httpdns-api\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.281] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-impl-local@1.0.2\oh_modules\@polyvharmony\httpdns-impl-local\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.281] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+httpdns-impl-ali@1.0.2\oh_modules\@polyvharmony\httpdns-impl-ali\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.281] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+conversation@10.9.10\oh_modules\@nimsdk\conversation\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.283] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+localconversation@10.9.10\oh_modules\@nimsdk\localconversation\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.286] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+message@10.9.10\oh_modules\@nimsdk\message\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.291] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+team@10.9.10\oh_modules\@nimsdk\team\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.293] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+user@10.9.10\oh_modules\@nimsdk\user\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.294] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+friend@10.9.10\oh_modules\@nimsdk\friend\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.295] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+nim@10.9.10\oh_modules\@nimsdk\nim\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.306] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+base@hlxoxbn+ucawqhm7qhnwtgoy1tr0hkatzwpcvr79qzy=\oh_modules\@nimsdk\base\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.316] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\corekit\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.316] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.318] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\netease\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.319] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-business@2.5.0\oh_modules\@polyvharmony\media-player-business\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.329] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-core-api@2.5.0\oh_modules\@polyvharmony\media-player-core-api\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.330] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@polyvharmony+media-player-foundation@2.5.0\oh_modules\@polyvharmony\media-player-foundation\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.333] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+httpdns@1.1.1\oh_modules\@aliyun\httpdns\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.337] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.379] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.380] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.383] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\common\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.385] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.386] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.392] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+logger@1.0.2\oh_modules\@aliyun\logger\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.392] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@aliyun+error@1.0.2\oh_modules\@aliyun\error\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.392] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.397] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.397] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm\src\main\ets cache by regenerate. +[2025-07-09T18:59:49.401] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources\rawfile cache by regenerate. +[2025-07-09T18:59:49.405] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\ResourceTable.txt cache by regenerate. +[2025-07-09T18:59:49.405] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\ark_module.json cache by regenerate. +[2025-07-09T18:59:49.405] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources\base\profile cache by regenerate. +[2025-07-09T18:59:49.406] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\src\main\ets cache from map. +[2025-07-09T18:59:49.406] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader\default\pkgContextInfo.json cache by regenerate. +[2025-07-09T18:59:49.406] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\generated\profile\default\BuildProfile.ets cache by regenerate. +[2025-07-09T18:59:49.406] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\commons\basic\BuildProfile.ets cache by regenerate. +[2025-07-09T18:59:49.406] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\mypage\BuildProfile.ets cache by regenerate. +[2025-07-09T18:59:49.406] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\Home\BuildProfile.ets cache by regenerate. +[2025-07-09T18:59:49.406] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\register\BuildProfile.ets cache by regenerate. +[2025-07-09T18:59:49.406] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\scene_single_video\BuildProfile.ets cache by regenerate. +[2025-07-09T18:59:49.407] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\polyv\BuildProfile.ets cache by regenerate. +[2025-07-09T18:59:49.407] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\corekit\BuildProfile.ets cache by regenerate. +[2025-07-09T18:59:49.407] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit\BuildProfile.ets cache by regenerate. +[2025-07-09T18:59:49.407] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\features\netease\BuildProfile.ets cache by regenerate. +[2025-07-09T18:59:49.407] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\BuildProfile.ets cache by regenerate. +[2025-07-09T18:59:49.407] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\BuildProfile.ets cache by regenerate. +[2025-07-09T18:59:49.407] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\common\BuildProfile.ets cache by regenerate. +[2025-07-09T18:59:49.408] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\BuildProfile.ets cache by regenerate. +[2025-07-09T18:59:49.408] [DEBUG] debug-file - Update task default:default@CompileArkTS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\src\mock\mock-config.json5 cache by regenerate. +[2025-07-09T18:59:49.408] [DEBUG] debug-file - Update task default:default@CompileArkTS output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader_out\default\ets cache. +[2025-07-09T18:59:49.408] [DEBUG] debug-file - Incremental task default:default@CompileArkTS post-execution cost:154 ms . +[2025-07-09T18:59:49.412] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader\default cache by regenerate. +[2025-07-09T18:59:49.412] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\commons\basic\Index.ets cache by regenerate. +[2025-07-09T18:59:49.412] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\features\mypage\Index.ets cache by regenerate. +[2025-07-09T18:59:49.412] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\features\Home\Index.ets cache by regenerate. +[2025-07-09T18:59:49.412] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\features\register\Index.ets cache by regenerate. +[2025-07-09T18:59:49.412] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\scene_single_video\Index.ets cache by regenerate. +[2025-07-09T18:59:49.412] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\polyv\Index.ets cache by regenerate. +[2025-07-09T18:59:49.412] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\corekit\Index.ets cache by regenerate. +[2025-07-09T18:59:49.413] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit\Index.ets cache by regenerate. +[2025-07-09T18:59:49.413] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\features\netease\Index.ets cache by regenerate. +[2025-07-09T18:59:49.413] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimsdk+vendor@1.0.0\oh_modules\@nimsdk\vendor\Index.js cache by regenerate. +[2025-07-09T18:59:49.413] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\conversationkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:59:49.413] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\chatkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:59:49.413] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\common\Index.ets cache by regenerate. +[2025-07-09T18:59:49.413] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\localconversationkit_ui\Index.ets cache by regenerate. +[2025-07-09T18:59:49.413] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+httpclient@2.0.2\oh_modules\@ohos\httpclient\index.ts cache by regenerate. +[2025-07-09T18:59:49.413] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js\index.ts cache by regenerate. +[2025-07-09T18:59:49.413] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@nimkit+markdown@1.1.0\oh_modules\@nimkit\markdown\Index.js cache by regenerate. +[2025-07-09T18:59:49.413] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+pinyin4js@2.0.1\oh_modules\@ohos\pinyin4js\index.ets cache by regenerate. +[2025-07-09T18:59:49.413] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+dataorm@2.2.6\oh_modules\@ohos\dataorm\index.ts cache by regenerate. +[2025-07-09T18:59:49.413] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\oh_modules\.ohpm\@ohos+crypto-js@2.0.4\oh_modules\@ohos\crypto-js\src\main\js cache by regenerate. +[2025-07-09T18:59:49.414] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources\rawfile cache by regenerate. +[2025-07-09T18:59:49.417] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\ResourceTable.txt cache by regenerate. +[2025-07-09T18:59:49.417] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\ark_module.json cache by regenerate. +[2025-07-09T18:59:49.417] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources\base\profile cache by regenerate. +[2025-07-09T18:59:49.417] [DEBUG] debug-file - Update task default:default@BuildJS input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader\default\pkgContextInfo.json cache by regenerate. +[2025-07-09T18:59:49.417] [DEBUG] debug-file - Update task default:default@BuildJS output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader_out\default\js cache. +[2025-07-09T18:59:49.418] [DEBUG] debug-file - Incremental task default:default@BuildJS post-execution cost:10 ms . +[2025-07-09T18:59:49.418] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@ProcessLibs is up-to-date. +[2025-07-09T18:59:49.418] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit_ui:default@ProcessLibs is up-to-date. +[2025-07-09T18:59:49.418] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task conversationkit_ui:default@ProcessLibs is up-to-date. +[2025-07-09T18:59:49.418] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task localconversationkit_ui:default@ProcessLibs is up-to-date. +[2025-07-09T18:59:49.418] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task Home:default@DoNativeStrip is up-to-date. +[2025-07-09T18:59:49.418] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task chatkit_ui:default@DoNativeStrip is up-to-date. +[2025-07-09T18:59:49.418] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task conversationkit_ui:default@DoNativeStrip is up-to-date. +[2025-07-09T18:59:49.418] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task localconversationkit_ui:default@DoNativeStrip is up-to-date. +[2025-07-09T18:59:49.418] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task netease:default@ProcessLibs is up-to-date. +[2025-07-09T18:59:49.418] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task netease:default@DoNativeStrip is up-to-date. +[2025-07-09T18:59:49.418] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@ProcessLibs is up-to-date. +[2025-07-09T18:59:49.418] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@DoNativeStrip is up-to-date. +[2025-07-09T18:59:49.418] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@CacheNativeLibs is up-to-date. +[2025-07-09T18:59:49.418] [DEBUG] debug-file - There is no need to refresh cache, since the incremental task default:default@GeneratePkgModuleJson is up-to-date. +[2025-07-09T18:59:49.419] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\stripped_native_libs\default cache by regenerate. +[2025-07-09T18:59:49.420] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\module.json cache by regenerate. +[2025-07-09T18:59:49.420] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources cache by regenerate. +[2025-07-09T18:59:49.432] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\res\default\resources.index cache by regenerate. +[2025-07-09T18:59:49.432] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\pack.info cache by regenerate. +[2025-07-09T18:59:49.432] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader_out\default\ets cache from map. +[2025-07-09T18:59:49.432] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\loader\default\pkgContextInfo.json cache by regenerate. +[2025-07-09T18:59:49.432] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\cache\default\default@CompileArkTS\esmodule\release\sourceMaps.map cache by regenerate. +[2025-07-09T18:59:49.432] [DEBUG] debug-file - Update task default:default@PackageHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\generated\profile\default\BuildProfile.ets cache by regenerate. +[2025-07-09T18:59:49.433] [DEBUG] debug-file - Update task default:default@PackageHap output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\default-default-unsigned.hap cache. +[2025-07-09T18:59:49.433] [DEBUG] debug-file - Update task default:default@PackageHap output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\source_map\default\sourceMaps.map cache. +[2025-07-09T18:59:49.433] [DEBUG] debug-file - Update task default:default@PackageHap output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\mapping\sourceMaps.map cache. +[2025-07-09T18:59:49.433] [DEBUG] debug-file - Incremental task default:default@PackageHap post-execution cost:15 ms . +[2025-07-09T18:59:49.433] [DEBUG] debug-file - Update task default:default@SignHap input file:D:/202076work/鸿蒙专家端测试证书.cer cache by regenerate. +[2025-07-09T18:59:49.433] [DEBUG] debug-file - Update task default:default@SignHap input file:D:/202076work/profile测试Debug.p7b cache by regenerate. +[2025-07-09T18:59:49.433] [DEBUG] debug-file - Update task default:default@SignHap input file:D:/202076work/gdxzExport.p12 cache by regenerate. +[2025-07-09T18:59:49.433] [DEBUG] debug-file - Update task default:default@SignHap input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\default-default-unsigned.hap cache from map. +[2025-07-09T18:59:49.434] [DEBUG] debug-file - Update task default:default@SignHap output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\default-default-signed.hap cache. +[2025-07-09T18:59:49.434] [DEBUG] debug-file - Incremental task default:default@SignHap post-execution cost:1 ms . +[2025-07-09T18:59:49.435] [DEBUG] debug-file - Update task default:default@CollectDebugSymbol input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\cache\default\default@CompileArkTS\esmodule\release\sourceMaps.map cache from map. +[2025-07-09T18:59:49.435] [DEBUG] debug-file - Update task default:default@CollectDebugSymbol input file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\intermediates\libs\default cache by regenerate. +[2025-07-09T18:59:49.436] [DEBUG] debug-file - Update task default:default@CollectDebugSymbol output file:D:\202076work\hongmeng\newExpert\harmony\products\expert\build\default\outputs\default\symbol cache. +[2025-07-09T18:59:49.438] [DEBUG] debug-file - Incremental task default:default@CollectDebugSymbol post-execution cost:5 ms . +[2025-07-09T18:59:49.491] [DEBUG] debug-file - Cleanup worker 14. +[2025-07-09T18:59:49.491] [DEBUG] debug-file - Worker 14 has been cleaned up. +[2025-07-09T18:59:49.491] [DEBUG] debug-file - Current idle worker size: 1. +[2025-07-09T18:59:49.491] [DEBUG] debug-file - Current resident worker size: 2. +[2025-07-09T18:59:49.492] [DEBUG] debug-file - hvigor build process will be closed. +[2025-07-09T18:59:49.493] [DEBUG] debug-file - java daemon socket close code:1000 reason:close by user +[2025-07-09T18:59:49.495] [DEBUG] debug-file - session manager: send message to worker process. +[2025-07-09T18:59:49.495] [DEBUG] debug-file - session manager: send message to worker process. +[2025-07-09T18:59:49.495] [DEBUG] debug-file - watch worker: worker id should be larger than 0. Nothing will be sent to any worker thread. +[2025-07-09T18:59:49.496] [DEBUG] debug-file - watch worker: worker id should be larger than 0. Nothing will be sent to any worker thread. +[2025-07-09T18:59:49.502] [DEBUG] debug-file - worker[14] exits with exit code 1. diff --git a/build-profile.json5 b/build-profile.json5 index 7dc7b4e..6287d99 100644 --- a/build-profile.json5 +++ b/build-profile.json5 @@ -5,13 +5,15 @@ "name": "default", "type": "HarmonyOS", "material": { - "certpath": "/Users/gandanxiangzhao/.ohos/config/default_harmony_0p9qf45UN48IqoSyKhLtcLhTMwMj81GJRnBkhg7Axm4=.cer", - "keyAlias": "debugKey", - "keyPassword": "0000001AA50378305356D7D7EEDE463DB4E4B1B23C35A2615C29ED413C2E2DC30778DFE346C51C100F7D", - "profile": "/Users/gandanxiangzhao/.ohos/config/default_harmony_0p9qf45UN48IqoSyKhLtcLhTMwMj81GJRnBkhg7Axm4=.p7b", + "storeFile": "D:/202076work/gdxzExport.p12", + "storePassword": "00000018C50E504AB8CC43CCB52E64D656B0131573F764452F4F1FED54B55C3ECC0010D2BD946612", + "keyAlias": "gdxz", + "keyPassword": "00000018EB40FA6E3F3E03EBCA9DCC01DFAB5A57692D48BC16DDF2182CD2CD08E1E583F524397C53", "signAlg": "SHA256withECDSA", - "storeFile": "/Users/gandanxiangzhao/.ohos/config/default_harmony_0p9qf45UN48IqoSyKhLtcLhTMwMj81GJRnBkhg7Axm4=.p12", - "storePassword": "0000001A29D969B0C08E79F7AC25E39AEB74F09540DED4C7BEF6ABF0671F85B598C8F911C2943D3B741C" + "profile": "D:/202076work/profile测试Debug.p7b", + "certpath": "D:/202076work/鸿蒙专家端测试证书.cer" +// "profile": "D:/202076work/release鸿蒙Release.p7b", +// "certpath": "D:/202076work/鸿蒙专家端发布证书.cer" } } ], @@ -30,9 +32,9 @@ } ], "buildModeSet": [ - { - "name": "debug" - }, +// { +// "name": "debug" +// }, { "name": "release" } @@ -74,7 +76,35 @@ { "name": "scene_single_video", "srcPath": "./scene_single_video" - } + }, + { + "name": "corekit", + "srcPath": "./corekit" + }, + { + "name": "chatkit", + "srcPath": "./chatkit" + }, + { + "name": "chatkit_ui", + "srcPath": "./chatkit_ui" + }, + { + "name": "netease", + "srcPath": "./features/netease" + }, + { + "name": "conversationkit_ui", + "srcPath": "./conversationkit_ui" + }, + { + "name": "common", + "srcPath": "./common" + }, + { + "name": "localconversationkit_ui", + "srcPath": "./localconversationkit_ui" + } ] } \ No newline at end of file diff --git a/chatkit/.gitignore b/chatkit/.gitignore new file mode 100644 index 0000000..e2713a2 --- /dev/null +++ b/chatkit/.gitignore @@ -0,0 +1,6 @@ +/node_modules +/oh_modules +/.preview +/build +/.cxx +/.test \ No newline at end of file diff --git a/chatkit/BuildProfile.ets b/chatkit/BuildProfile.ets new file mode 100644 index 0000000..f8f2bba --- /dev/null +++ b/chatkit/BuildProfile.ets @@ -0,0 +1,17 @@ +/** + * Use these variables when you tailor your ArkTS code. They must be of the const type. + */ +export const HAR_VERSION = '10.1.0'; +export const BUILD_MODE_NAME = 'release'; +export const DEBUG = false; +export const TARGET_NAME = 'default'; + +/** + * BuildProfile Class is used only for compatibility purposes. + */ +export default class BuildProfile { + static readonly HAR_VERSION = HAR_VERSION; + static readonly BUILD_MODE_NAME = BUILD_MODE_NAME; + static readonly DEBUG = DEBUG; + static readonly TARGET_NAME = TARGET_NAME; +} \ No newline at end of file diff --git a/chatkit/Index.ets b/chatkit/Index.ets new file mode 100644 index 0000000..4dcc36b --- /dev/null +++ b/chatkit/Index.ets @@ -0,0 +1,78 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +export { ChatKitClient, currentConversationChanged } from './src/main/ets/ChatKitClient' + +export { ChatRepo } from './src/main/ets/repo/ChatRepo' + +export { ContactRepo } from './src/main/ets/repo/ContactRepo' + +export { TeamRepo } from './src/main/ets/repo/TeamRepo' + +export { SettingRepo } from './src/main/ets/repo/SettingRepo' + +export { StorageRepo } from './src/main/ets/repo/StorageRepo' + +export { NEUserWithFriend } from './src/main/ets/model/NEUserWithFriend' + +export { NEFriendUserCache } from './src/main/ets/NEFriendUserCache' + +export { ConversationRepo } from './src/main/ets/repo/ConversationRepo' + +export { LocalConversationRepo } from './src/main/ets/repo/LocalConversationRepo' + +export { IsDiscussion } from './src/main/ets/utils/Utils' + +export { ErrorUtils } from './src/main/ets/utils/ErrorUtils' + +export { TeamMemberWithUser, TeamMemberResult } from './src/main/ets/model/TeamMemberWithUser' + +export { PersonSelectParam } from './src/main/ets/model/PersonSelectParam' + +export { ConversationSelectParam } from './src/main/ets/model/ConversationSelectParam' + +export { ConversationSelectedParam } from './src/main/ets/model/ConversationSelectedParam' + +export { CustomMessageUtils } from './src/main/ets/utils/CustomMessageUtils' + +export { MergedMessageAttachment, + MergeMessageAbstract, + MessageUploadInfo } from './src/main/ets/model/CustomMessageAttachment' + +export { mergedMessageNickKey, + mergedMessageAvatarKey, + multiForwardFileName, + mergedMessageMaxDepth, + mergedMessageLimitCount, + singleMessageLimitCount, + deleteMessagesLimitCount, + mergedMessageCustomType, + mergedMessageCellHeight, + conversationSelectLimitCount, + keyExtensionLastOptType, + keyExtensionAtAll, + typeExtensionAllowAll, + typeExtensionAllowManager, + collectionTypeOffset, + keyReplyMsgKey +} from './src/main/ets/constant/Constant' + +export { TeamMemberCache } from './src/main/ets/cache/TeamMemberCache' + +export { AitModel, accountAll, aitKey, getAitModelFromJson, YxAitMsg } from './src/main/ets/model/ait/AitModel' + +export { AitMessage } from './src/main/ets/model/ait/AitMessage' + +export { AitSegment } from './src/main/ets/model/ait/AitSegment' + +export { AitAllPermission } from './src/main/ets/model/ait/AitAllPermission' + +export { KitLogger as Logger } from './src/main/ets/logger/AppLogger' + +export { IMKitConfigCenter } from './src/main/ets/IMKitConfigCenter' + +export { TeamSettingParam } from './src/main/ets/model/TeamSettingParam' \ No newline at end of file diff --git a/chatkit/build-profile.json5 b/chatkit/build-profile.json5 new file mode 100644 index 0000000..e6773f9 --- /dev/null +++ b/chatkit/build-profile.json5 @@ -0,0 +1,31 @@ +{ + "apiType": "stageMode", + "buildOption": { + }, + "buildOptionSet": [ + { + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + }, + }, + ], + "targets": [ + { + "name": "default" + }, + { + "name": "ohosTest" + } + ] +} diff --git a/chatkit/consumer-rules.txt b/chatkit/consumer-rules.txt new file mode 100644 index 0000000..e69de29 diff --git a/chatkit/hvigorfile.ts b/chatkit/hvigorfile.ts new file mode 100644 index 0000000..9d34d19 --- /dev/null +++ b/chatkit/hvigorfile.ts @@ -0,0 +1,13 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { harTasks } from '@ohos/hvigor-ohos-plugin'; + +export default { + system: harTasks, /* Built-in plugin of Hvigor. It cannot be modified. */ + plugins: [] /* Custom plugin to extend the functionality of Hvigor. */ +} diff --git a/chatkit/obfuscation-rules.txt b/chatkit/obfuscation-rules.txt new file mode 100644 index 0000000..272efb6 --- /dev/null +++ b/chatkit/obfuscation-rules.txt @@ -0,0 +1,23 @@ +# Define project specific obfuscation rules here. +# You can include the obfuscation configuration files in the current module's build-profile.json5. +# +# For more details, see +# https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/source-obfuscation-V5 + +# Obfuscation options: +# -disable-obfuscation: disable all obfuscations +# -enable-property-obfuscation: obfuscate the property names +# -enable-toplevel-obfuscation: obfuscate the names in the global scope +# -compact: remove unnecessary blank spaces and all line feeds +# -remove-log: remove all console.* statements +# -print-namecache: print the name cache that contains the mapping from the old names to new names +# -apply-namecache: reuse the given cache file + +# Keep options: +# -keep-property-name: specifies property names that you want to keep +# -keep-global-name: specifies names that you want to keep in the global scope + +-enable-property-obfuscation +-enable-toplevel-obfuscation +-enable-filename-obfuscation +-enable-export-obfuscation \ No newline at end of file diff --git a/chatkit/oh-package-lock.json5 b/chatkit/oh-package-lock.json5 new file mode 100644 index 0000000..aa04dda --- /dev/null +++ b/chatkit/oh-package-lock.json5 @@ -0,0 +1,132 @@ +{ + "meta": { + "stableOrder": true + }, + "lockfileVersion": 3, + "ATTENTION": "THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.", + "specifiers": { + "@nimkit/corekit@../corekit": "@nimkit/corekit@../corekit", + "@nimsdk/base@../oh_modules/.ohpm/@nimsdk+conversation@10.9.10/oh_modules/@nimsdk/conversation/libs/base.har": "@nimsdk/base@../oh_modules/.ohpm/@nimsdk+nim@10.9.10/oh_modules/@nimsdk/nim/libs/base.har", + "@nimsdk/base@../oh_modules/.ohpm/@nimsdk+friend@10.9.10/oh_modules/@nimsdk/friend/libs/base.har": "@nimsdk/base@../oh_modules/.ohpm/@nimsdk+nim@10.9.10/oh_modules/@nimsdk/nim/libs/base.har", + "@nimsdk/base@../oh_modules/.ohpm/@nimsdk+message@10.9.10/oh_modules/@nimsdk/message/libs/base.har": "@nimsdk/base@../oh_modules/.ohpm/@nimsdk+nim@10.9.10/oh_modules/@nimsdk/nim/libs/base.har", + "@nimsdk/base@../oh_modules/.ohpm/@nimsdk+nim@10.9.10/oh_modules/@nimsdk/nim/libs/base.har": "@nimsdk/base@../oh_modules/.ohpm/@nimsdk+nim@10.9.10/oh_modules/@nimsdk/nim/libs/base.har", + "@nimsdk/base@../oh_modules/.ohpm/@nimsdk+team@10.9.10/oh_modules/@nimsdk/team/libs/base.har": "@nimsdk/base@../oh_modules/.ohpm/@nimsdk+nim@10.9.10/oh_modules/@nimsdk/nim/libs/base.har", + "@nimsdk/base@../oh_modules/.ohpm/@nimsdk+user@10.9.10/oh_modules/@nimsdk/user/libs/base.har": "@nimsdk/base@../oh_modules/.ohpm/@nimsdk+nim@10.9.10/oh_modules/@nimsdk/nim/libs/base.har", + "@nimsdk/base@10.9.10": "@nimsdk/base@../oh_modules/.ohpm/@nimsdk+nim@10.9.10/oh_modules/@nimsdk/nim/libs/base.har", + "@nimsdk/conversation@10.9.10": "@nimsdk/conversation@10.9.10", + "@nimsdk/friend@10.9.10": "@nimsdk/friend@10.9.10", + "@nimsdk/message@10.9.10": "@nimsdk/message@10.9.10", + "@nimsdk/nim@10.9.10": "@nimsdk/nim@10.9.10", + "@nimsdk/team@10.9.10": "@nimsdk/team@10.9.10", + "@nimsdk/user@10.9.10": "@nimsdk/user@10.9.10", + "@nimsdk/vendor@1.0.0": "@nimsdk/vendor@1.0.0", + "class-transformer@^0.5.1": "class-transformer@0.5.1", + "reflect-metadata@^0.1.13": "reflect-metadata@0.2.1" + }, + "packages": { + "@nimkit/corekit@../corekit": { + "name": "@nimkit/corekit", + "version": "1.1.0", + "resolved": "../corekit", + "registryType": "local" + }, + "@nimsdk/base@../oh_modules/.ohpm/@nimsdk+nim@10.9.10/oh_modules/@nimsdk/nim/libs/base.har": { + "name": "@nimsdk/base", + "version": "10.9.10", + "resolved": "../oh_modules/.ohpm/@nimsdk+nim@10.9.10/oh_modules/@nimsdk/nim/libs/base.har", + "registryType": "local", + "dependencies": { + "@nimsdk/vendor": "1.0.0" + } + }, + "@nimsdk/conversation@10.9.10": { + "name": "@nimsdk/conversation", + "version": "10.9.10", + "integrity": "sha512-1HLvs19/GJAHeIOCN0OiKlowkg6dzZwvZK0Jqu7tAcYGcLl4+G/Z3pwsGHhv+E2Tzs8FHZCqbESMgSh+LNyt/g==", + "resolved": "https://repo.harmonyos.com/ohpm/@nimsdk/conversation/-/conversation-10.9.10.har", + "registryType": "ohpm", + "dependencies": { + "@nimsdk/base": "file:./libs/base.har", + "@nimsdk/vendor": "1.0.0" + } + }, + "@nimsdk/friend@10.9.10": { + "name": "@nimsdk/friend", + "version": "10.9.10", + "integrity": "sha512-JVACpT8xqLLaN8D26YHmwfsS1dHFQvBnP3Jyk9El89P2trn/2ZFLvnQjxzyBDsqJRUtNFfIrN+TK7Idmud4ACQ==", + "resolved": "https://repo.harmonyos.com/ohpm/@nimsdk/friend/-/friend-10.9.10.har", + "registryType": "ohpm", + "dependencies": { + "@nimsdk/base": "file:./libs/base.har", + "@nimsdk/vendor": "1.0.0" + } + }, + "@nimsdk/message@10.9.10": { + "name": "@nimsdk/message", + "version": "10.9.10", + "integrity": "sha512-f59rWiM4SjhhxNftRUt9vg7lIwkGycV/aL8J3omH+Te4SMbUGolwDGErDr7adtZ3tDUThtxxgU8n5tD28TBRtA==", + "resolved": "https://repo.harmonyos.com/ohpm/@nimsdk/message/-/message-10.9.10.har", + "registryType": "ohpm", + "dependencies": { + "@nimsdk/base": "file:./libs/base.har", + "@nimsdk/vendor": "1.0.0" + } + }, + "@nimsdk/nim@10.9.10": { + "name": "@nimsdk/nim", + "version": "10.9.10", + "integrity": "sha512-WpT8vBTld92ExtH30Ffsm+xq6BW6/UFj8SuhJrcQaZY3AYf9sg+d+euqx/dFzjZin5cWRxd/yoodBiVcGfsM4w==", + "resolved": "https://repo.harmonyos.com/ohpm/@nimsdk/nim/-/nim-10.9.10.har", + "registryType": "ohpm", + "dependencies": { + "@nimsdk/base": "file:./libs/base.har", + "@nimsdk/vendor": "1.0.0" + } + }, + "@nimsdk/team@10.9.10": { + "name": "@nimsdk/team", + "version": "10.9.10", + "integrity": "sha512-T4YSN395VXQr1TDX2B24DmGYuvUgUqE7wndbleR980wEyki9IfhC2VxxJ1yajhxVlVkfmuBjCB/eKWL0zLzu5A==", + "resolved": "https://repo.harmonyos.com/ohpm/@nimsdk/team/-/team-10.9.10.har", + "registryType": "ohpm", + "dependencies": { + "@nimsdk/base": "file:./libs/base.har", + "@nimsdk/vendor": "1.0.0" + } + }, + "@nimsdk/user@10.9.10": { + "name": "@nimsdk/user", + "version": "10.9.10", + "integrity": "sha512-KyWVDDPbymj3qoC8Y0mB8umgvLg89Y2cB02tM35oSG8IW95C936v5ogip2Jk7qAfabXxI/XTyy5wQoW1z950JA==", + "resolved": "https://repo.harmonyos.com/ohpm/@nimsdk/user/-/user-10.9.10.har", + "registryType": "ohpm", + "dependencies": { + "@nimsdk/base": "file:./libs/base.har", + "@nimsdk/vendor": "1.0.0" + } + }, + "@nimsdk/vendor@1.0.0": { + "name": "@nimsdk/vendor", + "version": "1.0.0", + "integrity": "sha512-q49MJM6PfucNs8jvLP56a2etyqRfZCeJaMa1BT9vO4sIgwt15bin+hpUWZ1qkflBs9YkDb2nMIX5O8zt556muw==", + "resolved": "https://repo.harmonyos.com/ohpm/@nimsdk/vendor/-/vendor-1.0.0.har", + "registryType": "ohpm" + }, + "class-transformer@0.5.1": { + "name": "class-transformer", + "version": "0.5.1", + "integrity": "sha512-SQa1Ws6hUbfC98vKGxZH3KFY0Y1lm5Zm0SY8XX9zbK7FJCyVEac3ATW0RIpwzW+oOfmHE5PMPufDG9hCfoEOMw==", + "resolved": "https://repo.harmonyos.com/ohpm/class-transformer/-/class-transformer-0.5.1.tgz", + "shasum": "24147d5dffd2a6cea930a3250a677addf96ab336", + "registryType": "ohpm" + }, + "reflect-metadata@0.2.1": { + "name": "reflect-metadata", + "version": "0.2.1", + "integrity": "sha512-i5lLI6iw9AU3Uu4szRNPPEkomnkjRTaVt9hy/bn5g/oSzekBSMeLZblcjP74AW0vBabqERLLIrz+gR8QYR54Tw==", + "resolved": "https://repo.harmonyos.com/ohpm/reflect-metadata/-/reflect-metadata-0.2.1.tgz", + "shasum": "8d5513c0f5ef2b4b9c3865287f3c0940c1f67f74", + "registryType": "ohpm" + } + } +} \ No newline at end of file diff --git a/chatkit/oh-package.json5 b/chatkit/oh-package.json5 new file mode 100644 index 0000000..e75f57a --- /dev/null +++ b/chatkit/oh-package.json5 @@ -0,0 +1,21 @@ +{ + "name": "@nimkit/chatkit", + "version": "10.1.0", + "description": "Please describe the basic information.", + "main": "Index.ets", + "author": "", + "license": "Apache-2.0", + "dependencies": { + "@nimsdk/conversation": "10.9.10", + "@nimsdk/message": "10.9.10", + "@nimsdk/team": "10.9.10", + "@nimsdk/user": "10.9.10", + "@nimsdk/friend": "10.9.10", + "@nimsdk/nim": "10.9.10", + "@nimsdk/base": "10.9.10", + "@nimkit/corekit": "file:../corekit", + "class-transformer": "^0.5.1", + "reflect-metadata": "^0.1.13", + // 用于嵌套对象@Type反射 + } +} \ No newline at end of file diff --git a/chatkit/src/main/ets/ChatKitClient.ets b/chatkit/src/main/ets/ChatKitClient.ets new file mode 100644 index 0000000..a32029c --- /dev/null +++ b/chatkit/src/main/ets/ChatKitClient.ets @@ -0,0 +1,185 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { CoreKitClient } from '@nimkit/corekit'; +import { + IM_SDK_VERSION, + NIM, + NIMInterface, + V2NIMConnectStatus, + V2NIMDataSyncState, + V2NIMDataSyncType, + V2NIMEnableServiceType, + V2NIMError, + V2NIMLoginStatus, + V2NIMMessageRevokeNotification +} from '@nimsdk/base'; +import { ContactRepo } from '../../../Index'; +import { KitLogger } from './logger/AppLogger'; +import { LoggerKitImpl } from './logger/LoggerKitImpl'; +import { ChatRepo } from './repo/ChatRepo'; +import { saveLocalRevokeMessageFormOther } from './utils/MessageUtils'; + +export const currentConversationChanged: string = 'CurrentConversationChanged' + +export class ChatKitClient { + declare static nim: NIMInterface + static haveSyncedConversation: boolean = false + //是否主动离开群 + static selfLeaveTeam = false + static hasInitListener = false + static currentConversationId: string = '' + static networkAvailable: boolean = true + static logger: KitLogger | undefined = undefined + + static init(nimSdk: NIMInterface, appKey: string, disableLog?: boolean) { + ChatKitClient.nim = nimSdk + if (disableLog !== true) { + if (nimSdk instanceof NIM) { + let logger = new LoggerKitImpl(nimSdk.context.cacheDir) + ChatKitClient.logger = new KitLogger(logger) + } + } + ChatKitClient.haveSyncedConversation = false + ChatKitClient.initListener() + CoreKitClient.init({ + appKey: appKey, + imVersion: IM_SDK_VERSION, + }) + } + + /** + * 长连接是否断开 + * 可用于判断网络是否断开 + */ + static connectBroken() { + return ChatKitClient.nim.loginService.getConnectStatus() !== V2NIMConnectStatus.V2NIM_CONNECT_STATUS_CONNECTED + } + + /** + * 设置当前会话id + * @param conversationId 当前会话id + */ + static setCurrentConversationId(conversationId: string) { + ChatKitClient.currentConversationId = conversationId + getContext().eventHub.emit(currentConversationChanged, conversationId) + } + + /** + * 清除当前会话id + */ + static clearCurrentConversationId() { + ChatKitClient.currentConversationId = '' + getContext().eventHub.emit(currentConversationChanged, '') + } + + /** + * 获取当前会话id + * @returns 当前会话id + */ + static getCurrentConversationId(): string { + return ChatKitClient.currentConversationId + } + + /** + * 是否登录 + * @returns + */ + static hasLogin(): boolean { + return ChatKitClient.nim != null && ChatKitClient.nim.loginService.getLoginUser() != null + } + + static getLoginUserId(): string { + return ChatKitClient.nim.loginService.getLoginUser() + } + + /** + * IM 主数据是否同步完成 + * @returns + */ + static isMainDataSynced(): boolean { + let dataSync = ChatKitClient.nim.loginService.getDataSync() + if (dataSync != null) { + for (const item of dataSync) { + if (item.type === V2NIMDataSyncType.V2NIM_DATA_SYNC_TYPE_MAIN && + item.state === V2NIMDataSyncState.V2NIM_DATA_SYNC_STATE_COMPLETED) { + return true + } + } + } + return false + } + + static isLocalConversation(): boolean { + return ChatKitClient.nim.isServiceEnable(V2NIMEnableServiceType.LOCAL_CONVERSATION) + } + + /** + * 等待登录后执行 + */ + static runAfterLoggedIn(fn: Function) { + if (ChatKitClient.nim.loginService?.getLoginStatus() === V2NIMLoginStatus.V2NIM_LOGIN_STATUS_LOGINED) { + fn() + } else { + const onLoginStatusFunc = (status: V2NIMLoginStatus) => { + if (status === V2NIMLoginStatus.V2NIM_LOGIN_STATUS_LOGINED) { + fn() + ChatKitClient.nim.loginService.off('onLoginStatus', onLoginStatusFunc) + } + } + ChatKitClient.nim.loginService.on('onLoginStatus', onLoginStatusFunc) + } + } + + /* + * 销毁 清理监听 + */ + static onDestroy() { + ChatKitClient.hasInitListener = false + ChatKitClient.haveSyncedConversation = false + ChatKitClient.selfLeaveTeam = false + ChatKitClient.currentConversationId = '' + ChatRepo.offRevokeMessage(ChatKitClient.onRevokeFun) + ChatKitClient.nim.conversationService?.off('onSyncFinished', ChatKitClient.onSyncFinishedFun) + ChatKitClient.nim.loginService.off('onDataSync', ChatKitClient.dataSyncFun) + + } + + /** + * 初始化监听 + */ + private static initListener() { + if (ChatKitClient.hasInitListener) { + return + } + console.info("netease ChatKitClient initListener "); + // 数据同步监听 + ChatKitClient.nim.conversationService?.on('onSyncFinished', ChatKitClient.onSyncFinishedFun) + ChatKitClient.nim.loginService.on('onDataSync', ChatKitClient.dataSyncFun) + // 消息撤回监听,消息撤回后,会收到通知 + ChatRepo.onRevokeMessage(ChatKitClient.onRevokeFun) + ChatKitClient.hasInitListener = true + + } + + private static onSyncFinishedFun = () => { + console.debug(`Performance Test onSyncFinishedFun`) + ChatKitClient.haveSyncedConversation = true + } + private static dataSyncFun = (type: V2NIMDataSyncType, state: V2NIMDataSyncState, error?: V2NIMError) => { + if (state === V2NIMDataSyncState.V2NIM_DATA_SYNC_STATE_COMPLETED) { + ContactRepo.getFriendList() + } + } + private static onRevokeFun = (messages: V2NIMMessageRevokeNotification[]) => { + messages.forEach((msg, index, messages) => { + if (msg.messageRefer.conversationId !== ChatKitClient.currentConversationId) { + saveLocalRevokeMessageFormOther(msg.messageRefer.conversationId, msg, false) + } + }) + } +} \ No newline at end of file diff --git a/chatkit/src/main/ets/IMKitConfigCenter.ets b/chatkit/src/main/ets/IMKitConfigCenter.ets new file mode 100644 index 0000000..2c68aa3 --- /dev/null +++ b/chatkit/src/main/ets/IMKitConfigCenter.ets @@ -0,0 +1,13 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +@ObservedV2 +export class IMKitConfigCenter { + // 是否使用本地会话列表 + @Trace static enableLocalConversation: boolean = true; +} + diff --git a/chatkit/src/main/ets/NEFriendUserCache.ets b/chatkit/src/main/ets/NEFriendUserCache.ets new file mode 100644 index 0000000..3017cff --- /dev/null +++ b/chatkit/src/main/ets/NEFriendUserCache.ets @@ -0,0 +1,194 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { ChatKitClient } from './ChatKitClient'; +import { NEUserWithFriend } from './model/NEUserWithFriend'; +import { V2NIMFriend, V2NIMUser } from '@nimsdk/base'; +import { ContactRepo } from './repo/ContactRepo'; + +interface updateFriendInfoParams { + user?: V2NIMUser; + friend?: V2NIMFriend; + friendUser?: NEUserWithFriend; +} + +/// 好友信息缓存,只缓存好友 +@ObservedV2 +export class NEFriendUserCache { + @Trace public static mineUserCache?: NEUserWithFriend + // 黑名单账号集合 + public blockAccountList: string[] = [] + // 好友列表,包括黑名单中好友 + public friendCache: Map = new Map() + + private constructor() { + ContactRepo.addListener() + ContactRepo.getFriendList() + ContactRepo.getUserListFromCloud([ChatKitClient.getLoginUserId()]) + ContactRepo.getBlockList() + } + + public static getInstance() { + if (!AppStorage.get(NEFriendUserCache.name)) { + let instance = new NEFriendUserCache() + AppStorage.setOrCreate(NEFriendUserCache.name, instance); + } + return AppStorage.get(NEFriendUserCache.name) as NEFriendUserCache; + } + + /// 是否是自己 + public static isMe(accountId: string): Boolean { + return NEFriendUserCache.mineUserCache?.user?.accountId === accountId + } + + /// 好友缓存是否为空 + public isEmpty(): Boolean { + if (this.friendCache == undefined || this.friendCache.size === 0) { + return true + } + + return false + } + + /// 是否是好友 + public isFriend(accountId: string): Boolean { + return this.friendCache.has(accountId) && !this.blockAccountList.includes(accountId) + } + + /// 添加(更新)好友信息 + public updateFriendInfo(params: updateFriendInfoParams) { + let accountId = "" + if (params.user) { + accountId = params.user.accountId + let friendUser = this.friendCache.get(accountId) + if (friendUser) { + friendUser.user = params.user + } else { + this.friendCache.set(accountId, new NEUserWithFriend({ + user: params.user + })) + } + } + + if (params.friend) { + accountId = params.friend.accountId + let friendUser = this.friendCache.get(accountId) + if (friendUser) { + friendUser.friend = params.friend + friendUser.user = params.friend.userProfile + } else { + this.friendCache.set(accountId, new NEUserWithFriend({ + friend: params.friend + })) + } + } + + if (params.friendUser && params.friendUser.user?.accountId) { + accountId = params.friendUser.user.accountId + this.friendCache.set(accountId, params.friendUser) + } + } + + /// 使用好友列表初始化缓存 + public loadFriendList(friends: V2NIMFriend[]) { + friends.forEach((friend: V2NIMFriend) => { + this.updateFriendInfo({ + friend: friend + }) + }) + + ContactRepo.listener.emit('loadFriendCache') + } + + /// 获取缓存的好友信息 + public getFriendById(accountId: string) { + return this.friendCache.get(accountId) + } + + /** + * 通过用户ID列表获取用户信息 + * @param accIds + * @returns + */ + public getFriendsByIds(accIds: string[]) { + let result: NEUserWithFriend[] = [] + accIds.forEach((accId) => { + let user = this.friendCache.get(accId) + if (user) { + result.push(user) + } + }) + return result + } + + /// 获取缓存的好友信息列表,包含黑名单中的好友 + public getFriendList() { + return Array.from(this.friendCache.values()) + } + + /// 获取缓存的好友信息列表,不包含黑名单中的好友 + public getFriendListNotInBlocklist() { + let friends: Map = new Map() + this.friendCache.forEach((value, key) => { + if (!this.blockAccountList.includes(key)) { + friends.set(key, value) + } + }) + + return Array.from(friends.values()) + } + + /// 获取缓存的黑名单列表 + public getBlocklist(): string[] { + return this.blockAccountList + } + + /// 删除好友信息缓存 + public removeFriendInfo(accountId: string) { + this.friendCache.delete(accountId) + ContactRepo.listener.emit('removeFriendInfo', accountId) + } + + /// 删除所有好友信息缓存 + public removeAllFriendInfo() { + this.friendCache.clear() + this.blockAccountList = [] + ContactRepo.removeListener() + AppStorage.delete(NEFriendUserCache.name) + } + + /// 初始化黑名单 + public initBlockAccountSet(blockList: string[]) { + this.blockAccountList = blockList + } + + /// 是否是黑名单账号 + public isBlockAccount(accountId: string) { + return this.blockAccountList.includes(accountId) + } + + /// 更新黑名单 + public addBlockAccount(accountId: string) { + if (!this.blockAccountList.includes(accountId)) { + this.blockAccountList.push(accountId) + ContactRepo.listener.emit('addBlockAccount', accountId) + } + } + + /// 移除黑名单账号 + public removeBlockAccount(accountId: string) { + if (this.blockAccountList.includes(accountId)) { + for (let index = 0; index < this.blockAccountList.length; index++) { + if (this.blockAccountList[index] === accountId) { + this.blockAccountList.splice(index, 1) + ContactRepo.listener.emit('removeBlockAccount', accountId) + break + } + } + } + } +} \ No newline at end of file diff --git a/chatkit/src/main/ets/cache/TeamMemberCache.ets b/chatkit/src/main/ets/cache/TeamMemberCache.ets new file mode 100644 index 0000000..b9c12aa --- /dev/null +++ b/chatkit/src/main/ets/cache/TeamMemberCache.ets @@ -0,0 +1,379 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { + V2NIMError, + V2NIMFriend, + V2NIMQueryDirection, + V2NIMTeam, + V2NIMTeamMember, + V2NIMTeamMemberRole, + V2NIMTeamType, + V2NIMUser +} from '@nimsdk/base'; +import { ChatKitClient } from '../ChatKitClient'; +import { TeamMemberWithUser } from '../model/TeamMemberWithUser'; +import { TeamRepo } from '../repo/TeamRepo'; + +@ObservedV2 +export class TeamMemberCache { + static logTag = 'TeamMemberCache' + //全成员列表 + @Trace membersMap: Map = new Map() + //自己的群身份 + @Trace mineTeamMember: V2NIMTeamMember | undefined = undefined + //群组Id + teamId: string = '' + //群组 + team?: V2NIMTeam = undefined + //下次拉去的token + nextToken = '' + //是否拉完了 + isFinish = false + private static instance: TeamMemberCache + + private constructor() { + + } + + public static getInstance(): TeamMemberCache { + if (!TeamMemberCache.instance) { + TeamMemberCache.instance = new TeamMemberCache() + } + return TeamMemberCache.instance + } + + /** + * 初始化信息 + * @param teamId + * @param team + */ + intTeamInfo(teamId: string, team?: V2NIMTeam) { + if (this.teamId !== teamId) { + this.membersMap.clear() + this.mineTeamMember = undefined + this.teamId = teamId + this.team = team + this.isFinish = false + this.initMemberChangeListener() + } + } + + /** + * 是否为空 + * @returns + */ + isEmpty(): boolean { + return this.membersMap.size <= 0 + } + + /** + * 是否需要拉取 + * @returns + */ + needFetchMember(): boolean { + if (this.membersMap.size <= 0) { + return true + } + if (this.membersMap.size < 100 && this.isFinish === false) { + return true + } + return false + } + + /** + * 好友信息变更 + * @param friend + */ + onFriendInfoChanged(friend: V2NIMFriend) { + let member = this.membersMap.get(friend.accountId) + if (member) { + member.friendInfo = friend + this.membersMap.set(friend.accountId, member) + } + } + + + /** + * 群乘以信息变更 + * @param members + */ + onTeamMemberInfoUpdated(members: V2NIMTeamMember[]) { + if (members[0].teamId === this.teamId) { + members.forEach((m) => { + let member = this.membersMap.get(m.accountId) + if (member) { + member.teamMember = m + this.membersMap.set(m.accountId, member) + if (m.accountId === ChatKitClient.getLoginUserId()) { + this.mineTeamMember = m + } + } + }) + } + } + + /** + * 离开群 + * @param members + */ + onTeamMemberLeft(members: V2NIMTeamMember[]) { + if (members[0].teamId === this.teamId) { + let removeIds: string[] = members.map(member => member.accountId) + removeIds.forEach((e) => { + this.membersMap.delete(e) + }) + } + } + + /** + * 踢人 + * @param accId + * @param members + */ + onTeamMemberKicked(accId: string, members: V2NIMTeamMember[]) { + if (members[0].teamId === this.teamId) { + let removeIds: string[] = members.map(member => member.accountId) + removeIds.forEach((e) => { + this.membersMap.delete(e) + }) + } + } + + /** + * 成员加入 + * @param members + */ + onTeamMemberJoined(members: V2NIMTeamMember[]) { + if (members[0].teamId === this.teamId) { + let accIds = members.map(m => m.accountId) + TeamRepo.getTeamMembersByIds(this.teamId, V2NIMTeamType.V2NIM_TEAM_TYPE_NORMAL, + accIds).then((newMembers) => { + newMembers.forEach((m) => { + this.membersMap.set(m.getAccId(), m) + }) + }) + } + } + + /** + * 获取所有成员的accId + * @returns + */ + getAllMemberAccounts(): string[] { + return Array.from(this.membersMap.keys()) + } + + /** + * 获取所有的成员列表 + * @returns + */ + getAllMembers(): TeamMemberWithUser[] { + return Array.from(this.membersMap.values()).sort((a, b) => this.sortTeamMember(a, b)) + } + + // 群更新 + onTeamInfoUpdated = (team: V2NIMTeam) => { + if (team.teamId === this.teamId) { + this.team = team + } + } + /** + * 刷新群信息 + */ + onSyncFinished = () => { + if (this.teamId) { + TeamRepo.getTeamInfo(this.teamId, V2NIMTeamType.V2NIM_TEAM_TYPE_NORMAL) + .then((team) => { + this.team = team + }) + TeamRepo.getTeamMembersByIds( + this.teamId, V2NIMTeamType.V2NIM_TEAM_TYPE_NORMAL, [ChatKitClient.getLoginUserId()] + ) + .then((members: TeamMemberWithUser[]) => { + if (members.length > 0) { + this.mineTeamMember = members[0].teamMember + } + }) + } + + } + + /** + * 用户信息变更 + * @param users + */ + onUserProfileChanged(users: V2NIMUser[]) { + users.forEach((user) => { + let member = this.membersMap.get(user.accountId) + if (member) { + member.userInfo = user + this.membersMap.set(user.accountId, member) + } + }) + } + + + /** + * 初始化成员信息变化回调 + */ + initMemberChangeListener() { + //用户信息变更 + ChatKitClient.nim.userService?.on('onUserProfileChanged', this.onUserProfileChanged.bind(this)) + //好友信息变更 + ChatKitClient.nim.friendService?.on('onFriendInfoChanged', this.onFriendInfoChanged.bind(this)) + //群成员信息变更 + ChatKitClient.nim.teamService?.on('onTeamMemberInfoUpdated', this.onTeamMemberInfoUpdated.bind(this)) + ChatKitClient.nim.teamService?.on('onTeamMemberLeft', this.onTeamMemberLeft.bind(this)) + ChatKitClient.nim.teamService?.on('onTeamMemberKicked', this.onTeamMemberKicked.bind(this)) + ChatKitClient.nim.teamService?.on('onTeamMemberJoined', this.onTeamMemberJoined.bind(this)) + //群信息变更 + ChatKitClient.nim.teamService?.on('onTeamInfoUpdated', this.onTeamInfoUpdated.bind(this)) + + //断网 + ChatKitClient.nim.teamService?.on('onSyncFinished', this.onSyncFinished.bind(this)) + + } + + /** + * 初始化群信息 + */ + async getTeam(): Promise { + if (!this.team) { + this.team = await TeamRepo.getTeamInfo(this.teamId, V2NIMTeamType.V2NIM_TEAM_TYPE_NORMAL) + } + return this.team + } + + /** + * 拉取全量成员 + */ + async loadAllTeamMember() { + if (this.team) { + while (!this.isFinish) { + await this.getMemberList() + } + } + } + + async getMoreMemberList() { + if (!this.isFinish) { + await this.getMemberList() + } + } + + async getMemberList() { + let result = await TeamRepo.getTeamMembers(this.teamId, + V2NIMTeamType.V2NIM_TEAM_TYPE_NORMAL, { + nextToken: this.nextToken, + direction: V2NIMQueryDirection.V2NIM_QUERY_DIRECTION_ASC + }).catch((e: V2NIMError) => { + console.debug(`${TeamMemberCache.logTag} getTeamMembers error code = ${e.code}`) + }) + if (result) { + this.isFinish = result.finished + this.nextToken = result.nextToken + result.memberList.forEach((e) => { + this.membersMap.set(e.getAccId(), e) + }) + let mineMember = result.memberList.find(member => member.getAccId() === ChatKitClient.getLoginUserId()) + if (mineMember) { + this.mineTeamMember = mineMember.teamMember + } + } + + } + + //群成员排序 + sortTeamMember(a: TeamMemberWithUser, b: TeamMemberWithUser): number { + if (a.teamMember.memberRole === b.teamMember.memberRole) { + return a.teamMember.joinTime - b.teamMember.joinTime + } + if (a.teamMember.memberRole === V2NIMTeamMemberRole.V2NIM_TEAM_MEMBER_ROLE_OWNER) { + return -1 + } + if (b.teamMember.memberRole === V2NIMTeamMemberRole.V2NIM_TEAM_MEMBER_ROLE_OWNER) { + return 1 + } + if (a.teamMember.memberRole === V2NIMTeamMemberRole.V2NIM_TEAM_MEMBER_ROLE_MANAGER) { + return -1 + } + if (b.teamMember.memberRole === V2NIMTeamMemberRole.V2NIM_TEAM_MEMBER_ROLE_MANAGER) { + return 1 + } + return a.teamMember.joinTime - b.teamMember.joinTime + } + + /** + * 获取自己的成员信息 + * @returns + */ + async getMineMember(): Promise { + if (!this.mineTeamMember) { + let mineMember = (await TeamRepo.getTeamMembersByIds( + this.teamId, V2NIMTeamType.V2NIM_TEAM_TYPE_NORMAL, [ChatKitClient.getLoginUserId()] + ) + ).find(m => m.getAccId() === ChatKitClient.getLoginUserId()) + if (mineMember) { + this.membersMap.set(mineMember.getAccId(), mineMember) + this.mineTeamMember = mineMember.teamMember + } + } + return this.mineTeamMember + } + + /** + * 根据accId 获取具体的成员 + * @param account + * @returns + */ + async getMemberById(account: string): Promise { + let member = this.membersMap.get(account) + if (member) { + return member + } else { + let result = (await TeamRepo.getTeamMembersByIds( + this.teamId, V2NIMTeamType.V2NIM_TEAM_TYPE_NORMAL, [account] + )) + if (result.length > 0) { + const m = result[0] + this.membersMap.set(m.getAccId(), m) + return m + } + } + return undefined + } + + clear() { + this.membersMap.clear() + this.mineTeamMember = undefined + this.teamId = '' + this.team = undefined + this.isFinish = false + this.nextToken = '' + //用户信息变更 + ChatKitClient.nim.userService?.off('onUserProfileChanged', this.onUserProfileChanged.bind(this)) + //好友信息变更 + ChatKitClient.nim.friendService?.off('onFriendInfoChanged', this.onFriendInfoChanged.bind(this)) + //群成员信息变更 + ChatKitClient.nim.teamService?.off('onTeamMemberInfoUpdated', this.onTeamMemberInfoUpdated.bind(this)) + ChatKitClient.nim.teamService?.off('onTeamMemberLeft', this.onTeamMemberLeft.bind(this)) + ChatKitClient.nim.teamService?.off('onTeamMemberKicked', this.onTeamMemberKicked.bind(this)) + ChatKitClient.nim.teamService?.off('onTeamMemberJoined', this.onTeamMemberJoined.bind(this)) + //群信息变更 + ChatKitClient.nim.teamService?.off('onTeamInfoUpdated', this.onTeamInfoUpdated.bind(this)) + ChatKitClient.nim.teamService?.off('onSyncFinished', this.onSyncFinished.bind(this)) + + } + + /** + * 是否已经加载了所有成员 + * @returns + */ + haveLoadAllMember(): boolean { + return this.isFinish + } +} \ No newline at end of file diff --git a/chatkit/src/main/ets/constant/Constant.ets b/chatkit/src/main/ets/constant/Constant.ets new file mode 100644 index 0000000..1486814 --- /dev/null +++ b/chatkit/src/main/ets/constant/Constant.ets @@ -0,0 +1,47 @@ +// 用于显示合并后的消息的发送方Nick的key +export const mergedMessageNickKey: string = 'mergedMessageNickKey'; + +// 用于显示合并后的消息的发送方avatar的key +export const mergedMessageAvatarKey: string = 'mergedMessageAvatarKey'; + +// 合并转发消息文件名前缀 +export const multiForwardFileName = "multiForward" + +/// 合并转发消息最大层数(深度): 3 +export let mergedMessageMaxDepth = 3 + +/// 合并转发消息限制条数: 100 +export let mergedMessageLimitCount = 100 + +/// 逐条转发消息限制条数: 10 +export let singleMessageLimitCount = 10 + +/// 批量删除消息限制条数: 50 +export let deleteMessagesLimitCount = 50 + +/// 合并转发自定义消息 type: 101 +export let mergedMessageCustomType = 101 + +/// 合并转发自定义消息 cellHeight: 130 +export let mergedMessageCellHeight: number = 130 + +/// 会话选择器最大选择数量: 9 +export let conversationSelectLimitCount: number = 9 + +// 最新操作的类型 +export let keyExtensionLastOptType = "lastOpt" + +// 群自定义配置参数,用于是否群中所有人都可以@所有人配置的KEY值 +export let keyExtensionAtAll = "yxAllowAt" + +// 群自定义配置参数,用于是否群中管理员可以@所有人,允许所有群成员@所有人 +export let typeExtensionAllowAll = "all" + +// 群自定义配置参数,用于是否群中管理员可以@所有人,只允许管理员@所有人 +export let typeExtensionAllowManager = "manager" + +/// 收藏类型与消息类型映射(在类型基础上+1000) +export let collectionTypeOffset = 1000 + +/// 回复消息key, 用于不使用 thread 的消息回复方案 +export let keyReplyMsgKey = "yxReplyMsg" \ No newline at end of file diff --git a/chatkit/src/main/ets/logger/AppLogger.ets b/chatkit/src/main/ets/logger/AppLogger.ets new file mode 100644 index 0000000..cac04a6 --- /dev/null +++ b/chatkit/src/main/ets/logger/AppLogger.ets @@ -0,0 +1,62 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { LogLevel } from '@nimsdk/base' +import { LoggerKitImpl } from './LoggerKitImpl' + +export class KitLogger { + private core: LoggerKitImpl + + public constructor(core: LoggerKitImpl) { + this.core = core + } + + public async debug(label?: string, message?: string, ...args: string[]): Promise { + try { + label = label ? label : 'Debug' + message = message ? message : 'logMessage' + const level = LogLevel.Debug + this.core.write(level, label, message, args) + } catch (e) { + this.core.write(LogLevel.Error, label ?? '', 'debug', ['write error']) + } + } + + public async info(label?: string, message?: string, ...args: string[]): Promise { + try { + label = label ? label : 'Info' + message = message ? message : 'logMessage' + const level = LogLevel.Info + this.core.write(level, label, message, args) + } catch (e) { + this.core.write(LogLevel.Error, label ?? '', 'debug', ['write error']) + } + } + + public async warn(label?: string, message?: string, ...args: string[]): Promise { + try { + label = label ? label : 'Warn' + message = message ? message : 'logMessage' + const level = LogLevel.Warn + this.core.write(level, label, message, args) + } catch (e) { + this.core.write(LogLevel.Error, label ?? '', 'debug', ['write error']) + } + } + + public async error(label?: string, message?: string, ...args: string[]): Promise { + try { + label = label ? label : 'Error' + message = message ? message : 'logMessage' + const level = LogLevel.Error + this.core.write(level, label, message, args) + } catch (e) { + this.core.write(LogLevel.Error, label ?? '', 'debug', ['write error']) + } + } +} + diff --git a/chatkit/src/main/ets/logger/LoggerKitImpl.ets b/chatkit/src/main/ets/logger/LoggerKitImpl.ets new file mode 100644 index 0000000..bd9060e --- /dev/null +++ b/chatkit/src/main/ets/logger/LoggerKitImpl.ets @@ -0,0 +1,248 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { taskpool } from '@kit.ArkTS'; +import { LogLevel, NetWorkingInStance, NIMEStrAnyObj, V2NIMErrorImpl } from '@nimsdk/base'; + +import fs from '@ohos.file.fs'; + +@Concurrent +async function writeLogger(filePath: string, level: string, label: string, message: string, state: string, + ...args: NIMEStrAnyObj[]) { + // CELLULAR = 0, WIFI = 1, ETHERNET = 3, VPN = 4 + const netInfo = NetWorkingInStance.getInstance().getNetInfoSync() + const customInfo = `${state}_${netInfo.netType}_${netInfo.isConnected}` + // date formatter + const date = new Date() + const milliseconds: number = date.getMilliseconds() + const formattedMilliseconds: string = ("00" + milliseconds).slice(-3); + const dateStr = `${date.getMonth() + + 1}-${date.getDate()} ${date.getHours()}:${date.getMinutes()}:${date.getSeconds()}:${formattedMilliseconds}` + const prefix = `[${dateStr}]: ${level}: ${customInfo}: ${label}: ${message} ` + // args formatter + let tempStr = args.map((item) => { + if (item instanceof V2NIMErrorImpl) { + let desc = `${item.name}\n code: ${item.code}\n message: "${item.message}"\n detail: ${item.detail ? + JSON.stringify(item.detail) : ''}` + if (item?.detail?.rawError) { + desc += `\n rawError: ${item.detail.rawError.message}` + } + return desc + } else if (item instanceof Error) { + return item && item.message ? item.message : item + } else if (typeof item === 'object') { + return JSON.stringify(item).replace(/^\[|\]$/g, "").replace(/^\[|\]$/g, "") + } else { + return item + } + }).join(' ') + + tempStr = tempStr.replace(/^"|"$/g, '') + + const logMessage = tempStr ? `${prefix + ': ' + tempStr}\n` : `${prefix}\n` + + const file: fs.File = fs.openSync(filePath, fs.OpenMode.CREATE | fs.OpenMode.READ_WRITE | fs.OpenMode.APPEND) + fs.writeSync(file.fd, logMessage) + fs.closeSync(file) +} + +const TAG = '[LoggerServiceImpl]' + +export class LoggerKitImpl { + // 本地日志,默认保存 15 天 + private static readonly LoggerFileEffectivePeriod: number = 15 + logDir: string = '' + // core: NIM + sequenceRunner: taskpool.SequenceRunner + logLevel: LogLevel + isOpenConsoleLog: boolean + private currentLogPath: string + + public constructor(cacheDir: string, logLevel?: LogLevel, isOpenConsoleLog?: boolean) { + // core.loggerService = this + // this.core = core + this.logDir = cacheDir + '/nim_kit_log' + this.checkLoggerEffectivePeriod(this.logDir) + const formattedDate = this.formattedDate() + this.currentLogPath = this.logDir + `/nim_kit_${formattedDate}.txt` + // this.core.eventBus.on('LoggerServiceImpl/onUploadLogFiles', () => { + // this.uploadZipLogFile(false) + // }) + + this.sequenceRunner = new taskpool.SequenceRunner() + this.logLevel = logLevel ?? LogLevel.Debug + this.isOpenConsoleLog = isOpenConsoleLog ?? false + } + + async write(level: LogLevel, label: string, message: string, ...args: NIMEStrAnyObj[]): Promise { + + let state = 'U' + // const isForeground = this.core.settingService?.v2IGetIsForeground() + // if (typeof isForeground !== 'undefined') { + // state = isForeground ? 'F' : 'B' + // } + + if (this.isWriteLog(level)) { + const filePath = this.currentLogPath + const task = new taskpool.Task(writeLogger, filePath, level, label, message, state, args) + this.sequenceRunner.execute(task) + } + + this.consoleLog(level, label, message, args) + } + + isWriteLog(level: LogLevel): boolean { + switch (this.logLevel) { + case LogLevel.Debug: + return true; + case LogLevel.Info: + return level !== LogLevel.Debug; + case LogLevel.Warn: + return level !== LogLevel.Debug && level !== LogLevel.Info; + case LogLevel.Error: + return level === LogLevel.Error; + default: + return true; + } + } + + consoleLog(level: LogLevel, label: string, message: string, args: NIMEStrAnyObj[]) { + // console log + message = message.slice(0, 2000) + if (this.isOpenConsoleLog) { + if (level === LogLevel.Debug) { + console.debug(label, message, args[0].length === 0 ? '' : JSON.stringify(args[0])) + } else if (level === LogLevel.Info) { + console.info(label, message, args[0].length === 0 ? '' : JSON.stringify(args[0])) + } else if (level === LogLevel.Error) { + console.error(label, message, args[0].length === 0 ? '' : JSON.stringify(args[0])) + } else if (level === LogLevel.Warn) { + console.warn(label, message, args[0].length === 0 ? '' : JSON.stringify(args[0])) + } + } + } + + // async uploadSDKLogs(isActive: boolean): Promise { + // try { + // this.core.logger.info(TAG, 'uploadSDKLogs', isActive) + // return await this.uploadZipLogFile(isActive) + // } catch (e) { + // this.core.logger.error(TAG, 'uploadSDKLogs', isActive, e) + // if (e instanceof V2NIMErrorImpl || e.name === 'V2NIMError') { + // throw e as V2NIMErrorImpl + // } else { + // throw new V2NIMErrorImpl({ + // code: V2NIMErrorCode.V2NIM_ERROR_CODE_FILE_UPLOAD_FAILED, + // detail: { + // reason: 'upload log file: error: ' + `${JSON.stringify(e)}` + // } + // }) + // } + // } + // } + + public getLogDirectory(): string { + return this.logDir + } + + public getLogFilePath(): string { + return this.currentLogPath + } + + async checkLoggerEffectivePeriod(fileDir: string): Promise { + try { + // 获取log list + if (!fs.accessSync(this.logDir)) { + fs.mkdirSync(this.logDir, true); + } + + let fileList: Array = await fs.listFile(fileDir, { recursion: false, listNum: 0 }) + // 大于等于 15 时,淘汰最久的 + if (fileList.length >= LoggerKitImpl.LoggerFileEffectivePeriod) { + fileList.sort((a, b) => a.localeCompare(b)) + let oldestName: string = fileList[0] + let oldestFilePath = `${fileDir} + ${oldestName}` + await fs.unlink(oldestFilePath) + } + } catch (e) { + this.write(LogLevel.Error, 'checkLoggerEffectivePeriod', `fail:${JSON.stringify(e)}, filename ${fileDir}`) + } + } + + // async uploadZipLogFile(isActive: boolean): Promise { + // let outFile = this.getOutputZipFilePath() + // try { + // this.core.logger.info(TAG, 'uploadZipLogFile', isActive) + // // zip log file + // const fileList: Array = await fs.listFile(this.logDir, { recursion: false, listNum: 0 }) + // const zipList = fileList.map(item => this.logDir + '/' + item) + // await zlib.compressFiles(zipList, outFile, { + // level: zlib.CompressLevel.COMPRESS_LEVEL_DEFAULT_COMPRESSION, + // memLevel: zlib.MemLevel.MEM_LEVEL_MAX, + // strategy: zlib.CompressStrategy.COMPRESS_STRATEGY_HUFFMAN_ONLY + // }) + // + // const result: UploadFileResult = await this.core.storageService.uploadFileTask({ + // taskId: guid(), + // uploadParams: { + // filePath: outFile, + // sceneName: V2NIMStorageSceneConfig.DEFAULT_SYSTEM().sceneName, + // } as V2NIMUploadFileParams + // }) + // // 上传成功删除本地zip 文件 + // await this.uploadSendLog(result.url, isActive) + // await fs.unlink(outFile) + // this.core.logger.info(TAG, 'uploadZipLogFile succeed') + // return result.url + // } catch (e) { + // await fs.unlink(outFile) + // this.core.logger.error(TAG, 'uploadZipLogFile', isActive, e) + // if (e instanceof V2NIMErrorImpl || e.name === 'V2NIMError') { + // throw e as V2NIMErrorImpl + // } else { + // throw new V2NIMErrorImpl({ + // code: V2NIMErrorCode.V2NIM_ERROR_CODE_FILE_UPLOAD_FAILED, + // detail: { + // reason: 'upload log file: error: ' + `${JSON.stringify(e)}` + // } + // }) + // } + // } + // } + + // private async uploadSendLog(url: string, isActive: boolean): Promise { + // try { + // this.core.logger.info(TAG, 'uploadSendLog', url, isActive) + // const activeType = isActive ? 1 : 0 + // const uploadLogUrlRequest: UploadLogUrlRequest = new UploadLogUrlRequest( + // url, + // new UploadLogUrlParams(activeType) + // ) + // await this.core.sendCmd('uploadLogUrl', uploadLogUrlRequest) + // } catch (e) { + // this.core.logger.error(TAG, 'uploadSendLog', url, isActive, e) + // } + // } + + private getOutputZipFilePath(): string { + const filepath = this.logDir + `/nim_log.zip` + if (fs.accessSync(filepath)) { + fs.unlinkSync(filepath) + } + + return filepath + } + + private formattedDate(): string { + const date = new Date() + const formattedDate = Intl.DateTimeFormat("en-US", + { year: "numeric", month: "numeric", day: "numeric" } + ).format(date) + .replace(/\//g, '_'); + return formattedDate + } +} \ No newline at end of file diff --git a/chatkit/src/main/ets/logger/LoggerRequest.ets b/chatkit/src/main/ets/logger/LoggerRequest.ets new file mode 100644 index 0000000..9ffb458 --- /dev/null +++ b/chatkit/src/main/ets/logger/LoggerRequest.ets @@ -0,0 +1,31 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +/** + * Request params of protocol: + * uploadLogUrl + */ +export class UploadLogUrlRequest { + public url: string + public info: UploadLogUrlParams + + public constructor(url: string, info: UploadLogUrlParams) { + this.url = url + this.info = info + } +} + +/** + * Params of 'UploadLogUrlRequest' + */ +export class UploadLogUrlParams { + public sdklogUploadType: number + + public constructor(sdklogUploadType: number) { + this.sdklogUploadType = sdklogUploadType + } +} diff --git a/chatkit/src/main/ets/model/ConversationSelectModel.ets b/chatkit/src/main/ets/model/ConversationSelectModel.ets new file mode 100644 index 0000000..dbe42ac --- /dev/null +++ b/chatkit/src/main/ets/model/ConversationSelectModel.ets @@ -0,0 +1,14 @@ +// 转发选择页面数据模型 +@ObservedV2 +export class ConversationSelectModel { + // 会话id + conversationId?: string + // 会话名称 + name?: string + // 会话头像 + avatar?: ResourceStr + // 是否已选中 + @Trace isSelected: boolean = false + // 会话人数,用于展示群人数(单聊默认为 0,群聊为群人数) + memberCount: number = 0 +} \ No newline at end of file diff --git a/chatkit/src/main/ets/model/ConversationSelectParam.ets b/chatkit/src/main/ets/model/ConversationSelectParam.ets new file mode 100644 index 0000000..01cd738 --- /dev/null +++ b/chatkit/src/main/ets/model/ConversationSelectParam.ets @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { ConversationSelectModel } from './ConversationSelectModel'; + + +export class ConversationSelectParam { + filterList?: string[] = []; + selectLimit: number = 200; + onSureButtonClick?: (selectedList: ConversationSelectModel[]) => void = undefined + + constructor(filterList: string[] = [], + selectLimit: number = 200, + onSureButtonClick?: (selectedList: ConversationSelectModel[]) => void + ) { + this.filterList = filterList + this.selectLimit = selectLimit + this.onSureButtonClick = onSureButtonClick + } +} \ No newline at end of file diff --git a/chatkit/src/main/ets/model/ConversationSelectedParam.ets b/chatkit/src/main/ets/model/ConversationSelectedParam.ets new file mode 100644 index 0000000..58e998a --- /dev/null +++ b/chatkit/src/main/ets/model/ConversationSelectedParam.ets @@ -0,0 +1,20 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { ConversationSelectModel } from './ConversationSelectModel'; + + +export class ConversationSelectedParam { + selectedList?: ConversationSelectModel[] = []; + onRemoveButtonClick?: (item: ConversationSelectModel) => void = undefined // 移除按钮点击事件 + + constructor(selectedList?: ConversationSelectModel[], + onRemoveButtonClick?: (item: ConversationSelectModel) => void + ) { + this.selectedList = selectedList + this.onRemoveButtonClick = onRemoveButtonClick + } +} \ No newline at end of file diff --git a/chatkit/src/main/ets/model/CustomMessageAttachment.ets b/chatkit/src/main/ets/model/CustomMessageAttachment.ets new file mode 100644 index 0000000..fe8a593 --- /dev/null +++ b/chatkit/src/main/ets/model/CustomMessageAttachment.ets @@ -0,0 +1,57 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +// 自定义消息附件 +export interface CustomMessageAttachment { + // 自定义消息类型 + type?: string; +} + +// 合并消息 +export interface MergedMessageAttachment extends CustomMessageAttachment { + + // 会话id + sessionId?: string; + + // 会话名称 + sessionName?: string; + + // 合并消息上传NOS后的url + url?: string; + + // 合并消息文件的md5 + md5?: string; + + // 合并消息的深度 + depth?: number; + + // 合并消息的摘要,用于在消息列表展示,默认三条 + abstracts?: MergeMessageAbstract[]; + + // 合并消息的id,用于标识合并消息 + // 通[NIMMessage.uuid]获取 + messageId?: string; +} + +// 合并转发消息的缩略 +export interface MergeMessageAbstract { + // 消息展示的nick,只取fromNick,没有就accId + senderNick: string; + + // 内容,不是Text的显示缩略 + content: string; + + // 发送方的accId + userAccId: string; + +} + +// 消息上传后的信息 +export interface MessageUploadInfo { + url: string; + md5: string; +} \ No newline at end of file diff --git a/chatkit/src/main/ets/model/NEUserWithFriend.ets b/chatkit/src/main/ets/model/NEUserWithFriend.ets new file mode 100644 index 0000000..a8c91e6 --- /dev/null +++ b/chatkit/src/main/ets/model/NEUserWithFriend.ets @@ -0,0 +1,64 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { V2NIMFriend, V2NIMUser } from '@nimsdk/base'; + +interface NEUserWithFriendParams { + friend?: V2NIMFriend; + user?: V2NIMUser; +} + +@ObservedV2 +export class NEUserWithFriend { + @Trace user?: V2NIMUser + @Trace friend?: V2NIMFriend + + constructor(params: NEUserWithFriendParams) { + this.friend = params.friend + if (params.user) { + this.user = params.user + } else { + this.user = params.friend?.userProfile + } + } + + /// 获取显示名称 + /// (备注) > 昵称 > accid + /// - Parameter showAlias: 是否优先显示备注 + public showName(showAlias: boolean = true): string { + if (showAlias && this.friend?.alias && this.friend.alias.length > 0) { + return this.friend?.alias + } + + if (this.user?.name && this.user.name.length > 0) { + return this.user.name + } + + return this.user?.accountId ?? "" + } + + /// 获取简称 (尾部截取) + /// - Parameter showAlias: 是否优先显示备注 + /// - Parameter count: 尾部截取长度 + public shortName(showAlias: boolean = true, count: number = 2): string { + let name = this.showName(showAlias) + if (name) { + const start: number = (name.length - count) > 0 ? name.length - count : 0 + const end: number = name.length + return name.substring(start, end) + } + return "" + } + + /** + * 获取好友备注 + * @returns + */ + public getAlias() { + return this.friend?.alias + } +} \ No newline at end of file diff --git a/chatkit/src/main/ets/model/PersonSelectParam.ets b/chatkit/src/main/ets/model/PersonSelectParam.ets new file mode 100644 index 0000000..ea1477b --- /dev/null +++ b/chatkit/src/main/ets/model/PersonSelectParam.ets @@ -0,0 +1,21 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { NEUserWithFriend } from './NEUserWithFriend'; + +export class PersonSelectParam { + filterList?: string[] = []; + selectLimit: number = 200; + onClickSureButton?: (selectedList: NEUserWithFriend[]) => void = undefined + + constructor(onClickSureButton?: (selectedList: NEUserWithFriend[]) => void, filterList: string[] = [], + selectLimit: number = 200) { + this.filterList = filterList + this.selectLimit = selectLimit + this.onClickSureButton = onClickSureButton + } +} \ No newline at end of file diff --git a/chatkit/src/main/ets/model/RevokeMessageExtension.ets b/chatkit/src/main/ets/model/RevokeMessageExtension.ets new file mode 100644 index 0000000..95c88ad --- /dev/null +++ b/chatkit/src/main/ets/model/RevokeMessageExtension.ets @@ -0,0 +1,14 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +export interface RevokeMessageExtension { + revoke_message_local: boolean, + revoke_message_local_time: number, + revoke_message_local_edit: boolean, + revoke_message_local_content: string, + revoke_message_client_id: string, +} diff --git a/chatkit/src/main/ets/model/TeamMemberWithUser.ets b/chatkit/src/main/ets/model/TeamMemberWithUser.ets new file mode 100644 index 0000000..d132d94 --- /dev/null +++ b/chatkit/src/main/ets/model/TeamMemberWithUser.ets @@ -0,0 +1,131 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { V2NIMFriend, V2NIMTeamMember, V2NIMTeamMemberRole, V2NIMUser } from '@nimsdk/base' + +/** + * 群成员,好友,用户信息的集合 + */ +export class TeamMemberWithUser { + //群成员信息 + teamMember: V2NIMTeamMember + //好友信息 + friendInfo?: V2NIMFriend + //用户信息 + userInfo?: V2NIMUser + + constructor(teamMember: V2NIMTeamMember, + friendInfo?: V2NIMFriend, userInfo?: V2NIMUser) { + this.teamMember = teamMember + this.friendInfo = friendInfo + this.userInfo = userInfo + } + + /** + * 获取头像 + * @returns + */ + getAvatar(): string | undefined { + return this.userInfo?.avatar + } + + /** + * 获取头像nick + * @returns + */ + getAvatarName(): string { + let avatarName = '' + if (this.friendInfo && this.friendInfo.alias && + this.friendInfo.alias.length > 0) { + avatarName = this.friendInfo.alias + } else if (this.userInfo && this.userInfo.name && this.userInfo.name.length > 0) { + avatarName = this.userInfo.name + } else { + avatarName = this.teamMember.accountId + } + return avatarName.length > 2 ? avatarName.substring(avatarName.length - 2, avatarName.length) : avatarName + } + + /** + * 获取@的名称,不包含好友备注 + */ + getAitName(): string { + //群昵称 + if (this.teamMember.teamNick && + this.teamMember.teamNick.length > 0) { + return this.teamMember.teamNick + } + + //用户名 + if (this.userInfo && this.userInfo.name && this.userInfo.name.length > 0) { + return this.userInfo.name + } + //最后accId + return this.teamMember.accountId + } + + /** + * 是否是群主 + * @returns + */ + isOwner(): boolean { + return this.teamMember.memberRole === V2NIMTeamMemberRole.V2NIM_TEAM_MEMBER_ROLE_OWNER + } + + /** + * 是否是管理员 + * @returns + */ + isManager(): boolean { + return this.teamMember.memberRole === V2NIMTeamMemberRole.V2NIM_TEAM_MEMBER_ROLE_MANAGER + } + + /** + * 获取昵称 + * @returns + */ + getNickname(): string { + //优先好友备注 + if (this.friendInfo && this.friendInfo.alias && + this.friendInfo.alias.length > 0) { + return this.friendInfo.alias + } + + //其次群昵称 + if (this.teamMember.teamNick && + this.teamMember.teamNick.length > 0) { + return this.teamMember.teamNick + } + + //再次用户名 + if (this.userInfo && this.userInfo.name && this.userInfo.name.length > 0) { + return this.userInfo.name + } + //最后accId + return this.teamMember.accountId + } + + /** + * 获取群成员Id + * @returns + */ + getAccId(): string { + return this.teamMember.accountId + } +} + +/** + * 群成员请求返回结果 + */ +export interface TeamMemberResult { + //是否结束 + finished: boolean + //下次请求token + nextToken: string + //成员列表 + memberList: TeamMemberWithUser[] +} \ No newline at end of file diff --git a/chatkit/src/main/ets/model/TeamSettingParam.ets b/chatkit/src/main/ets/model/TeamSettingParam.ets new file mode 100644 index 0000000..14571a1 --- /dev/null +++ b/chatkit/src/main/ets/model/TeamSettingParam.ets @@ -0,0 +1,4 @@ +export interface TeamSettingParam { + teamId: string, + memberIds: string[] +} \ No newline at end of file diff --git a/chatkit/src/main/ets/model/ait/AitAllPermission.ets b/chatkit/src/main/ets/model/ait/AitAllPermission.ets new file mode 100644 index 0000000..202e1f4 --- /dev/null +++ b/chatkit/src/main/ets/model/ait/AitAllPermission.ets @@ -0,0 +1,14 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +/** + * @所有人的权限 + */ +export interface AitAllPermission { + yxAllowAt: string + lastOpt: string +} diff --git a/chatkit/src/main/ets/model/ait/AitMessage.ets b/chatkit/src/main/ets/model/ait/AitMessage.ets new file mode 100644 index 0000000..1408832 --- /dev/null +++ b/chatkit/src/main/ets/model/ait/AitMessage.ets @@ -0,0 +1,63 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { AitSegment } from './AitSegment' +import { Type } from 'class-transformer' +import 'reflect-metadata' + +export class AitMessage { + /** + * 账号 + */ + accountId: string = "" + //@的文本 + text: string + //@的信息存储,一个文案可能被@多次 + @Type(() => AitSegment) + segments: AitSegment[] = [] + + constructor(text: string, accountId: string) { + this.text = text + this.accountId = accountId + } + + addSegment(start: number, end: number, broken?: boolean) { + let segment: AitSegment = { + start: start, + end: end, + broken: broken ?? false + } + this.segments.push(...[segment]) + } + + removeSegment(start: number, end: number) { + let index = this.segments.findIndex(e => e.start === start && e.end === end) + if (index >= 0) { + this.segments.splice(index, 1) + } + } + + valid(): boolean { + if (this.segments.length < 0) { + return false + } + for (let segment of this.segments) { + if (!segment.broken) { + return true + } + } + return false + } + + segmentToMap(segment: AitSegment): Map { + let map = new Map() + map.set('start', segment.start) + map.set('end', segment.end) + map.set('broken', segment.broken ?? false) + return map + } +} + diff --git a/chatkit/src/main/ets/model/ait/AitModel.ets b/chatkit/src/main/ets/model/ait/AitModel.ets new file mode 100644 index 0000000..de881af --- /dev/null +++ b/chatkit/src/main/ets/model/ait/AitModel.ets @@ -0,0 +1,271 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { AitMessage } from './AitMessage' +import { plainToClass, Transform, Type } from 'class-transformer' +import 'reflect-metadata' +import { AitSegment } from './AitSegment' +import { JSON } from '@kit.ArkTS' + +//@所有人的Account +export const accountAll: string = "ait_all" + +//@key +export const aitKey: string = 'yxAitMsg' + +/** + * 云信@功能集合 + */ +export interface YxAitMsg { + yxAitMsg?: Map +} + +export class AitModel { + /** + * key 为AccountID + */ + @Type(() => Map) + @Transform((param) => { + const map = new Map(); + if (param.value instanceof Map) { + let params = param.value as Map + params.forEach(( + value, key + ) => { + map.set(key, value) + }) + } + return map; + }) + aitBlocks: Map = new Map() + + reset() { + this.aitBlocks.clear() + } + + /** + * 删除一个@的用户 + * @param deletedText 文本 + * @param endIndex 删除的文本的光标所在位置 + * @param length 删除的文本的长度 + * @returns + */ + deleteAitUser(deletedText: string, endIndex: number, length: number): AitMessage | null { + //如果deletedText为空,直接返回 + if (deletedText.length <= 0) { + return null + } + let len: number = deletedText.length; + //如果aitBlocks 中有Value值和deletedText不匹配则返回 + let removedBlack: AitMessage | null = null; + + for (let aitMsg of this.aitBlocks.values()) { + for (let segment of aitMsg.segments) { + if (endIndex < segment.start) { + segment.start -= length; + segment.end -= length; + continue; + } + if (len < segment.end + 1 || + deletedText.substring(segment.start, segment.end + 1) !== aitMsg.text) { + removedBlack = new AitMessage(aitMsg.text, ""); + removedBlack.addSegment(segment.start, segment.end); + } + } + } + + if (removedBlack !== null) { + this.removeSegment(removedBlack, length); + } + + return removedBlack; + } + + /** + * 删除文本 + * @param endIndex 删除后光标的位置 + * @param length 删除的长度 + */ + deleteText(endIndex: number, length: number) { + let removedBlack: AitMessage | null = null; + for (let aitMsg of this.aitBlocks.values()) { + let deletedSegment: AitSegment | null = null + for (let segment of aitMsg.segments) { + if (endIndex < segment.start) { + segment.start -= length; + segment.end -= length; + continue; + } else if (endIndex < segment.end) { + deletedSegment = segment + } + } + if (deletedSegment !== null) { + aitMsg.removeSegment(deletedSegment.start, deletedSegment.end) + } + if (aitMsg.segments.length <= 0) { + removedBlack = aitMsg + } + } + if (removedBlack !== null) { + this.removeSegment(removedBlack, length) + } + } + + /** + * 删除aitMsg中的segment,如果aitMsg中的segment为空,则删除aitMsg + * 同时处理其他aitMsg中的segment的位置 + * @param removedBlack + * @param deletedLen 删除的文本的长度,如果为正数则其他后面的前移,如果为负数,则其他不变 + */ + removeSegment(removedBlack: AitMessage, deletedLen: number): void { + // 删除aitMsg中的segment,如果aitMsg中的segment为空,则删除aitMsg + let aitMsg: AitMessage | undefined = undefined + let removeKey: string = '' + this.aitBlocks.forEach((value, key) => { + if (value.text === removedBlack.text) { + aitMsg = value + removeKey = key + } + }) + if (aitMsg) { + //artTs 语法要求,重新拷贝 + const aitMessage: AitMessage = aitMsg + const start: number = removedBlack.segments[0].start; + const end: number = removedBlack.segments[0].end; + // 该段文字的长度,加上删除的长度,因为其在前面已经移了deletedLen位 + const length = end - start + 1 - deletedLen; + aitMessage.removeSegment(start, end); + if (aitMessage.segments.length === 0) { + this.aitBlocks.delete(removeKey); + } + if (deletedLen > 0) { + for (const aitMsg of this.aitBlocks.values()) { + for (const segment of aitMsg.segments) { + if (end <= segment.start) { + segment.start -= length; + segment.end -= length; + continue; + } + } + } + } + } + } + + /** + * 用户是否被@ + * @param accId + * @returns + */ + isUserBeenAit(accId: string | null): boolean { + if (accId === null) { + return false; + } + for (let key of this.aitBlocks.keys()) { + if (key === accountAll) { + return true; + } + if (key === accId) { + return true; + } + } + return false; + } + + /** + * 拷贝 + * @param aitModel + */ + fork(aitModel: AitModel) { + this.aitBlocks.clear() + this.aitBlocks = aitModel.aitBlocks + } + + /** + * 根据插入后的Text 文案, segment 移位或者删除。 + * @param changedText + * @param endIndex + * @param length + */ + insertText(endIndex: number, length: number): void { + let removedBlack: AitMessage | null = null; + const start: number = endIndex - length; + for (let aitMsg of this.aitBlocks.values()) { + for (let segment of aitMsg.segments) { + if (start <= segment.start) { + segment.start += length; + segment.end += length; + continue; + } + if (endIndex > segment.start && endIndex <= segment.end) { + removedBlack = new AitMessage(aitMsg.text, ""); + removedBlack.addSegment(segment.start, segment.end); + continue; + } + } + } + if (removedBlack !== null) { + this.removeSegment(removedBlack, -1); + } + } + + /** + * 添加@成员 + * @param account + * @param name + * @param start + */ + addAitMember(account: string, name: string, start: number): void { + for (let aitMsg of this.aitBlocks.values()) { + for (let segment of aitMsg.segments) { + if (start <= segment.start) { + segment.start += name.length; + segment.end += name.length; + continue; + } + } + } + let aitBlock: AitMessage | undefined = this.aitBlocks.get(account); + if (aitBlock === undefined) { + aitBlock = new AitMessage(name, account); + this.aitBlocks.set(account, aitBlock); + } + const end: number = start + name.length - 1; + aitBlock.addSegment(start, end); + } +} + +/** + * Extension 解析获得AitModel + * @param extension + * @returns + */ +export function getAitModelFromJson(extension?: string): AitModel | undefined { + if (extension) { + try { + const obj: Record = JSON.parse(extension) as Record + for (let key of Object.entries(obj)) { + if (key[0] === aitKey) { + let trans: AitModelTrans = { + aitBlocks: key[1] + } + let aitModel: AitModel = plainToClass(AitModel, trans, { enableImplicitConversion: true }) + if (aitModel.aitBlocks.size > 0) { + return aitModel + } + } + } + }catch (e) { + console.error('parse json error', JSON.stringify(e), JSON.stringify(extension)) + return undefined + } + } + return undefined +} + +interface AitModelTrans { + aitBlocks: object +} \ No newline at end of file diff --git a/chatkit/src/main/ets/model/ait/AitSegment.ets b/chatkit/src/main/ets/model/ait/AitSegment.ets new file mode 100644 index 0000000..5a0d594 --- /dev/null +++ b/chatkit/src/main/ets/model/ait/AitSegment.ets @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +/** + * 记录@消息的最小单位 + */ +export class AitSegment { + //@消息的起点 + start: number = 0; + //@消息的终点位置 + end: number = 0; + //是否已经被破坏 + broken: boolean = false +} diff --git a/chatkit/src/main/ets/repo/ChatRepo.ets b/chatkit/src/main/ets/repo/ChatRepo.ets new file mode 100644 index 0000000..62d8f92 --- /dev/null +++ b/chatkit/src/main/ets/repo/ChatRepo.ets @@ -0,0 +1,514 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { + V2NIMAddCollectionParams, + V2NIMCollection, + V2NIMCollectionOption, + V2NIMMessage, + V2NIMMessageDeletedNotification, + V2NIMMessageListOption, + V2NIMMessagePin, + V2NIMMessagePinNotification, + V2NIMMessageRefer, + V2NIMMessageRevokeNotification, + V2NIMMessageRevokeParams, + V2NIMMessageSearchParams, + V2NIMP2PMessageReadReceipt, + V2NIMSendMessageParams, + V2NIMSendMessageResult, + V2NIMTeamMessageReadReceipt, + V2NIMTeamMessageReadReceiptDetail +} from '@nimsdk/base'; +import { ChatKitClient } from '../ChatKitClient'; + +export class ChatRepo { + /** + * 发送消息 + * @param sendFn 消息接受处理方法 + */ + static onSendMessage(sendFn: (message: V2NIMMessage) => void) { + ChatKitClient.nim.messageService?.on('onSendMessage', sendFn); + } + + /** + * 发送消息 + * @param receiveFn 消息接受处理方法 + */ + static offSendMessage(receiveFn: (message: V2NIMMessage) => void) { + ChatKitClient.nim.messageService?.off('onSendMessage', receiveFn); + } + + /** + * 接受消息 + * @param receiveFn 消息接受处理方法 + */ + static onReceiverMessage(receiveFn: (messageList: V2NIMMessage[]) => void) { + ChatKitClient.nim.messageService?.on('onReceiveMessages', receiveFn); + } + + /** + * 接受消息 + * @param receiveFn 消息接受处理方法 + */ + static offReceiverMessage(receiveFn: (messageList: V2NIMMessage[]) => void) { + ChatKitClient.nim.messageService?.off('onReceiveMessages', receiveFn); + } + + /** + * 删除消息 + * @param receiveFn 消息接受处理方法 + */ + static onDeleteMessage(deleteFn: (messageList: V2NIMMessageDeletedNotification[]) => void) { + ChatKitClient.nim.messageService?.on('onMessageDeletedNotifications', deleteFn); + } + + /** + * 删除消息 + * @param receiveFn 消息接受处理方法 + */ + static offDeleteMessage(deleteFn: (messageList: V2NIMMessageDeletedNotification[]) => void) { + ChatKitClient.nim.messageService?.off('onMessageDeletedNotifications', deleteFn); + } + + /** + * 注册撤回消息监听 + * @param receiveFn 消息接受处理方法 + */ + static onRevokeMessage(revokeFn: (messageList: V2NIMMessageRevokeNotification[]) => void) { + ChatKitClient.nim.messageService?.on('onMessageRevokeNotifications', revokeFn); + } + + /** + * 取消注册撤回消息监听 + * @param receiveFn 消息接受处理方法 + */ + static offRevokeMessage(revokeFn: (messageList: V2NIMMessageRevokeNotification[]) => void) { + ChatKitClient.nim.messageService?.off('onMessageRevokeNotifications', revokeFn); + } + + /** + * 注册单聊消息已读回执监听 + * @param receiptsFn 单聊消息已读回执处理方法 + */ + static onP2PMessageReadReceipts(receiptsFn: (messageList: V2NIMP2PMessageReadReceipt[]) => void) { + ChatKitClient.nim.messageService?.on('onReceiveP2PMessageReadReceipts', receiptsFn); + } + + /** + * 取消注册单聊消息已读回执监听 + * @param receiptsFn 单聊消息已读回执处理方法 + */ + static offP2PMessageReadReceipts(receiptsFn: (messageList: V2NIMP2PMessageReadReceipt[]) => void) { + ChatKitClient.nim.messageService?.off('onReceiveP2PMessageReadReceipts', receiptsFn); + } + + /** + * 注册群消息已读回执监听 + * @param receiptsFn 群消息已读回执处理方法 + */ + static onReceiveTeamMessageReadReceipts(receiptsFn: (messageList: V2NIMTeamMessageReadReceipt[]) => void) { + ChatKitClient.nim.messageService?.on('onReceiveTeamMessageReadReceipts', receiptsFn); + } + + /** + * 取消注册群消息已读回执监听 + * @param receiptsFn 群消息已读回执处理方法 + */ + static offReceiveTeamMessageReadReceipts(receiptsFn: (messageList: V2NIMTeamMessageReadReceipt[]) => void) { + ChatKitClient.nim.messageService?.off('onReceiveTeamMessageReadReceipts', receiptsFn); + } + + /** + * 注册PIN消息监听 + * @param pinFn PIN消息监听处理方法 + */ + static onMessagePinNotification(pinFn: (notification: V2NIMMessagePinNotification) => void) { + ChatKitClient.nim.messageService?.on('onMessagePinNotification', pinFn); + } + + /** + * 取消注册PIN消息监听 + * @param pinFn PIN消息监听处理方法 + */ + static offMessagePinNotification(pinFn: (notification: V2NIMMessagePinNotification) => void) { + ChatKitClient.nim.messageService?.off('onMessagePinNotification', pinFn); + } + + /** + * 注册更新消息监听 + * @param modifyFn PIN消息监听处理方法 + */ + static onReceiveMessagesModified(modifyFn: (messageList: V2NIMMessage[]) => void) { + ChatKitClient.nim.messageService?.on('onReceiveMessagesModified', modifyFn); + } + + /** + * 取消更新消息监听 + * @param modifyFn PIN消息监听处理方法 + */ + static offReceiveMessagesModified(modifyFn: (messageList: V2NIMMessage[]) => void) { + ChatKitClient.nim.messageService?.off('onReceiveMessagesModified', modifyFn); + } + + /** + * 撤回消息 + * @param receiveFn 消息接受处理方法 + */ + static removeAllListeners(revokeFn: (messageList: V2NIMMessageRevokeNotification[]) => void) { + ChatKitClient.nim.messageService?.removeAllListeners('onMessageRevokeNotifications'); + } + + /** + * 查询消息 + * @param option + * @returns + */ + static async getMessageList(option: V2NIMMessageListOption): Promise { + let messageList = await ChatKitClient.nim.messageService!!.getMessageList(option) + return messageList; + } + + /** + * 根据 messageRefers 批量查询消息 + * @param option + * @returns + */ + static async getMessageListByRefers(messageRefers: V2NIMMessageRefer[]): Promise { + let messageList = await ChatKitClient.nim.messageService!!.getMessageListByRefers(messageRefers) + return messageList ?? []; + } + + /** + * 检索云端的消息 + * + * @param params 检索参数 + */ + static async searchCloudMessages(params: V2NIMMessageSearchParams): Promise { + let messageList = await ChatKitClient.nim.messageService!!.searchCloudMessages(params) + return messageList ?? []; + } + + /** + * 发送消息 + * + * @param message 消息体, 由 V2NIMMessageCreator 的对应方法创建 + * @param conversationId 会话 id + * @param params 发送消息相关配置参数 + * @param progress 发送消息进度回调. 作用于需要上传的文件,图片,音视频消息 + */ + static async sendMessage( + message: V2NIMMessage, + conversationId: string, + params?: V2NIMSendMessageParams, + progress?: (percentage: number) => void + ): Promise { + return ChatKitClient.nim.messageService?.sendMessage(message, conversationId, params, progress); + } + + /** + * 回复消息 + * + * @param message 需要发送的消息体, 由 V2NIMMessageCreator 的对应方法创建 + * @param replyMessage 被回复的消息 + * @param params 发送消息相关配置参数 + * @param progress 发送消息进度回调. 作用于需要上传的文件,图片,音视频消息 + */ + static async replyMessage(message: V2NIMMessage, replyMessage: V2NIMMessage, params?: V2NIMSendMessageParams, + progress?: (percentage: number) => void): Promise { + const res = await ChatKitClient.nim.messageService?.replyMessage(message, replyMessage, params, progress); + return res!; + } + + /** + * 插入一条本地消息, 该消息不会发送。该消息不会多端同步,只是本端显示 + * @param message 需要插入的消息体 + * @param conversationId 会话 ID + * @param senderId 消息发送者账号 + * @param createTime 指定插入消息时间 + * @returns 插入成功的 message + */ + static async insertMessageToLocal(message: V2NIMMessage, conversationId: string, senderId?: string, + createTime?: number): Promise { + const res = ChatKitClient.nim.messageService?.insertMessageToLocal(message, conversationId, senderId, createTime); + return res!; + } + + /** + * 撤回消息 + * + * @param message 需要撤回的消息 + * @param params 撤回消息相关参数 + */ + static async revokeMessage(message: V2NIMMessage, params?: V2NIMMessageRevokeParams): Promise { + const res = await ChatKitClient.nim.messageService?.revokeMessage(message, params); + return res!; + } + + /** + * 删除单条消息 + * + * 注: 操作成功后, SDK 会抛出事件 {@link V2NIMMessageListener.onMessageDeletedNotifications | V2NIMMessageListener.onMessageDeletedNotifications} + * + * @param message 需要删除的消息 + * @param serverExtension 扩展字段 + */ + static async deleteMessage(message: V2NIMMessage, serverExtension?: string, + onlyDeleteLocal?: boolean): Promise { + const res = await ChatKitClient.nim.messageService?.deleteMessage(message, serverExtension, onlyDeleteLocal); + return res!; + } + + /** + * 批量删除消息 + * + * 注: 操作成功后, SDK 会抛出事件 {@link V2NIMMessageListener.onMessageDeletedNotifications | V2NIMMessageListener.onMessageDeletedNotifications}
+ * - 所删除的消息必须是同一会话的消息
+ * - 限制一次最多删除 50 条消息 + * + * @param messages 需要删除的消息 + * @param serverExtension 扩展字段 + */ + static async deleteMessages(messages: V2NIMMessage[], serverExtension?: string, + onlyDeleteLocal?: boolean): Promise { + const res = await ChatKitClient.nim.messageService?.deleteMessages(messages, serverExtension, onlyDeleteLocal); + return res!; + } + + /** + * pin 一条消息 + * + * @param message 需要被 pin 的消息体 + * @param serverExtension 扩展字段 + * + * 注: 操作成功后, SDK 会抛出事件 {@link V2NIMMessageListener.onMessagePinNotification | V2NIMMessageListener.onMessagePinNotification} + */ + static async pinMessage(message: V2NIMMessage, serverExtension?: string): Promise { + const res = await ChatKitClient.nim.messageService?.pinMessage(message, serverExtension); + return res!; + } + + /** + * 取消一条Pin消息 + * + * @param messageRefer 需要被取消 pin 的消息摘要 + * @param serverExtension 扩展字段 + */ + static async unpinMessage(messageRefer: V2NIMMessageRefer, serverExtension?: string): Promise { + const res = await ChatKitClient.nim.messageService?.unpinMessage(messageRefer, serverExtension); + return res!; + } + + /** + * 获取 pin 消息列表 + * + * @param conversationId 会话 ID + */ + static async getPinnedMessageList(conversationId: string): Promise { + const res = ChatKitClient.nim.messageService?.getPinnedMessageList(conversationId); + return res!; + } + + /** + * 添加一个收藏 + * + * @param params 添加收藏的相关参数 + */ + static async addCollection(params: V2NIMAddCollectionParams): Promise { + const res = await ChatKitClient.nim.messageService?.addCollection(params) + return res!; + } + + /** + * 移除相关收藏 + * + * @param collections 需要移除的相关收藏 + */ + static async removeCollections(collections: V2NIMCollection[]): Promise { + const res = await ChatKitClient.nim.messageService?.removeCollections(collections) + return res!; + } + + /** + * 按条件分页获取收藏信息 + * + * @param option 查询参数 + */ + static async getCollectionListByOption(option: V2NIMCollectionOption): Promise { + const res = ChatKitClient.nim.messageService?.getCollectionListByOption(option) + return res!; + } + + /** + * 构造文本消息 + * + * @param text 文本内容. 不允许为空字符串 + * + * @example + * ``` + * const message = nim.V2NIMMessageCreator.createTextMessage('hello world') + * ``` + */ + static createTextMessage(text: string): V2NIMMessage { + return ChatKitClient.nim.messageCreator.createTextMessage(text); + } + + /** + * 构造图片消息 + * + * @param imagePath 图片文件路径 + * @param name 文件显示名称 + * @param sceneName 场景名 + * @param width 图片宽度. + * @param height 图片高度. + */ + static async createImageMessage(imagePath: string, name?: string, sceneName?: string, width?: number, + height?: number): Promise { + return ChatKitClient.nim.messageCreator.createImageMessage(imagePath, name, sceneName, width, height); + } + + /** + * 构造语音消息 + * + * @param audioPath 语音文件地址 + * @param name 文件显示名称 + * @param sceneName 场景名 + * @param duration 音频时长 + */ + static async createAudioMessage(audioPath: string, name?: string, sceneName?: string, + duration?: number): Promise { + return ChatKitClient.nim.messageCreator.createAudioMessage(audioPath, name, sceneName, duration); + } + + /** + * 构造视频消息 + * + * @param videoPath 视频文件地址 + * @param name 文件显示名称 + * @param sceneName 场景名 + * @param duration 视频时长 + * @param width 视频宽度 + * @param height 视频高度 + */ + static async createVideoMessage(videoPath: string, name?: string, sceneName?: string, duration?: number, + width?: number, height?: number): Promise { + return ChatKitClient.nim.messageCreator.createVideoMessage(videoPath, name, sceneName, duration, width, height); + } + + /** + * 构造文件消息 + * + * @param filePath 文件地址 + * @param name 文件显示名称 + * @param sceneName 场景名 + */ + static async createFileMessage(filePath: string, name?: string, sceneName?: string): Promise { + return ChatKitClient.nim.messageCreator.createFileMessage(filePath, name, sceneName); + } + + /** + * 构造地理位置消息 + * + * @param latitude 纬度 + * @param longitude 经度 + * @param address 详细位置信息 + */ + static createLocationMessage(latitude: number, longitude: number, address: string): V2NIMMessage { + return ChatKitClient.nim.messageCreator.createLocationMessage(latitude, longitude, address); + } + + /** + * 构造自定义消息消息 + * + * @param text 文本 + * @param rawAttachment 自定义的附件内容 + */ + static createCustomMessage(text: string, rawAttachment: string): V2NIMMessage { + return ChatKitClient.nim.messageCreator.createCustomMessage(text, rawAttachment); + } + + /** + * 构造转发消息,消息内容与原消息一样 + * + * https://overmind.hz.netease.com/206/requirement/issues/OMIM-50521 + * + * 其它端怕抛 error 导致应用崩溃,所以这里不抛 error,而是返回 null + * + * @param message 需要转发的消息体 + */ + static createForwardMessage(message: V2NIMMessage): V2NIMMessage | null { + return ChatKitClient.nim.messageCreator.createForwardMessage(message); + } + + /** + * 构造提示消息 + * + * @param text 提示文本 + */ + static createTipsMessage(text: string): V2NIMMessage { + return ChatKitClient.nim.messageCreator.createTipsMessage(text); + } + + /** + * 插入一条本地消息, 该消息不会发送。该消息不会多端同步,只是本端显示 + * @param message 需要插入的消息体 + * @param conversationId 会话 ID + */ + static saveLocalMessage(msg: V2NIMMessage, conversationId: string, senderId: string, createTime: number) { + ChatKitClient.nim.messageService?.insertMessageToLocal(msg, conversationId, senderId, createTime) + } + + /** + * 查询点对点消息已读回执 + * @param conversationId 会话 id + */ + static async getP2PMessageReceipt(conversationId: string): Promise { + return await ChatKitClient.nim.messageService?.getP2PMessageReceipt(conversationId) + } + + /** + * 获取群消息已读回执状态详情 + * + * @param msg 需要查询已读回执状态的消息 + * @param memberAccountIds 查找指定的账号列表已读未读 + * 为空表示查询全部 + * 同时作用于已读未读账号列表和人数 + */ + static getTeamMessageReceiptDetail(msg: V2NIMMessage, + memberAccountIds?: string[]): Promise { + return ChatKitClient.nim.messageService!!.getTeamMessageReceiptDetail( + msg, memberAccountIds + ) + } + + /** + * 发送消息已读回执 + * + * @param message 点对点会话收到的对方最后一条消息 + */ + static async sendP2PMessageReceipt(message: V2NIMMessage): Promise { + return ChatKitClient.nim.messageService?.sendP2PMessageReceipt(message) + } + + /** + * 获取群消息已读回执状态 + * + * @param messages 获取群消息已读回执状态. 限制一批最多 50 个且所有消息必须属于同一个会话 + */ + static async getTeamMessageReceipts(messages: V2NIMMessage[]): Promise { + return ChatKitClient.nim.messageService?.getTeamMessageReceipts(messages) + } + + /** + * 发送群消息已读回执 + * + * @param messages 需要发送已读回执的消息列表. 限制一批最多 50 个且所有消息必须属于同一个会话 + */ + static async sendTeamMessageReceipt(messages: V2NIMMessage[]): Promise { + return ChatKitClient.nim.messageService?.sendTeamMessageReceipts(messages) + } +} \ No newline at end of file diff --git a/chatkit/src/main/ets/repo/ContactRepo.ets b/chatkit/src/main/ets/repo/ContactRepo.ets new file mode 100644 index 0000000..c605bb6 --- /dev/null +++ b/chatkit/src/main/ets/repo/ContactRepo.ets @@ -0,0 +1,338 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { + V2NIMCheckFriendResult, + V2NIMFriend, + V2NIMFriendAddApplication, + V2NIMFriendAddApplicationQueryOption, + V2NIMFriendAddApplicationResult, + V2NIMFriendAddParams, + V2NIMFriendDeleteParams, + V2NIMFriendDeletionType, + V2NIMFriendSearchOption, + V2NIMFriendSetParams, + V2NIMLoginStatus, + V2NIMUser, + V2NIMUserSearchOption, + V2NIMUserUpdateParams +} from '@nimsdk/base'; +import { ChatKitClient } from '../ChatKitClient'; +import { NEUserWithFriend } from '../model/NEUserWithFriend'; +import { NEFriendUserCache } from '../NEFriendUserCache'; + +export class ContactRepo { + public static listener = getContext(this).eventHub + static onBlockListAddedFun = async (user: V2NIMUser) => { + NEFriendUserCache.getInstance().addBlockAccount(user.accountId) + } + static onLoginStatusFun = (status: V2NIMLoginStatus) => { + switch (status) { + case V2NIMLoginStatus.V2NIM_LOGIN_STATUS_LOGOUT: + NEFriendUserCache.getInstance().removeAllFriendInfo() + NEFriendUserCache.mineUserCache = undefined + break; + default: + break; + } + } + static onUserProfileChangedFun = async (users: V2NIMUser[]) => { + users.forEach((user) => { + if (NEFriendUserCache.getInstance().isFriend(user.accountId)) { + NEFriendUserCache.getInstance().updateFriendInfo({ + user: user + }) + } + if (NEFriendUserCache.isMe(user.accountId) && NEFriendUserCache.mineUserCache) { + NEFriendUserCache.mineUserCache.user = user + } + }) + + ContactRepo.listener.emit('updateUserInfo', users) + } + static onBlockListRemovedFun = (accountId: string) => { + NEFriendUserCache.getInstance().removeBlockAccount(accountId) + } + static onFriendAddedFun = async (friend: V2NIMFriend) => { + NEFriendUserCache.getInstance().updateFriendInfo({ + friend: friend + }) + ContactRepo.removeUserFromBlockList(friend.accountId) + ContactRepo.listener.emit('updateFriendInfo', friend) + // 更新 user 信息至最新 + ContactRepo.getUserListFromCloud([friend.accountId]) + } + static onFriendDeletedFun = (accountId: string, deletionType: V2NIMFriendDeletionType) => { + NEFriendUserCache.getInstance().removeFriendInfo(accountId) + } + static onFriendInfoChangedFun = (friend: V2NIMFriend) => { + NEFriendUserCache.getInstance().updateFriendInfo({ + friend: friend + }) + ContactRepo.listener.emit('updateFriendInfo', friend) + } + + static addListener() { + ChatKitClient.nim.loginService.on('onLoginStatus', ContactRepo.onLoginStatusFun) + ChatKitClient.nim.userService?.on('onUserProfileChanged', ContactRepo.onUserProfileChangedFun) + ChatKitClient.nim.userService?.on('onBlockListAdded', ContactRepo.onBlockListAddedFun) + ChatKitClient.nim.userService?.on('onBlockListRemoved', ContactRepo.onBlockListRemovedFun) + ChatKitClient.nim.friendService?.on('onFriendAdded', ContactRepo.onFriendAddedFun) + ChatKitClient.nim.friendService?.on('onFriendDeleted', ContactRepo.onFriendDeletedFun) + ChatKitClient.nim.friendService?.on('onFriendInfoChanged', ContactRepo.onFriendInfoChangedFun) + } + + static removeListener() { + ChatKitClient.nim.loginService.off('onLoginStatus', ContactRepo.onLoginStatusFun) + ChatKitClient.nim.userService?.off('onUserProfileChanged', ContactRepo.onUserProfileChangedFun) + ChatKitClient.nim.userService?.off('onBlockListAdded', ContactRepo.onBlockListAddedFun) + ChatKitClient.nim.userService?.off('onBlockListRemoved', ContactRepo.onBlockListRemovedFun) + ChatKitClient.nim.friendService?.off('onFriendAdded', ContactRepo.onFriendAddedFun) + ChatKitClient.nim.friendService?.off('onFriendDeleted', ContactRepo.onFriendDeletedFun) + ChatKitClient.nim.friendService?.off('onFriendInfoChanged', ContactRepo.onFriendInfoChangedFun) + } + + /** + * 根据用户账号列表获取用户资料 + * + * @param accountIds 用户 Id 列表。最大为 150 个 + */ + static async getUserList(accountIds: string[]): Promise { + return await ChatKitClient.nim.userService?.getUserList(accountIds) ?? [] + } + + /** + * 根据用户账号列表获取用户资料-从云端获取 + * + * 注: 其结果会更新本地数据, 建议在需要实时感知用户最新的信息的场景下使用 + * + * @param accountIds 用户 Id 列表。最大为 150 个 + */ + static async getUserListFromCloud(accountIds: string[]): Promise { + const userList = await ChatKitClient.nim.userService?.getUserListFromCloud(accountIds) ?? [] + + let friendList: V2NIMUser[] = [] + userList.forEach((user) => { + const accountId = user.accountId + if (accountId === ChatKitClient.getLoginUserId()) { + NEFriendUserCache.mineUserCache = new NEUserWithFriend({ + user: user + }) + } + + if (NEFriendUserCache.getInstance().isFriend(accountId)) { + friendList.push(user) + NEFriendUserCache.getInstance().updateFriendInfo({ + user: user + }) + } + }) + + if (friendList.length > 0) { + ContactRepo.listener.emit('updateUserInfo', friendList) + } + + return userList + } + + /** + * 更新自己的用户资料。调用该 API 后,会触发 onUserProfileChanged 事件 + * + * @param updateParams 更新参数 + */ + static async updateSelfUserProfile(updateParams: V2NIMUserUpdateParams): Promise { + await ChatKitClient.nim.userService?.updateSelfUserProfile(updateParams) + } + + /** + * 添加用户到黑名单中 + * + * @param accountId 用户 Id + */ + static async addUserToBlockList(accountId: string): Promise { + await ChatKitClient.nim.userService?.addUserToBlockList(accountId) + } + + /** + * 从黑名单中移除用户 + * + * @param accountId 用户 Id + */ + static async removeUserFromBlockList(accountId: string): Promise { + await ChatKitClient.nim.userService?.removeUserFromBlockList(accountId) + } + + /** + * 获取黑名单列表 + */ + static async getBlockList(): Promise { + const blockList = await ChatKitClient.nim.userService?.getBlockList() ?? [] + NEFriendUserCache.getInstance().initBlockAccountSet(blockList) + return blockList + } + + /** + * 根据关键词搜索用户信息 + * + * @param option 搜索选项 + */ + static async searchUserByOption(option: V2NIMUserSearchOption): Promise { + return await ChatKitClient.nim.userService?.searchUserByOption(option) ?? [] + } + + + /** + * 添加/申请好友 + * @param accountId 好友 ID + * @param params 申请相关参数 + */ + static async addFriend(accountId: string, params: V2NIMFriendAddParams): Promise { + await ChatKitClient.nim.friendService?.addFriend(accountId, params) + } + + /** + * 删除好友 + * + * @param accountId 好友 ID + * @param params 删除相关参数 + */ + static async deleteFriend(accountId: string, params: V2NIMFriendDeleteParams): Promise { + await ChatKitClient.nim.friendService?.deleteFriend(accountId, params) + } + + /** + * 接受好友申请 + * + * @param accountId 好友 ID + */ + static async acceptAddApplication(application: V2NIMFriendAddApplication): Promise { + await ChatKitClient.nim.friendService?.acceptAddApplication(application) + } + + /** + * 拒绝好友申请 + * + * @param accountId 好友 ID + * @param postscript 拒绝时的附言 + */ + static async rejectAddApplication(application: V2NIMFriendAddApplication, postscript?: string): Promise { + await ChatKitClient.nim.friendService?.rejectAddApplication(application, postscript) + } + + /** + * 清空所有好友申请 + * + */ + static async clearAllAddApplication(): Promise { + await ChatKitClient.nim.friendService?.clearAllAddApplication() + } + + /** + * 设置好友信息 + * + * @param accountId 好友 ID + * @param params 设置好友信息参数 + */ + static async setFriendInfo(accountId: string, params: V2NIMFriendSetParams): Promise { + await ChatKitClient.nim.friendService?.setFriendInfo(accountId, params) + } + + /** + * 获取好友列表 + */ + static async getFriendList(): Promise { + let friendList = await ChatKitClient.nim.friendService?.getFriendList() ?? [] + if (AppStorage.get(NEFriendUserCache.name)) { + NEFriendUserCache.getInstance().loadFriendList(friendList) + } + + return friendList + } + + /** + * 根据账号 ID 获取好友信息 + * + * @param accountIds 好友 ID 列表 + */ + static async getFriendByIds(accountIds: string[]): Promise { + return await ChatKitClient.nim.friendService?.getFriendByIds(accountIds) ?? [] + } + + /** + * 根据账号 ID 获取用户信息(包含好友信息) + * + * @param accountIds 用户 ID 列表 + */ + static async getUserWithFriendByIds(accountIds: string[]): Promise { + let userWithFriends: NEUserWithFriend[] = [] + const users = await ContactRepo.getUserListFromCloud(accountIds) + const friends = await ContactRepo.getFriendByIds(accountIds) + + let friendsMap: Map = new Map() + for (const friend of friends) { + if (friend.accountId) { + friendsMap.set(friend.accountId, new NEUserWithFriend({ + friend: friend + })) + } + } + + + for (const user of users) { + const friend = friendsMap.get(user.accountId)?.friend + let userWithFriend: NEUserWithFriend = new NEUserWithFriend({ + friend: friend, + user: user + }) + if (friend) { + NEFriendUserCache.getInstance().updateFriendInfo({ + friendUser: userWithFriend + }) + } + userWithFriends.push(userWithFriend) + } + + return userWithFriends + } + + /** + * 根据账号 ID 检查好友状态 + * @param accountIds 好友 ID列表 + */ + static async checkFriend(accountIds: string[]): Promise { + return await ChatKitClient.nim.friendService?.checkFriend(accountIds) + } + + /** + * 获取申请添加好友列表通知 + */ + static async getAddApplicationList(option: V2NIMFriendAddApplicationQueryOption): Promise { + return await ChatKitClient.nim.friendService?.getAddApplicationList(option) + } + + /** + * 设置好友申请已读 + */ + static async setAddApplicationRead(): Promise { + await ChatKitClient.nim.friendService?.setAddApplicationRead() + } + + /** + * 获取未读的好友申请数量 + */ + static async getAddApplicationUnreadCount(): Promise { + return await ChatKitClient.nim.friendService?.getAddApplicationUnreadCount() ?? 0 + } + + /** + * 根据关键词搜索好友 + * @param option 搜索好友的条件 + */ + static async searchFriendByOption(option: V2NIMFriendSearchOption): Promise { + return await ChatKitClient.nim.friendService?.searchFriendByOption(option) ?? [] + } +} \ No newline at end of file diff --git a/chatkit/src/main/ets/repo/ConversationRepo.ets b/chatkit/src/main/ets/repo/ConversationRepo.ets new file mode 100644 index 0000000..8daf526 --- /dev/null +++ b/chatkit/src/main/ets/repo/ConversationRepo.ets @@ -0,0 +1,282 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { + V2NIMConversation, + V2NIMConversationFilter, + V2NIMConversationOperationResult, + V2NIMConversationOption, + V2NIMConversationResult, + V2NIMConversationType, + V2NIMConversationUpdate +} from '@nimsdk/base'; +import { ChatKitClient } from '../ChatKitClient'; + +export class ConversationRepo { + /** + * 获取会话列表 + * + * @param offset 分页偏移量. 首页应传 0, 其他页数据使用返回的 offset + * @param limit 分页拉取数量,不建议超过 100 + */ + static async getConversationList(offset: number, limit: number): Promise { + return await ChatKitClient.nim.conversationService?.getConversationList(offset, limit) ?? null + } + + /** + * 置顶会话 + * + * 注: 在操作成功且是有效的操作时, 则触发事件 {@link V2NIMConversationListener.onConversationChanged | V2NIMConversationListener.onConversationChanged} + * + * @param conversationId 会话 id + * @param stickTop 是否置顶. true: 置顶, false: 取消置顶. + */ + static async stickTopConversation(conversationId: string, stickTop: boolean): Promise { + return await ChatKitClient.nim.conversationService?.stickTopConversation(conversationId, stickTop) + } + + /** + * 删除会话 + * + * 注: 在操作成功且是有效的操作时, 会抛出事件 {@link V2NIMConversationListener.onConversationDeleted | V2NIMConversationListener.onConversationCreated} + * + * @param conversationId 会话 id + * @param clearMessage 是否删除会话对应的历史消息. 默认为 false + */ + static async deleteConversation(conversationId: string, clearMessage?: boolean): Promise { + return await ChatKitClient.nim.conversationService?.deleteConversation(conversationId, clearMessage) + } + + /** + * 获取会话列表. 可以指定筛选条件,按会话类型,未读等 + * + * @param offset 会话标记. 首页应传 0, 其他页数据使用返回的 offset + * @param limit 分页拉取数量, 不建议超过100 + * @param option 查询选项 + * + */ + static async getConversationListByOption(offset: number, limit: number, + option: V2NIMConversationOption): Promise { + return await ChatKitClient.nim.conversationService?.getConversationListByOption(offset, limit, option) + } + + /** + * 根据会话 id 获取单条会话 + * + * @param conversationId 会话 id + */ + static async getConversation(conversationId: string): Promise { + return await ChatKitClient.nim.conversationService?.getConversation(conversationId) + } + + /** + * 根据会话 id 获取会话列表 + * + * @param conversationIds 会话 id 列表 + * + */ + static async getConversationListByIds(conversationIds: string[]): Promise { + return await ChatKitClient.nim.conversationService?.getConversationListByIds(conversationIds) + } + + /** + * 创建会话 + * + * 注: 在操作成功且是有效的操作时, 会抛出事件 {@link V2NIMConversationListener.onConversationCreated | V2NIMConversationListener.onConversationCreated} + * + * @param conversationId 会话 id + * + */ + static async createConversation(conversationId: string): Promise { + return await ChatKitClient.nim.conversationService?.createConversation(conversationId) + } + + /** + * 批量删除会话 + * + * 注: 在操作成功且是有效的操作时, 会抛出事件 {@link V2NIMConversationListener.onConversationDeleted | V2NIMConversationListener.onConversationDeleted} + * + * @param conversationIds 会话 id 列表 + * @param clearMessage 是否删除会话对应的历史消息. 默认为 false + * @returns 返回操作失败的列表,列表的对象包含会话 id 以及错误信息. + */ + static async deleteConversationListByIds(conversationIds: string[], + clearMessage?: boolean): Promise { + return await ChatKitClient.nim.conversationService?.deleteConversationListByIds(conversationIds, clearMessage) + } + + /** + * 更新会话 + * + * 注: 在操作成功且是有效的操作时, 触发事件 {@link V2NIMConversationListener.onConversationChanged | V2NIMConversationListener.onConversationChanged} + * + * @param conversationId 会话 id + * @param updateInfo 欲更新的信息 + * + */ + static async updateConversation(conversationId: string, updateInfo: V2NIMConversationUpdate): Promise { + return await ChatKitClient.nim.conversationService?.updateConversation(conversationId, updateInfo) + } + + /** + * 更新会话的本地扩展字段 + * + * 注: 在操作成功且是有效的操作时, 触发事件 {@link V2NIMConversationListener.onConversationChanged | V2NIMConversationListener.onConversationChanged} + * + * 注2: 字段只能存在内存里, 不能持久化存储. 登出或者重新初始化后 localExtension 都会再次成为空字符串. + * + * @param conversationId 会话 id + * @param localExtension 本地扩展信息 + * + */ + static async updateConversationLocalExtension(conversationId: string, localExtension: string): Promise { + return await ChatKitClient.nim.conversationService?.updateConversationLocalExtension(conversationId, localExtension) + } + + /** + * 获取全部会话的总的未读数 + * + */ + static getTotalUnreadCount(): number | undefined { + return ChatKitClient.nim.conversationService?.getTotalUnreadCount() + } + + /** + * 根据 id 列表获取会话的未读数 + * + * @param conversationIds 会话 id 列表 + * + */ + static async getUnreadCountByIds(conversationIds: string[]): Promise { + return await ChatKitClient.nim.conversationService?.getUnreadCountByIds(conversationIds) + } + + /** + * 根据过滤参数获取相应的未读信息 + * + * @param filter 过滤条件 + */ + static async getUnreadCountByFilter(filter: V2NIMConversationFilter): Promise { + return await ChatKitClient.nim.conversationService?.getUnreadCountByFilter(filter) + } + + /** + * 清空所有会话总的未读数 + * + * 注: 当该方法调用后,SDK 可能给开发者抛出以下的事件 + * + * {@link V2NIMConversationListener.onConversationChanged | V2NIMConversationListener.onConversationChanged}
+ * {@link V2NIMConversationListener.onTotalUnreadCountChanged | V2NIMConversationListener.onTotalUnreadCountChanged}
+ * {@link V2NIMConversationListener.onUnreadCountChangedByFilter | V2NIMConversationListener.onUnreadCountChangedByFilter} + */ + static async clearTotalUnreadCount(): Promise { + return await ChatKitClient.nim.conversationService?.clearTotalUnreadCount() + } + + /** + * 根据会话 id 列表清空相应会话的未读数 + * + * 注: 当该方法调用后,SDK 可能给开发者抛出以下的事件 + * + * {@link V2NIMConversationListener.onConversationChanged | V2NIMConversationListener.onConversationChanged}
+ * {@link V2NIMConversationListener.onTotalUnreadCountChanged | V2NIMConversationListener.onTotalUnreadCountChanged}
+ * {@link V2NIMConversationListener.onUnreadCountChangedByFilter | V2NIMConversationListener.onUnreadCountChangedByFilter} + * + * @param conversationIds 会话 id 列表 + * @returns 返回操作失败结果的列表 + */ + static async clearUnreadCountByIds(conversationIds: string[]): Promise { + return await ChatKitClient.nim.conversationService?.clearUnreadCountByIds(conversationIds) + } + + /** + * 清除对应指定分组下的会话的未读数 + * + * 注: 当该方法调用后,SDK 可能给开发者抛出以下的事件 + * + * {@link V2NIMConversationListener.onConversationChanged | V2NIMConversationListener.onConversationChanged}
+ * {@link V2NIMConversationListener.onTotalUnreadCountChanged | V2NIMConversationListener.onTotalUnreadCountChanged}
+ * {@link V2NIMConversationListener.onUnreadCountChangedByFilter | V2NIMConversationListener.onUnreadCountChangedByFilter} + * + * @param groupId 指定的会话分组 id + */ + static async clearUnreadCountByGroupId(groupId: string): Promise { + return await ChatKitClient.nim.conversationService?.clearUnreadCountByGroupId(groupId) + } + + /** + * 清除对应指定类型下的会话的未读数 + * + * 注: 当该方法调用后,SDK 可能给开发者抛出以下的事件 + * + * {@link V2NIMConversationListener.onConversationChanged | V2NIMConversationListener.onConversationChanged}
+ * {@link V2NIMConversationListener.onTotalUnreadCountChanged | V2NIMConversationListener.onTotalUnreadCountChanged}
+ * {@link V2NIMConversationListener.onUnreadCountChangedByFilter | V2NIMConversationListener.onUnreadCountChangedByFilter} + * + * @param types 指定的会话类型列表 + */ + static async clearUnreadCountByTypes(types: V2NIMConversationType[]): Promise { + return await ChatKitClient.nim.conversationService?.clearUnreadCountByTypes(types) + } + + /** + * 订阅指定过滤条件的会话未读数变化 + * + * 注1: 当订阅该条件后,该 filter 下的未读数发生变化时, 触发 {@link V2NIMConversationListener.onUnreadCountChangedByFilter | V2NIMConversationListener.onUnreadCountChangedByFilter} 事件 + * + * 注2: 同一种 filter 只能被订阅一次, 第二次的调用不会有任何效果 + * + * @param filter 过滤条件 + */ + static subscribeUnreadCountByFilter(filter: V2NIMConversationFilter) { + return ChatKitClient.nim.conversationService?.subscribeUnreadCountByFilter(filter) + } + + /** + * 取消订阅指定过滤条件的会话未读变化 + * + * @param filter 过滤条件 + */ + static unsubscribeUnreadCountByFilter(filter: V2NIMConversationFilter) { + return ChatKitClient.nim.conversationService?.unsubscribeUnreadCountByFilter(filter) + } + + /** + * 标记会话已读时间戳 + * + * 注: 当该方法调用后,SDK 可能给多端账户抛出以下的事件 + * + * {@link V2NIMConversationListener.onConversationReadTimeUpdated | V2NIMConversationListener.onConversationReadTimeUpdated}
+ * + */ + static async markConversationRead(conversationId: string): Promise { + return await ChatKitClient.nim.conversationService?.markConversationRead(conversationId) + } + + /** + * 获取会话已读时间戳。该时间包含多端已读时间戳 + */ + static async getConversationReadTime(conversationId: string): Promise { + return await ChatKitClient.nim.conversationService?.getConversationReadTime(conversationId) + } + + /** + * 移除会话的所有监听 + */ + static removeAllConversationListener() { + //移除 + ChatKitClient.nim.conversationService?.removeAllListeners('onSyncFinished') + + //会话创建 + ChatKitClient.nim.conversationService?.removeAllListeners("onConversationCreated") + + //会话删除 + ChatKitClient.nim.conversationService?.removeAllListeners("onConversationDeleted") + //会话更新 + ChatKitClient.nim.conversationService?.removeAllListeners("onConversationChanged") + } +} \ No newline at end of file diff --git a/chatkit/src/main/ets/repo/LocalConversationRepo.ets b/chatkit/src/main/ets/repo/LocalConversationRepo.ets new file mode 100644 index 0000000..af9961e --- /dev/null +++ b/chatkit/src/main/ets/repo/LocalConversationRepo.ets @@ -0,0 +1,282 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { + V2NIMConversationType, + V2NIMLocalConversation, + V2NIMLocalConversationFilter, + V2NIMLocalConversationOperationResult, + V2NIMLocalConversationOption, + V2NIMLocalConversationResult, +} from '@nimsdk/base'; +import { ChatKitClient } from '../ChatKitClient'; + +export class LocalConversationRepo { + /** + * 获取会话列表 + * + * @param offset 分页偏移量. 首页应传 0, 其他页数据使用返回的 offset + * @param limit 分页拉取数量,不建议超过 100 + */ + static async getConversationList(offset: number, limit: number): Promise { + return await ChatKitClient.nim.localConversationService?.getConversationList(offset, limit) ?? null + } + + /** + * 置顶会话 + * + * 注: 在操作成功且是有效的操作时, 则触发事件 {@link V2NIMConversationListener.onConversationChanged | V2NIMConversationListener.onConversationChanged} + * + * @param conversationId 会话 id + * @param stickTop 是否置顶. true: 置顶, false: 取消置顶. + */ + static async stickTopConversation(conversationId: string, stickTop: boolean): Promise { + return await ChatKitClient.nim.localConversationService?.stickTopConversation(conversationId, stickTop) + } + + /** + * 删除会话 + * + * 注: 在操作成功且是有效的操作时, 会抛出事件 {@link V2NIMConversationListener.onConversationDeleted | V2NIMConversationListener.onConversationCreated} + * + * @param conversationId 会话 id + * @param clearMessage 是否删除会话对应的历史消息. 默认为 false + */ + static async deleteConversation(conversationId: string, clearMessage?: boolean): Promise { + return await ChatKitClient.nim.localConversationService?.deleteConversation(conversationId, clearMessage) + } + + /** + * 获取会话列表. 可以指定筛选条件,按会话类型,未读等 + * + * @param offset 会话标记. 首页应传 0, 其他页数据使用返回的 offset + * @param limit 分页拉取数量, 不建议超过100 + * @param option 查询选项 + * + */ + static async getConversationListByOption(offset: number, limit: number, + option: V2NIMLocalConversationOption): Promise { + return await ChatKitClient.nim.localConversationService?.getConversationListByOption(offset, limit, option) + } + + /** + * 根据会话 id 获取单条会话 + * + * @param conversationId 会话 id + */ + static async getConversation(conversationId: string): Promise { + return await ChatKitClient.nim.localConversationService?.getConversation(conversationId) + } + + /** + * 根据会话 id 获取会话列表 + * + * @param conversationIds 会话 id 列表 + * + */ + static async getConversationListByIds(conversationIds: string[]): Promise { + return await ChatKitClient.nim.localConversationService?.getConversationListByIds(conversationIds) + } + + /** + * 创建会话 + * + * 注: 在操作成功且是有效的操作时, 会抛出事件 {@link V2NIMConversationListener.onConversationCreated | V2NIMConversationListener.onConversationCreated} + * + * @param conversationId 会话 id + * + */ + static async createConversation(conversationId: string): Promise { + return await ChatKitClient.nim.localConversationService?.createConversation(conversationId) + } + + /** + * 批量删除会话 + * + * 注: 在操作成功且是有效的操作时, 会抛出事件 {@link V2NIMConversationListener.onConversationDeleted | V2NIMConversationListener.onConversationDeleted} + * + * @param conversationIds 会话 id 列表 + * @param clearMessage 是否删除会话对应的历史消息. 默认为 false + * @returns 返回操作失败的列表,列表的对象包含会话 id 以及错误信息. + */ + static async deleteConversationListByIds(conversationIds: string[], + clearMessage?: boolean): Promise { + return await ChatKitClient.nim.localConversationService?.deleteConversationListByIds(conversationIds, clearMessage) + } + + /** + * 更新会话 + * + * 注: 在操作成功且是有效的操作时, 触发事件 {@link V2NIMConversationListener.onConversationChanged | V2NIMConversationListener.onConversationChanged} + * + * @param conversationId 会话 id + * @param updateInfo 欲更新的信息 + * + */ + // static async updateConversation(conversationId: string, updateInfo: V2NIMLocalConversationUpdate): Promise { + // return await ChatKitClient.nim.localConversationService?.updateConversation(conversationId, updateInfo) + // } + + /** + * 更新会话的本地扩展字段 + * + * 注: 在操作成功且是有效的操作时, 触发事件 {@link V2NIMConversationListener.onConversationChanged | V2NIMConversationListener.onConversationChanged} + * + * 注2: 字段只能存在内存里, 不能持久化存储. 登出或者重新初始化后 localExtension 都会再次成为空字符串. + * + * @param conversationId 会话 id + * @param localExtension 本地扩展信息 + * + */ + static async updateConversationLocalExtension(conversationId: string, localExtension: string): Promise { + return await ChatKitClient.nim.localConversationService?.updateConversationLocalExtension(conversationId, + localExtension) + } + + /** + * 获取全部会话的总的未读数 + * + */ + static getTotalUnreadCount(): number | undefined { + return ChatKitClient.nim.localConversationService?.getTotalUnreadCount() + } + + /** + * 根据 id 列表获取会话的未读数 + * + * @param conversationIds 会话 id 列表 + * + */ + static async getUnreadCountByIds(conversationIds: string[]): Promise { + return await ChatKitClient.nim.localConversationService?.getUnreadCountByIds(conversationIds) + } + + /** + * 根据过滤参数获取相应的未读信息 + * + * @param filter 过滤条件 + */ + static async getUnreadCountByFilter(filter: V2NIMLocalConversationFilter): Promise { + return await ChatKitClient.nim.localConversationService?.getUnreadCountByFilter(filter) + } + + /** + * 清空所有会话总的未读数 + * + * 注: 当该方法调用后,SDK 可能给开发者抛出以下的事件 + * + * {@link V2NIMConversationListener.onConversationChanged | V2NIMConversationListener.onConversationChanged}
+ * {@link V2NIMConversationListener.onTotalUnreadCountChanged | V2NIMConversationListener.onTotalUnreadCountChanged}
+ * {@link V2NIMConversationListener.onUnreadCountChangedByFilter | V2NIMConversationListener.onUnreadCountChangedByFilter} + */ + static async clearTotalUnreadCount(): Promise { + return await ChatKitClient.nim.localConversationService?.clearTotalUnreadCount() + } + + /** + * 根据会话 id 列表清空相应会话的未读数 + * + * 注: 当该方法调用后,SDK 可能给开发者抛出以下的事件 + * + * {@link V2NIMConversationListener.onConversationChanged | V2NIMConversationListener.onConversationChanged}
+ * {@link V2NIMConversationListener.onTotalUnreadCountChanged | V2NIMConversationListener.onTotalUnreadCountChanged}
+ * {@link V2NIMConversationListener.onUnreadCountChangedByFilter | V2NIMConversationListener.onUnreadCountChangedByFilter} + * + * @param conversationIds 会话 id 列表 + * @returns 返回操作失败结果的列表 + */ + static async clearUnreadCountByIds(conversationIds: string[]): Promise { + return await ChatKitClient.nim.localConversationService?.clearUnreadCountByIds(conversationIds) + } + + /** + * 清除对应指定分组下的会话的未读数 + * + * 注: 当该方法调用后,SDK 可能给开发者抛出以下的事件 + * + * {@link V2NIMConversationListener.onConversationChanged | V2NIMConversationListener.onConversationChanged}
+ * {@link V2NIMConversationListener.onTotalUnreadCountChanged | V2NIMConversationListener.onTotalUnreadCountChanged}
+ * {@link V2NIMConversationListener.onUnreadCountChangedByFilter | V2NIMConversationListener.onUnreadCountChangedByFilter} + * + * @param groupId 指定的会话分组 id + */ + // static async clearUnreadCountByGroupId(groupId: string): Promise { + // return await ChatKitClient.nim.localConversationService?.clearUnreadCountByGroupId(groupId) + // } + + /** + * 清除对应指定类型下的会话的未读数 + * + * 注: 当该方法调用后,SDK 可能给开发者抛出以下的事件 + * + * {@link V2NIMConversationListener.onConversationChanged | V2NIMConversationListener.onConversationChanged}
+ * {@link V2NIMConversationListener.onTotalUnreadCountChanged | V2NIMConversationListener.onTotalUnreadCountChanged}
+ * {@link V2NIMConversationListener.onUnreadCountChangedByFilter | V2NIMConversationListener.onUnreadCountChangedByFilter} + * + * @param types 指定的会话类型列表 + */ + static async clearUnreadCountByTypes(types: V2NIMConversationType[]): Promise { + return await ChatKitClient.nim.localConversationService?.clearUnreadCountByTypes(types) + } + + /** + * 订阅指定过滤条件的会话未读数变化 + * + * 注1: 当订阅该条件后,该 filter 下的未读数发生变化时, 触发 {@link V2NIMConversationListener.onUnreadCountChangedByFilter | V2NIMConversationListener.onUnreadCountChangedByFilter} 事件 + * + * 注2: 同一种 filter 只能被订阅一次, 第二次的调用不会有任何效果 + * + * @param filter 过滤条件 + */ + static subscribeUnreadCountByFilter(filter: V2NIMLocalConversationFilter) { + return ChatKitClient.nim.localConversationService?.subscribeUnreadCountByFilter(filter) + } + + /** + * 取消订阅指定过滤条件的会话未读变化 + * + * @param filter 过滤条件 + */ + static unsubscribeUnreadCountByFilter(filter: V2NIMLocalConversationFilter) { + return ChatKitClient.nim.localConversationService?.unsubscribeUnreadCountByFilter(filter) + } + + /** + * 标记会话已读时间戳 + * + * 注: 当该方法调用后,SDK 可能给多端账户抛出以下的事件 + * + * {@link V2NIMConversationListener.onConversationReadTimeUpdated | V2NIMConversationListener.onConversationReadTimeUpdated}
+ * + */ + static async markConversationRead(conversationId: string): Promise { + return await ChatKitClient.nim.localConversationService?.markConversationRead(conversationId) + } + + /** + * 获取会话已读时间戳。该时间包含多端已读时间戳 + */ + static async getConversationReadTime(conversationId: string): Promise { + return await ChatKitClient.nim.localConversationService?.getConversationReadTime(conversationId) + } + + /** + * 移除会话的所有监听 + */ + static removeAllConversationListener() { + //移除 + ChatKitClient.nim.localConversationService?.removeAllListeners('onSyncFinished') + + //会话创建 + ChatKitClient.nim.localConversationService?.removeAllListeners("onConversationCreated") + + //会话删除 + ChatKitClient.nim.localConversationService?.removeAllListeners("onConversationDeleted") + //会话更新 + ChatKitClient.nim.localConversationService?.removeAllListeners("onConversationChanged") + } +} \ No newline at end of file diff --git a/chatkit/src/main/ets/repo/SettingRepo.ets b/chatkit/src/main/ets/repo/SettingRepo.ets new file mode 100644 index 0000000..df89bb1 --- /dev/null +++ b/chatkit/src/main/ets/repo/SettingRepo.ets @@ -0,0 +1,103 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { V2NIMDndConfig, V2NIMP2PMessageMuteMode, V2NIMTeamMessageMuteMode, V2NIMTeamType } from '@nimsdk/base'; +import { ChatKitClient } from '../ChatKitClient'; + +export class SettingRepo { + /** + * 获取会话消息免打扰状态 + * + * 注: 若会话类型为群, 则群消息免打扰模式为 {@link V2NIMTeamMessageMuteMode.V2NIM_TEAM_MESSAGE_MUTE_MODE_OFF | V2NIMTeamMessageMuteMode.V2NIM_TEAM_MESSAGE_MUTE_MODE_OFF} 返回为false. 其他的返回 true. + * + * @param conversationId 会话 id + * @return mute 是否被免打扰 + */ + static async getConversationMuteStatus(conversationId: string): Promise { + return await ChatKitClient.nim.settingService?.getConversationMuteStatus(conversationId) + } + + /** + * 设置群消息免打扰模式 + * + * @param teamId 群组ID + * @param teamType 群组类型 + * @param muteMode 群消息免打扰模式 + */ + static async setTeamMessageMuteMode(teamId: string, teamType: V2NIMTeamType, + muteMode: V2NIMTeamMessageMuteMode): Promise { + await ChatKitClient.nim.settingService?.setTeamMessageMuteMode(teamId, teamType, muteMode) + } + + /** + * 获取群消息免打扰模式 + * + * @param teamId 群组ID + * @param teamType 群组类型 + * @return muteMode 群消息免打扰模式 + */ + static async getTeamMessageMuteMode(teamId: string, + teamType: V2NIMTeamType): Promise { + return await ChatKitClient.nim.settingService?.getTeamMessageMuteMode(teamId, teamType) + } + + /** + * 设置点对点消息免打扰模式 + * + * @param accountId 目标账号 ID + * @param muteMode 设置用户的免打扰模式 + */ + static async setP2PMessageMuteMode(accountId: string, muteMode: V2NIMP2PMessageMuteMode): Promise { + await ChatKitClient.nim.settingService?.setP2PMessageMuteMode(accountId, muteMode) + } + + /** + * 获取用户消息免打扰模式 + * + * @param accountId 目标账号 ID + * @return muteMode p2p 类型消息免打扰模式 + */ + static async getP2PMessageMuteMode(accountId: string): Promise { + return await ChatKitClient.nim.settingService?.getP2PMessageMuteMode(accountId) + } + + /** + * 获取点对点消息免打扰列表。 + * + * 返回 V2NIMP2PMessageMuteMode 为 V2NIM_P2P_MESSAGE_MUTE_MODE_ON 的 accountId 列表。 + */ + static async getP2PMessageMuteList(): Promise { + return await ChatKitClient.nim.settingService?.getP2PMessageMuteList() ?? [] + } + + /** + * 设置当桌面端在线时,移动端是否需要推送 + * + * @param need 桌面端在线时,移动端是否需要推送 + */ + static async setPushMobileOnDesktopOnline(need: boolean): Promise { + await ChatKitClient.nim.settingService?.setPushMobileOnDesktopOnline(need) + } + + /** + * 设置Apns免打扰与详情显示 + * + * @param config 免打扰与详情配置参数 + */ + static async setDndConfig(config: V2NIMDndConfig): Promise { + await ChatKitClient.nim.settingService?.setDndConfig(config) + } + + /** + * 获取Apns免打扰与详情显示 + * + * @return 免打扰与详情配置参数 + */ + static async getDndConfig(): Promise { + return await ChatKitClient.nim.settingService?.getDndConfig() + } +} \ No newline at end of file diff --git a/chatkit/src/main/ets/repo/StorageRepo.ets b/chatkit/src/main/ets/repo/StorageRepo.ets new file mode 100644 index 0000000..914e0b1 --- /dev/null +++ b/chatkit/src/main/ets/repo/StorageRepo.ets @@ -0,0 +1,104 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { + V2NIMGetMediaResourceInfoResult, + V2NIMMessageAttachment, + V2NIMProgressCallback, + V2NIMSize, + V2NIMStorageScene, + V2NIMUploadFileParams, + V2NIMUploadFileTask +} from '@nimsdk/base'; +import { ChatKitClient } from '../ChatKitClient'; + +export class StorageRepo { + /** + * 设置自定义场景 + * + * @param sceneName 自定义的场景名 + * @param expireTime 文件过期时间. 单位秒. 数值要求大于等于 86400 秒, 即 1 天. + */ + static addCustomStorageScene(sceneName: string, expireTime: number): V2NIMStorageScene | undefined { + return ChatKitClient.nim.storageService?.addCustomStorageScene(sceneName, expireTime) + } + + /** + * 查询存储场景列表 + */ + static getStorageSceneList(): V2NIMStorageScene[] { + return ChatKitClient.nim.storageService?.getStorageSceneList() ?? [] + } + + /** + * 创建文件上传任务 + * + * @param fileParams 上传文件参数 + * @returns 上传任务 + */ + static createUploadFileTask(fileParams: V2NIMUploadFileParams): V2NIMUploadFileTask | null { + return ChatKitClient.nim.storageService?.createUploadFileTask(fileParams) ?? null + } + + /** + * 上传文件 + * + * @param fileTask 上传任务,createUploadTask 函数返回值 + * @returns 文件的 url + */ + static async uploadFile(fileTask: V2NIMUploadFileTask, progress: V2NIMProgressCallback): Promise { + return await ChatKitClient.nim.storageService?.uploadFile(fileTask, progress) + } + + /** + * 取消文件上传 + * + * @param fileTask 上传任务,createUploadTask 函数返回值 + */ + static async cancelUploadFile(fileTask: V2NIMUploadFileTask): Promise { + return await ChatKitClient.nim.storageService?.cancelUploadFile(fileTask) + } + + /** + * 下载文件 + * + * @param url 下载文件 url + * @param filePath 文件下载存放的本地路径 + * @returns 文件的 url + */ + static async downloadFile(url: string, filePath: string, + progress: V2NIMProgressCallback): Promise { + return await ChatKitClient.nim.storageService?.downloadFile(url, filePath, progress) + } + + /** + * 取消文件下载 + * + * @param url 下载文件 url + * @returns + */ + static async cancelDownloadFile(url: string): Promise { + return await ChatKitClient.nim.storageService?.cancelDownloadFile(url) + } + + /** + * 短链接转长链接 + * + * @param url 文件远程地址 + * @returns 文件的 url + */ + static async shortUrlToLong(url: string): Promise { + return await ChatKitClient.nim.storageService?.shortUrlToLong(url) + } + + /** + * 生成图片缩略链接 + */ + static async getImageThumbUrl(attachment: V2NIMMessageAttachment, thumbSize: V2NIMSize): Promise { + return await ChatKitClient.nim.storageService?.getImageThumbUrl(attachment, thumbSize) + } +} \ No newline at end of file diff --git a/chatkit/src/main/ets/repo/TeamRepo.ets b/chatkit/src/main/ets/repo/TeamRepo.ets new file mode 100644 index 0000000..d3b2fff --- /dev/null +++ b/chatkit/src/main/ets/repo/TeamRepo.ets @@ -0,0 +1,649 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { + V2NIMAntispamConfig, + V2NIMCreateTeamParams, + V2NIMCreateTeamResult, + V2NIMTeam, + V2NIMTeamAgreeMode, + V2NIMTeamChatBannedMode, + V2NIMTeamInviteMode, + V2NIMTeamJoinActionInfo, + V2NIMTeamJoinActionInfoQueryOption, + V2NIMTeamJoinActionInfoResult, + V2NIMTeamJoinMode, + V2NIMTeamMember, + V2NIMTeamMemberListResult, + V2NIMTeamMemberQueryOption, + V2NIMTeamMemberRole, + V2NIMTeamMemberSearchOption, + V2NIMTeamMemberSearchResult, + V2NIMTeamType, + V2NIMTeamUpdateExtensionMode, + V2NIMTeamUpdateInfoMode, + V2NIMUpdateSelfMemberInfoParams, + V2NIMUpdateTeamInfoParams, + V2NIMUser +} from '@nimsdk/base' +import { ChatKitClient } from '../ChatKitClient' +import { TeamMemberResult, TeamMemberWithUser } from '../model/TeamMemberWithUser' +import { NEFriendUserCache } from '../NEFriendUserCache' +import { ContactRepo } from './ContactRepo' + + +interface TeamExtension { + im_ui_kit_group: boolean +} + +export class TeamRepo { + //默认群头像 + public static teamDefaultIcons = [ + "https://s.netease.im/safe/ABg8YjWQWvcqO6sAAAAAAAAAAAA?_im_url=1", + "https://s.netease.im/safe/ABg8YjmQWvcqO6sAAAAAAAABAAA?_im_url=1", + "https://s.netease.im/safe/ABg8YjyQWvcqO6sAAAAAAAABAAA?_im_url=1", + "https://s.netease.im/safe/ABg8YkCQWvcqO6sAAAAAAAABAAA?_im_url=1", + "https://s.netease.im/safe/ABg8YkSQWvcqO6sAAAAAAAABAAA?_im_url=1" + ] + + /** + * 创建讨论组 + * @param inviteeAccountIds + * @param postscript + * @param antispamConfig + * @returns + */ + static async createGroupTeam( + inviteeAccountIds?: string[], + postscript?: string, + antispamConfig?: V2NIMAntispamConfig): Promise { + let createParams: V2NIMCreateTeamParams = { + name: TeamRepo.getTeamNameByMemberId(inviteeAccountIds), + teamType: V2NIMTeamType.V2NIM_TEAM_TYPE_NORMAL, + joinMode: V2NIMTeamJoinMode.V2NIM_TEAM_JOIN_MODE_FREE, + inviteMode: V2NIMTeamInviteMode.V2NIM_TEAM_INVITE_MODE_ALL, + agreeMode: V2NIMTeamAgreeMode.V2NIM_TEAM_AGREE_MODE_NO_AUTH, + updateInfoMode: V2NIMTeamUpdateInfoMode.V2NIM_TEAM_UPDATE_INFO_MODE_ALL, + updateExtensionMode: V2NIMTeamUpdateExtensionMode.V2NIM_TEAM_UPDATE_EXTENSION_MODE_ALL, + serverExtension: JSON.stringify({ 'im_ui_kit_group': true }), + avatar: TeamRepo.teamDefaultIcons[Math.floor(Math.random() * 5)] + } + return TeamRepo.createTeam(createParams, + inviteeAccountIds, postscript, antispamConfig) + } + + /** + * 判断是否为讨论组 + * @param team + * @returns + */ + static isGroupTeam(team: V2NIMTeam) { + if (team.serverExtension && team.serverExtension.length > 0) { + try { + let obj = JSON.parse(team.serverExtension) as object | undefined + if (obj && obj['im_ui_kit_group'] === true) { + return true + } + } catch (e) { + console.error('TeamRepo isGroupTeam json parse error') + } + + } + return false + } + + /** + * 创建高级群 + * @param inviteeAccountIds + * @param postscript + * @param antispamConfig + * @returns + */ + static async createAdvanceTeam( + inviteeAccountIds?: string[], + postscript?: string, + antispamConfig?: V2NIMAntispamConfig): Promise { + let createParams: V2NIMCreateTeamParams = { + name: TeamRepo.getTeamNameByMemberId(inviteeAccountIds), + teamType: V2NIMTeamType.V2NIM_TEAM_TYPE_NORMAL, + joinMode: V2NIMTeamJoinMode.V2NIM_TEAM_JOIN_MODE_FREE, + inviteMode: V2NIMTeamInviteMode.V2NIM_TEAM_INVITE_MODE_MANAGER, + agreeMode: V2NIMTeamAgreeMode.V2NIM_TEAM_AGREE_MODE_NO_AUTH, + updateInfoMode: V2NIMTeamUpdateInfoMode.V2NIM_TEAM_UPDATE_INFO_MODE_MANAGER, + updateExtensionMode: V2NIMTeamUpdateExtensionMode.V2NIM_TEAM_UPDATE_EXTENSION_MODE_MANAGER, + avatar: TeamRepo.teamDefaultIcons[Math.floor(Math.random() * 5)] + } + return TeamRepo.createTeam(createParams, + inviteeAccountIds, postscript, antispamConfig) + } + + /** + * 创建一个群组 + * + * 注: 操作成功后, 触发事件的规则如下: + * - 操作者端(群主), SDK 抛出: {@link V2NIMTeamListener.onTeamCreated | V2NIMTeamListener.onTeamCreated} + * - agreeMode 需要被邀请者同意 + * - 被操作者端, SDK会抛出: {@link V2NIMTeamListener.onReceiveTeamJoinActionInfo | V2NIMTeamListener.onReceiveTeamJoinActionInfo} + * - agreeMode 不需被邀请者同意 + * - 被操作者端, SDK会抛出: {@link V2NIMTeamListener.onTeamJoined | V2NIMTeamListener.onTeamJoined} + * - 其他成员端, SDK会抛出: {@link V2NIMTeamListener.onTeamMemberJoined | V2NIMTeamListener.onTeamMemberJoined} + * + * @param createTeamParams 创建群组参数 + * @param invitorAccountIds 群组创建时,同时邀请加入群的成员列表 + * @param postscript 群组创建时,邀请入群的附言 + * @param antispamConfig 反垃圾参数. 如果开启了安全通,默认采用安全通,该配置不需要配置. + * 如果有审核需求,且直接对接易盾,则需要传入该配置 + */ + static async createTeam(createTeamParams: V2NIMCreateTeamParams, + inviteeAccountIds?: string[], + postscript?: string, + antispamConfig?: V2NIMAntispamConfig): Promise { + return await ChatKitClient.nim.teamService?.createTeam(createTeamParams, inviteeAccountIds, postscript, + antispamConfig) + } + + /** + * 修改群组信息 + * + * 注: 操作成功后, 触发事件的规则如下: + * - 全员用户端,SDK会抛出: {@link V2NIMTeamListener.onTeamInfoUpdated | V2NIMTeamListener.onTeamInfoUpdated} + * + * @param teamId 群组id + * @param teamType 群组类型 + * @param updateTeamInfoParams 更新群组信息参数 + * @param antispamConfig 反垃圾参数. 如果开启了安全通,默认采用安全通,该配置不需要配置. + * 如果有审核需求,且直接对接易盾,则需要传入该配置 + */ + static async updateTeamInfo(teamId: string, + teamType: V2NIMTeamType, + updateTeamInfoParams: V2NIMUpdateTeamInfoParams, + antispamConfig?: V2NIMAntispamConfig): Promise { + await ChatKitClient.nim.teamService?.updateTeamInfo(teamId, teamType, updateTeamInfoParams, antispamConfig) + } + + /** + * 退出群组 + * + * 注: 操作成功后, 触发事件的规则如下: + * - 操作者(自己本端),SDK会抛出: {@link V2NIMTeamListener.onTeamLeft | V2NIMTeamListener.onTeamLeft} + * - 群内其它用户端, SDK会抛出: {@link V2NIMTeamListener.onTeamMemberLeft | V2NIMTeamListener.onTeamMemberLeft} + * + * @param teamId 群组id + * @param teamType 群组类型 + */ + static async leaveTeam(teamId: string, teamType: V2NIMTeamType): Promise { + await ChatKitClient.nim.teamService?.leaveTeam(teamId, teamType) + } + + /** + * 获取群组信息 + * + * @param teamId 群组id + * @param teamType 群组类型 + */ + static async getTeamInfo(teamId: string, teamType: V2NIMTeamType): Promise { + return await ChatKitClient.nim.teamService?.getTeamInfo(teamId, teamType) + } + + /** + * 获取当前已经加入的群组列表 + * + * 注: 群组有效且自己在群中 + * + * @param teamTypes 群类型列表. 若不传入这个字段, 代表这个过滤条件不生效, 则查询所有群组 + */ + static async getJoinedTeamList(teamTypes?: V2NIMTeamType[]): Promise { + return await ChatKitClient.nim.teamService?.getJoinedTeamList(teamTypes) ?? [] + } + + /** + * 获取当前已经加入的群组数量 + * + * 注: 群组有效且自己在群中 + * + * @param teamTypes 群类型列表. 若不传入这个字段, 代表这个过滤条件不生效, 则查询所有群组 + */ + static async getJoinedTeamCount(teamTypes?: V2NIMTeamType[]): Promise { + return await ChatKitClient.nim.teamService?.getJoinedTeamCount(teamTypes) + } + + /** + * 根据群组ID获取群组信息 + * + * 每次最多100个群组ID. 先查本地数据,本地缺失再查询云端 + * + * @param teamIds 群组ID列表 + * @param teamType 群组类型 + */ + static async getTeamInfoByIds(teamIds: string[], + teamType: V2NIMTeamType): Promise { + return await ChatKitClient.nim.teamService?.getTeamInfoByIds(teamIds, teamType) ?? [] + } + + /** + * 解散群组 + * + * 注: 操作成功后, 触发事件的规则如下: + * - 全员, SDK会抛出: {@link V2NIMTeamListener.onTeamDismissed | V2NIMTeamListener.onTeamDismissed} + * + * @param teamId 群组id + * @param teamType 群组类型 + */ + static async dismissTeam(teamId: string, teamType: V2NIMTeamType): Promise { + await ChatKitClient.nim.teamService?.dismissTeam(teamId, teamType) + } + + /** + * 邀请成员加入群 + * + * 注: 操作成功后, 触发事件的规则如下: + * - agreeMode 需要被邀请者同意 + * - 被操作者端, SDK会抛出: {@link V2NIMTeamListener.onReceiveTeamJoinActionInfo | V2NIMTeamListener.onReceiveTeamJoinActionInfo} + * - agreeMode 不需要被邀请者同意 + * - 被操作者端, SDK会抛出: {@link V2NIMTeamListener.onTeamJoined | V2NIMTeamListener.onTeamJoined} + * - 其他成员端, SDK会抛出: {@link V2NIMTeamListener.onTeamMemberJoined | V2NIMTeamListener.onTeamMemberJoined} + * + * @param teamId 群组id + * @param teamType 群组类型 + * @param inviteeAccountIds 邀请加入群的成员账号列表 + * @param postscript 邀请入群的附言 + * @returns 邀请失败的账号列表 + */ + static async inviteMember(teamId: string, + teamType: V2NIMTeamType, + inviteeAccountIds: string[], + postscript?: string): Promise { + return await ChatKitClient.nim.teamService?.inviteMember(teamId, teamType, inviteeAccountIds, postscript) ?? [] + } + + /** + * 接受邀请入群 + * + * 注: 操作成功后, 触发事件的规则如下: + * - 操作者(既接受邀请用户)端, SDK会抛出: {@link V2NIMTeamListener.onTeamJoined | V2NIMTeamListener.onTeamJoined} + * - 其他成员端, SDK会抛出: {@link V2NIMTeamListener.onTeamMemberJoined | V2NIMTeamListener.onTeamMemberJoined} + * + * @param invitationInfo 邀请入群的信息 + */ + static async acceptInvitation(invitationInfo: V2NIMTeamJoinActionInfo): Promise { + return await ChatKitClient.nim.teamService?.acceptInvitation(invitationInfo) + } + + /** + * 拒绝邀请入群 + * + * 注: 操作成功后, 触发事件的规则如下: + * - 群主或管理员端, SDK会抛出: {@link V2NIMTeamListener.onReceiveTeamJoinActionInfo | V2NIMTeamListener.onReceiveTeamJoinActionInfo}‘ + * + * @param invitationInfo 邀请入群的信息 + */ + static async rejectInvitation(invitationInfo: V2NIMTeamJoinActionInfo, postscript?: string): Promise { + await ChatKitClient.nim.teamService?.rejectInvitation(invitationInfo) + } + + /** + * 踢出群组成员 + * + * 注1: 只有群主有权限操作改接口 + * + * 注2: 操作成功后, 触发事件的规则如下: + * - 被操作者(既被踢用户),SDK会抛出: {@link V2NIMTeamListener.onTeamLeft | V2NIMTeamListener.onTeamLeft} + * - 其他成员端,SDK会抛出: {@link V2NIMTeamListener.onTeamMemberKicked | V2NIMTeamListener.onTeamMemberKicked} + * + * @param teamId 群组id + * @param teamType 群组类型 + * @param memberAccountIds 踢出群组的成员账号列表 + */ + static async kickMember(teamId: string, teamType: V2NIMTeamType, memberAccountIds: string[]): Promise { + await ChatKitClient.nim.teamService?.kickMember(teamId, teamType, memberAccountIds) + } + + /** + * (用户)申请加入群组 + * + * 注: 操作成功后, 触发事件的规则如下: + * - joinMode 自由加入 + * - 操作者端,SDK 会抛出: {@link V2NIMTeamListener.onTeamJoined | V2NIMTeamListener.onTeamJoined} + * - 其他成员端, SDK 会抛出: {@link V2NIMTeamListener.onTeamMemberJoined | V2NIMTeamListener.onTeamMemberJoined} + * - joinMode 群主管理员同意 + * - 群主或管理员端,SDK 会抛出 {@link V2NIMTeamListener.onReceiveTeamJoinActionInfo | V2NIMTeamListener.onReceiveTeamJoinActionInfo} + * + * @param teamId 群组id + * @param teamType 群组类型 + * @param postscript 申请附言 + * @returns 对应的群信息 + */ + static async applyJoinTeam(teamId: string, + teamType: V2NIMTeamType, + postscript?: string): Promise { + return await ChatKitClient.nim.teamService?.applyJoinTeam(teamId, teamType, postscript) + } + + /** + * (管理员)接受(用户的)入群申请 + * + * 注: 操作成功后, 触发事件的规则如下: + * - 被操作者(既被同意用户),SDK会抛出: {@link V2NIMTeamListener.onTeamJoined | V2NIMTeamListener.onTeamJoined} + * - 其他成员, SDK会抛出: {@link V2NIMTeamListener.onTeamMemberJoined | V2NIMTeamListener.onTeamMemberJoined} + * + * @param applicationInfo 该申请的相关信息 + */ + static async acceptJoinApplication(applicationInfo: V2NIMTeamJoinActionInfo): Promise { + await ChatKitClient.nim.teamService?.acceptJoinApplication(applicationInfo) + } + + /** + * (管理员)拒绝(用户的)入群申请 + * + * 注: 操作成功后, 触发事件的规则如下: + * - 被操作用户(既被拒绝用户), SDK会抛出: {@link V2NIMTeamListener.onReceiveTeamJoinActionInfo | V2NIMTeamListener.onReceiveTeamJoinActionInfo} + * + * @param applicationInfo 该申请的相关信息 + */ + static async rejectJoinApplication(applicationInfo: V2NIMTeamJoinActionInfo, postscript?: string): Promise { + await ChatKitClient.nim.teamService?.rejectJoinApplication(applicationInfo, postscript) + } + + /** + * 设置成员角色 + * + * 注1: 本操作只有群主可操作, 且只能在普通成员与管理员直接角色切换, 如果成员设置角色与当前角色一致,默认请求成功 + * + * 注2: 操作成功后, 触发事件的规则如下: + * - 所有成员,SDK会抛出: @link V2NIMTeamListener.onTeamMemberInfoUpdated | V2NIMTeamListener.onTeamMemberInfoUpdated} + * + * @param teamId 群组id + * @param teamType 群组类型 + * @param memberAccountIds 待操作的群组的成员账号列表 + * @param memberRole 新的角色类型 + */ + static async updateTeamMemberRole(teamId: string, + teamType: V2NIMTeamType, + memberAccountIds: string[], + memberRole: V2NIMTeamMemberRole): Promise { + await ChatKitClient.nim.teamService?.updateTeamMemberRole(teamId, teamType, memberAccountIds, memberRole) + } + + /** + * 移交群主 + * + * 注1: 本操作只有群主可操作 + * + * 注2: 操作成功后, 触发事件的规则如下: + * - 所有成员,SDK会抛出: {@link V2NIMTeamListener.onTeamInfoUpdated | V2NIMTeamListener.onTeamInfoUpdated}‘ + * - 若入参 leave 为 true: + * - 操作者, SDK会抛出:onTeamLeft + * - 其它成员, SDK会抛出:onTeamMemberLeft + * + * @param teamId 群组id + * @param teamType 群组类型 + * @param accountId 新群主的账号 ID + * @param leave 转让群主后, 操作者是否同时退出该群. 默认为 false + * @returns 该操作的时间戳 + */ + static async transferTeamOwner(teamId: string, + teamType: V2NIMTeamType, + accountId: string, + leave?: boolean): Promise { + await ChatKitClient.nim.teamService?.transferTeamOwner(teamId, teamType, accountId, leave) + } + + /** + * 修改自己的群成员信息 + * + * 注: 操作成功后, 触发事件的规则如下: + * - 所有成员, SDK会抛出: {@link V2NIMTeamListener.onTeamMemberInfoUpdated | V2NIMTeamListener.onTeamMemberInfoUpdated} + * + * @param teamId 群组id + * @param teamType 群组类型 + * @param memberInfoParams 被修改的字段 + */ + static async updateSelfTeamMemberInfo(teamId: string, + teamType: V2NIMTeamType, + memberInfoParams: V2NIMUpdateSelfMemberInfoParams): Promise { + await ChatKitClient.nim.teamService?.updateSelfTeamMemberInfo(teamId, teamType, memberInfoParams) + } + + /** + * 修改群成员昵称 + * + * 注: 只有群主和管理员拥有此权限可操作 + * + * 注: 操作成功后, 触发事件的规则如下: + * - 所有成员,SDK会抛出: {@link V2NIMTeamListener.onTeamMemberInfoUpdated | V2NIMTeamListener.onTeamMemberInfoUpdated} + * + * @param teamId 群组id + * @param teamType 群组类型 + * @param accountId 新群主的账号 ID + * @param nick 昵称 + */ + static async updateTeamMemberNick(teamId: string, + teamType: V2NIMTeamType, + accountId: string, + nick: string): Promise { + await ChatKitClient.nim.teamService?.updateTeamMemberNick(teamId, teamType, accountId, nick) + } + + /** + * 设置群组禁言模式 + * + * 注: 操作成功后, 触发事件的规则如下: + * - 所有成员,SDK会抛出: {@link V2NIMTeamListener.onTeamInfoUpdated | V2NIMTeamListener.onTeamInfoUpdated} + * + * @param teamId 群组id + * @param teamType 群组类型 + * @param chatBannedMode 禁言模式 + */ + static async setTeamChatBannedMode(teamId: string, + teamType: V2NIMTeamType, + chatBannedMode: V2NIMTeamChatBannedMode): Promise { + await ChatKitClient.nim.teamService?.setTeamChatBannedMode(teamId, teamType, chatBannedMode) + } + + /** + * 设置群组成员聊天禁言状态 + * + * 注: 操作成功后, 触发事件的规则如下: + * - 所有成员, SDK会抛出: {@link V2NIMTeamListener.onTeamMemberInfoUpdated | V2NIMTeamListener.onTeamMemberInfoUpdated} + * + * @param teamId 群组id + * @param teamType 群组类型 + * @param accountId 被修改成员的账号 + * @param chatBanned 群组中聊天是否被禁言 + */ + static async setTeamMemberChatBannedStatus(teamId: string, teamType: V2NIMTeamType, accountId: string, + chatBanned: boolean): Promise { + await ChatKitClient.nim.teamService?.setTeamMemberChatBannedStatus(teamId, teamType, accountId, chatBanned) + } + + /** + * 获取群成员列表 + * + * @param teamId 群组id + * @param teamType 群组类型 + * @param memberRoles 成员角色 + * @returns 查询结果 + */ + static async getTeamMemberList(teamId: string, + teamType: V2NIMTeamType, + queryOption: V2NIMTeamMemberQueryOption): Promise { + return await ChatKitClient.nim.teamService?.getTeamMemberList(teamId, teamType, queryOption) + } + + /** + * 根据账号 ID 列表获取群组成员列表 + * + * @param teamId 群组id + * @param teamType 群组类型 + * @param accountIds 成员的账号 ID 列表 + * @returns 成员列表 + */ + static async getTeamMemberListByIds(teamId: string, + teamType: V2NIMTeamType, + accountIds: string[]): Promise { + return await ChatKitClient.nim.teamService?.getTeamMemberListByIds(teamId, teamType, accountIds) ?? [] + } + + /** + * 获取群加入相关信息 + * + * @param option 查询参数 + */ + static async getTeamJoinActionInfoList(option: V2NIMTeamJoinActionInfoQueryOption): Promise { + return await ChatKitClient.nim.teamService?.getTeamJoinActionInfoList(option) + } + + /** + * 根据关键字搜索群信息 + * - 混合搜索高级群和超大群,like匹配 + * - 只搜索群名称 + */ + static async searchTeamByKeyword(keyword: string): Promise { + // TODO: 等待SDK实现 + // return await ChatKitClient.nim.teamService?.searchTeamByKeyword(keyword) ?? [] + return [] + } + + /** + * 根据关键字搜索群成员 + * + * @param searchOption 搜索参数 + * @param success 成功回调 + * @param failure 失败回调 + */ + static async searchTeamMembers(searchOption: V2NIMTeamMemberSearchOption): Promise { + // TODO: 等待SDK实现 + // return await ChatKitClient.nim.teamService?.searchTeamMembers(searchOption) + return undefined + } + + /** + * 分页获取群成员列表,包含用户和好友信息 + * @param teamId + * @param teamType + * @param limit + * @param nextToken + * @returns + */ + static async getTeamMembers(teamId: string, + teamType: V2NIMTeamType, queryOption: V2NIMTeamMemberQueryOption): Promise { + let teamMemberResult = await TeamRepo.getTeamMemberList( + teamId, + teamType, + queryOption + ) + + let teamMembers: TeamMemberWithUser[] | undefined = teamMemberResult?.memberList.map((teamMember) => { + return new TeamMemberWithUser(teamMember, + NEFriendUserCache.getInstance().getFriendById(teamMember.accountId)?.friend, + NEFriendUserCache.getInstance().getFriendById(teamMember.accountId)?.user) + }) + + let noUserAccIdList = teamMembers?.filter((member) => { + return !member.userInfo + }).map((teamMember) => { + return teamMember.teamMember.accountId + }) + + if (noUserAccIdList && noUserAccIdList.length > 0) { + let userList = await ContactRepo.getUserList(noUserAccIdList) + + let userMap = userList.reduce((acc, cur, _index) => { + acc.set(cur.accountId, cur) + return acc + }, new Map()) + + teamMembers?.forEach((member) => { + if (!member.userInfo) { + member.userInfo = userMap.get(member.teamMember.accountId) + } + }) + } + if (teamMemberResult) { + let result: TeamMemberResult = { + finished: teamMemberResult?.finished, + nextToken: teamMemberResult?.nextToken, + memberList: teamMembers ?? [] + } + return result + } + + return + + } + + /** + * 根据成员id查询群成员的信息 + * @param teamId + * @param teamType + * @param accountIds + * @returns + */ + static async getTeamMembersByIds(teamId: string, + teamType: V2NIMTeamType, accountIds: string[]): Promise { + let teamMemberList: V2NIMTeamMember[] = [] + try { + teamMemberList = await TeamRepo.getTeamMemberListByIds( + teamId, + teamType, + accountIds + ) + console.debug(`TeamRepo getTeamMembersByIds result = ${teamMemberList.length} `); + } catch (e) { + console.error(`TeamRepo getTeamMembersByIds ${e}`); + } + + let teamMembers: TeamMemberWithUser[] = teamMemberList.map((teamMember) => { + return new TeamMemberWithUser(teamMember, + NEFriendUserCache.getInstance().getFriendById(teamMember.accountId)?.friend, + NEFriendUserCache.getInstance().getFriendById(teamMember.accountId)?.user) + }) + + let noUserAccIdList = teamMembers?.filter((member) => { + return !member.userInfo + }).map((teamMember) => { + return teamMember.teamMember.accountId + }) + + if (noUserAccIdList && noUserAccIdList.length > 0) { + let userList = await ContactRepo.getUserList(noUserAccIdList) + + let userMap = userList.reduce((acc, cur, _index) => { + acc.set(cur.accountId, cur) + return acc + }, new Map()) + + teamMembers?.forEach((member) => { + if (!member.userInfo) { + member.userInfo = userMap.get(member.teamMember.accountId) + } + }) + } + + return teamMembers + + } + + + /** + * 根据群成员生成群名 + * @param inviteeAccountIds + * @returns + */ + private static getTeamNameByMemberId(inviteeAccountIds?: string[]): string { + if (inviteeAccountIds) { + let inviteeUser = NEFriendUserCache.getInstance().getFriendsByIds(inviteeAccountIds) + let inviteeNames = inviteeUser.map(user => user.user?.name ?? user.user?.accountId) + let teamName = inviteeNames.slice(0, Math.min(inviteeNames.length, 30)).join('、') + let mineName = NEFriendUserCache.mineUserCache?.showName(false) + teamName = mineName + '、' + teamName + return teamName.slice(0, Math.min(teamName.length, 30)) + } + return '' + + } +} \ No newline at end of file diff --git a/chatkit/src/main/ets/utils/CustomMessageUtils.ets b/chatkit/src/main/ets/utils/CustomMessageUtils.ets new file mode 100644 index 0000000..53aec4e --- /dev/null +++ b/chatkit/src/main/ets/utils/CustomMessageUtils.ets @@ -0,0 +1,57 @@ +import { V2NIMMessageAttachment } from '@nimsdk/base'; +import { mergedMessageCustomType } from '../constant/Constant'; +import { MergedMessageAttachment } from '../model/CustomMessageAttachment'; + +export class CustomMessageUtils { + public static attachmentOfCustomMessage(attachment: V2NIMMessageAttachment) { + if (attachment.raw) { + try { + let attachmentObject = JSON.parse(attachment.raw) as object + return attachmentObject + } catch (err) { + console.error(err) + return undefined + } + } + return undefined + } + + public static typeOfCustomMessage(attachment: V2NIMMessageAttachment) { + let customAttachment = CustomMessageUtils.attachmentOfCustomMessage(attachment) + if (customAttachment) { + return customAttachment["type"] as number + } + return undefined + } + + public static dataOfCustomMessage(attachment: V2NIMMessageAttachment) { + let customAttachment = CustomMessageUtils.attachmentOfCustomMessage(attachment) + let type = CustomMessageUtils.typeOfCustomMessage(attachment) + if (type === mergedMessageCustomType) { + return customAttachment?.["data"] as MergedMessageAttachment + } + return customAttachment?.["data"] as object + } + + public static heightOfCustomMessage(attachment: V2NIMMessageAttachment) { + let customAttachment = CustomMessageUtils.attachmentOfCustomMessage(attachment) + if (customAttachment) { + return customAttachment["customHeight"] as number + } + return undefined + } + + /// 是否是【未知消息】 + public static isUnknownMessage(attachment?: V2NIMMessageAttachment) { + if (attachment) { + const customType = CustomMessageUtils.typeOfCustomMessage(attachment) + switch (customType) { + case mergedMessageCustomType: + return false + default: + return true + } + } + return false + } +} \ No newline at end of file diff --git a/chatkit/src/main/ets/utils/ErrorUtils.ets b/chatkit/src/main/ets/utils/ErrorUtils.ets new file mode 100644 index 0000000..aa3e87f --- /dev/null +++ b/chatkit/src/main/ets/utils/ErrorUtils.ets @@ -0,0 +1,54 @@ +import { promptAction } from '@kit.ArkUI'; +import { V2NIMErrorCode } from '@nimsdk/base'; +import { ChatKitClient } from '../ChatKitClient'; + +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +export class ErrorUtils { + static handleErrorToast(errorCode: number) { + + let msg: ResourceStr = $r('app.string.unknown_error'); + switch (errorCode) { + case V2NIMErrorCode.V2NIM_ERROR_CODE_PIN_LIMIT: + msg = $r('app.string.chat_pin_limit_error_tips') + break + case V2NIMErrorCode.V2NIM_ERROR_CODE_COLLECTION_LIMIT: + msg = $r('app.string.chat_collection_limit_error_tips') + break + case V2NIMErrorCode.V2NIM_ERROR_CODE_ILLEGAL_STATE: + msg = $r('app.string.chat_network_error_tips') + break + } + + try { + promptAction.showToast({ + message: msg, + alignment: Alignment.Bottom + }) + } catch (error) { + console.error(`showToast args error code is ${error.code}, message is ${error.message}`); + } + } + + static checkNetworkAndToast(): boolean { + if (ChatKitClient.connectBroken()) { + ErrorUtils.showToast($r('app.string.chat_network_error_tips')) + } + return !ChatKitClient.connectBroken() + } + + private static showToast(msg: ResourceStr) { + try { + promptAction.showToast({ + message: msg, + alignment: Alignment.Bottom + }) + } catch (error) { + console.error(`showToast args error code is ${error.code}, message is ${error.message}`); + } + } +} diff --git a/chatkit/src/main/ets/utils/EventHubUtil.ets b/chatkit/src/main/ets/utils/EventHubUtil.ets new file mode 100644 index 0000000..5ce6cc6 --- /dev/null +++ b/chatkit/src/main/ets/utils/EventHubUtil.ets @@ -0,0 +1,25 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +export class EventHubUtil { + private eventhub = getContext(this).eventHub + + /// 订阅事件 + public on(eventName: string, callback: Function) { + this.eventhub.on(eventName, callback) + } + + /// 取消订阅事件 + public off(eventName: string, callback?: Function) { + this.eventhub.off(eventName, callback) + } + + /// 触发事件 + public emit(eventName: string, params: Object) { + this.eventhub.emit(eventName, params) + } +} diff --git a/chatkit/src/main/ets/utils/MessageUtils.ets b/chatkit/src/main/ets/utils/MessageUtils.ets new file mode 100644 index 0000000..7efef14 --- /dev/null +++ b/chatkit/src/main/ets/utils/MessageUtils.ets @@ -0,0 +1,53 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { systemDateTime } from '@kit.BasicServicesKit'; +import { V2NIMMessage, V2NIMMessageRevokeNotification } from '@nimsdk/base'; +import { ChatKitClient } from '../ChatKitClient'; +import { RevokeMessageExtension } from '../model/RevokeMessageExtension'; +import { ChatRepo } from '../repo/ChatRepo'; + +// 保存撤回消息到本地 +export function saveLocalRevokeMessage(conversationId: string, msg: V2NIMMessage, edit: boolean) { + // let currentTime = systemDateTime.getTime() + // let revokeText = getContext().resourceManager.getStringByNameSync('chat_msg_undo_tips'); + // let revokeMsg = ChatKitClient.nim.messageCreator.createTextMessage(revokeText) + // revokeMsg.serverExtension = msg.serverExtension + // revokeMsg.threadReply = msg.threadReply + // let localExtension = { + // revoke_message_local: true, + // revoke_message_local_time: currentTime, + // revoke_message_client_id: msg.messageClientId, + // revoke_message_local_edit: edit, + // revoke_message_local_content: msg.text ?? '' + // + // } as RevokeMessageExtension + // + // revokeMsg.localExtension = JSON.stringify(localExtension) + // let createTime = msg.createTime + 10 + // console.debug('netease saveLocalRevokeMessage:', revokeMsg.localExtension) + // ChatRepo.saveLocalMessage(revokeMsg, conversationId, ChatKitClient.getLoginUserId(), createTime) +} + +// 保存他人撤回消息到本地 +export function saveLocalRevokeMessageFormOther(conversationId: string, msgNotify: V2NIMMessageRevokeNotification, + edit: boolean) { + // let currentTime = systemDateTime.getTime() + // let revokeText = getContext().resourceManager.getStringByNameSync('chat_msg_undo_tips'); + // let revokeMsg = ChatKitClient.nim.messageCreator.createTextMessage(revokeText) + // let localExtension = { + // revoke_message_local: false, + // revoke_message_local_time: currentTime, + // revoke_message_client_id: msgNotify.messageRefer.messageClientId, + // revoke_message_local_edit: edit, + // revoke_message_local_content: '' + // } as RevokeMessageExtension + // + // revokeMsg.localExtension = JSON.stringify(localExtension) + // console.debug('netease saveLocalRevokeMessageFormOther:', revokeMsg.localExtension) + // let createTime = msgNotify.messageRefer.createTime + 10; + // ChatRepo.saveLocalMessage(revokeMsg, conversationId, msgNotify.revokeAccountId, createTime) +} diff --git a/chatkit/src/main/ets/utils/Utils.ets b/chatkit/src/main/ets/utils/Utils.ets new file mode 100644 index 0000000..674709c --- /dev/null +++ b/chatkit/src/main/ets/utils/Utils.ets @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { V2NIMTeam } from '@nimsdk/base'; + +const discussTeamKey = "im_ui_kit_group" // 讨论组识别关键字 + +/// 判断是否是讨论组 +export function IsDiscussion(team?: V2NIMTeam) { + if (team?.serverExtension && team.serverExtension.includes(discussTeamKey)) { + return true + } + return false +} \ No newline at end of file diff --git a/chatkit/src/main/module.json5 b/chatkit/src/main/module.json5 new file mode 100644 index 0000000..24e7ae9 --- /dev/null +++ b/chatkit/src/main/module.json5 @@ -0,0 +1,11 @@ +{ + "module": { + "name": "chatkit", + "type": "har", + "deviceTypes": [ + "default", + "tablet", + "2in1" + ] + } +} diff --git a/chatkit/src/main/resources/base/element/string.json b/chatkit/src/main/resources/base/element/string.json new file mode 100644 index 0000000..c536fbc --- /dev/null +++ b/chatkit/src/main/resources/base/element/string.json @@ -0,0 +1,76 @@ +{ + "string": [ + { + "name": "unknown_error", + "value": "未知错误" + }, + { + "name": "chat_network_error_tips", + "value": "当前网络不可用,请检查你的网络设置。" + }, + { + "name": "chat_pin_limit_error_tips", + "value": "PIN消息已达最大限制" + }, + { + "name": "chat_collection_limit_error_tips", + "value": "收藏数已达到限制值" + }, + { + "name": "chatMessageNonsupportType", + "value": "[当前版本暂不支持该消息体]" + }, + { + "name": "audioMessageType", + "value": "[语音消息]" + }, + { + "name": "imageMessageType", + "value": "[图片消息]" + }, + { + "name": "videoMessageType", + "value": "[视频消息]" + }, + { + "name": "locationMessageType", + "value": "[地理位置]" + }, + { + "name": "fileMessageType", + "value": "[文件消息]" + }, + { + "name": "notificationMessageType", + "value": "[通知消息]" + }, + { + "name": "tipMessageType", + "value": "[提醒消息]" + }, + { + "name": "chatHistoryBrief", + "value": "聊天记录" + }, + { + "name": "msg_type_rtc_video", + "value": "[视频通话]" + }, + { + "name": "msg_type_rtc_audio", + "value": "[语音通话]" + }, + { + "name": "msg_send_failed_in_block", + "value": "对方已将你拉黑,发送消息失败" + }, + { + "name": "msg_send_failed_no_friend", + "value": "双方好友关系已解除,如需沟通,请申请" + }, + { + "name": "msg_send_failed_friend_application", + "value": "好友验证" + } + ] +} diff --git a/chatkit/src/main/resources/en_US/element/string.json b/chatkit/src/main/resources/en_US/element/string.json new file mode 100644 index 0000000..db77ea3 --- /dev/null +++ b/chatkit/src/main/resources/en_US/element/string.json @@ -0,0 +1,76 @@ +{ + "string": [ + { + "name": "unknown_error", + "value": "Unknown error" + }, + { + "name": "chat_network_error_tips", + "value": "network error" + }, + { + "name": "chat_pin_limit_error_tips", + "value": "PIN Message Limit reached" + }, + { + "name": "chat_collection_limit_error_tips", + "value": "Collection Message Limit reached" + }, + { + "name": "chatMessageNonsupportType", + "value": "[Nonsupport Message]" + }, + { + "name": "audioMessageType", + "value": "[Audio Message]" + }, + { + "name": "imageMessageType", + "value": "[Image Message]" + }, + { + "name": "videoMessageType", + "value": "[Video Message]" + }, + { + "name": "locationMessageType", + "value": "[Location Message]" + }, + { + "name": "fileMessageType", + "value": "[File Message]" + }, + { + "name": "notificationMessageType", + "value": "[Notification Message]" + }, + { + "name": "tipMessageType", + "value": "[Tip Message]" + }, + { + "name": "chatHistoryBrief", + "value": "Chat History" + }, + { + "name": "msg_type_rtc_video", + "value": "[Video Chat]" + }, + { + "name": "msg_type_rtc_audio", + "value": "[Audio Chat]" + }, + { + "name": "msg_send_failed_in_block", + "value": "The other party has blocked you, message sending failed" + }, + { + "name": "msg_send_failed_no_friend", + "value": "The relationship between both parties has been terminated, please " + }, + { + "name": "msg_send_failed_friend_application", + "value": "reapply for contact" + } + ] +} diff --git a/chatkit/src/main/resources/zh_CN/element/string.json b/chatkit/src/main/resources/zh_CN/element/string.json new file mode 100644 index 0000000..c536fbc --- /dev/null +++ b/chatkit/src/main/resources/zh_CN/element/string.json @@ -0,0 +1,76 @@ +{ + "string": [ + { + "name": "unknown_error", + "value": "未知错误" + }, + { + "name": "chat_network_error_tips", + "value": "当前网络不可用,请检查你的网络设置。" + }, + { + "name": "chat_pin_limit_error_tips", + "value": "PIN消息已达最大限制" + }, + { + "name": "chat_collection_limit_error_tips", + "value": "收藏数已达到限制值" + }, + { + "name": "chatMessageNonsupportType", + "value": "[当前版本暂不支持该消息体]" + }, + { + "name": "audioMessageType", + "value": "[语音消息]" + }, + { + "name": "imageMessageType", + "value": "[图片消息]" + }, + { + "name": "videoMessageType", + "value": "[视频消息]" + }, + { + "name": "locationMessageType", + "value": "[地理位置]" + }, + { + "name": "fileMessageType", + "value": "[文件消息]" + }, + { + "name": "notificationMessageType", + "value": "[通知消息]" + }, + { + "name": "tipMessageType", + "value": "[提醒消息]" + }, + { + "name": "chatHistoryBrief", + "value": "聊天记录" + }, + { + "name": "msg_type_rtc_video", + "value": "[视频通话]" + }, + { + "name": "msg_type_rtc_audio", + "value": "[语音通话]" + }, + { + "name": "msg_send_failed_in_block", + "value": "对方已将你拉黑,发送消息失败" + }, + { + "name": "msg_send_failed_no_friend", + "value": "双方好友关系已解除,如需沟通,请申请" + }, + { + "name": "msg_send_failed_friend_application", + "value": "好友验证" + } + ] +} diff --git a/chatkit/src/ohosTest/ets/test/Ability.test.ets b/chatkit/src/ohosTest/ets/test/Ability.test.ets new file mode 100644 index 0000000..25f1ffb --- /dev/null +++ b/chatkit/src/ohosTest/ets/test/Ability.test.ets @@ -0,0 +1,42 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { hilog } from '@kit.PerformanceAnalysisKit'; +import { afterAll, afterEach, beforeAll, beforeEach, describe, expect, it } from '@ohos/hypium'; + +export default function abilityTest() { + describe('ActsAbilityTest', () => { + // Defines a test suite. Two parameters are supported: test suite name and test suite function. + beforeAll(() => { + // Presets an action, which is performed only once before all test cases of the test suite start. + // This API supports only one parameter: preset action function. + }) + beforeEach(() => { + // Presets an action, which is performed before each unit test case starts. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: preset action function. + }) + afterEach(() => { + // Presets a clear action, which is performed after each unit test case ends. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: clear action function. + }) + afterAll(() => { + // Presets a clear action, which is performed after all test cases of the test suite end. + // This API supports only one parameter: clear action function. + }) + it('assertContain', 0, () => { + // Defines a test case. This API supports three parameters: test case name, filter parameter, and test case function. + hilog.info(0x0000, 'testTag', '%{public}s', 'it begin'); + let a = 'abc'; + let b = 'b'; + // Defines a variety of assertion methods, which are used to declare expected boolean conditions. + expect(a).assertContain(b); + expect(a).assertEqual(a); + }) + }) +} \ No newline at end of file diff --git a/chatkit/src/ohosTest/ets/test/List.test.ets b/chatkit/src/ohosTest/ets/test/List.test.ets new file mode 100644 index 0000000..b3acbf7 --- /dev/null +++ b/chatkit/src/ohosTest/ets/test/List.test.ets @@ -0,0 +1,12 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import abilityTest from './Ability.test'; + +export default function testsuite() { + abilityTest(); +} \ No newline at end of file diff --git a/chatkit/src/ohosTest/module.json5 b/chatkit/src/ohosTest/module.json5 new file mode 100644 index 0000000..9735c8d --- /dev/null +++ b/chatkit/src/ohosTest/module.json5 @@ -0,0 +1,13 @@ +{ + "module": { + "name": "chatkit_test", + "type": "feature", + "deviceTypes": [ + "default", + "tablet", + "2in1" + ], + "deliveryWithInstall": true, + "installationFree": false + } +} diff --git a/chatkit/src/test/List.test.ets b/chatkit/src/test/List.test.ets new file mode 100644 index 0000000..5a7099d --- /dev/null +++ b/chatkit/src/test/List.test.ets @@ -0,0 +1,12 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import localUnitTest from './LocalUnit.test'; + +export default function testsuite() { + localUnitTest(); +} \ No newline at end of file diff --git a/chatkit/src/test/LocalUnit.test.ets b/chatkit/src/test/LocalUnit.test.ets new file mode 100644 index 0000000..c7f1321 --- /dev/null +++ b/chatkit/src/test/LocalUnit.test.ets @@ -0,0 +1,40 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { afterAll, afterEach, beforeAll, beforeEach, describe, expect, it } from '@ohos/hypium'; + +export default function localUnitTest() { + describe('localUnitTest', () => { + // Defines a test suite. Two parameters are supported: test suite name and test suite function. + beforeAll(() => { + // Presets an action, which is performed only once before all test cases of the test suite start. + // This API supports only one parameter: preset action function. + }); + beforeEach(() => { + // Presets an action, which is performed before each unit test case starts. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: preset action function. + }); + afterEach(() => { + // Presets a clear action, which is performed after each unit test case ends. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: clear action function. + }); + afterAll(() => { + // Presets a clear action, which is performed after all test cases of the test suite end. + // This API supports only one parameter: clear action function. + }); + it('assertContain', 0, () => { + // Defines a test case. This API supports three parameters: test case name, filter parameter, and test case function. + let a = 'abc'; + let b = 'b'; + // Defines a variety of assertion methods, which are used to declare expected boolean conditions. + expect(a).assertContain(b); + expect(a).assertEqual(a); + }); + }); +} \ No newline at end of file diff --git a/chatkit_ui/.gitignore b/chatkit_ui/.gitignore new file mode 100644 index 0000000..eadab4e --- /dev/null +++ b/chatkit_ui/.gitignore @@ -0,0 +1,7 @@ +/node_modules +/oh_modules +/.preview +/build +/.cxx +/.test +/oh-package-lock.json5 \ No newline at end of file diff --git a/chatkit_ui/BuildProfile.ets b/chatkit_ui/BuildProfile.ets new file mode 100644 index 0000000..f8f2bba --- /dev/null +++ b/chatkit_ui/BuildProfile.ets @@ -0,0 +1,17 @@ +/** + * Use these variables when you tailor your ArkTS code. They must be of the const type. + */ +export const HAR_VERSION = '10.1.0'; +export const BUILD_MODE_NAME = 'release'; +export const DEBUG = false; +export const TARGET_NAME = 'default'; + +/** + * BuildProfile Class is used only for compatibility purposes. + */ +export default class BuildProfile { + static readonly HAR_VERSION = HAR_VERSION; + static readonly BUILD_MODE_NAME = BUILD_MODE_NAME; + static readonly DEBUG = DEBUG; + static readonly TARGET_NAME = TARGET_NAME; +} \ No newline at end of file diff --git a/chatkit_ui/Index.ets b/chatkit_ui/Index.ets new file mode 100644 index 0000000..f5dcbe9 --- /dev/null +++ b/chatkit_ui/Index.ets @@ -0,0 +1,16 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +export { NEEmojiManager } from './src/main/ets/manager/NEEmojiManager' + +export { ChatP2PPage } from './src/main/ets/pages/ChatP2PPage' + +export { ForwardMessageDialog } from './src/main/ets/view/ForwardMessageDialog' + +export { TextMessageDetailDialog } from './src/main/ets/view/TextMessageDetailDialog' + +export { MessageItemClick } from './src/main/ets/view/MessageItemClick' \ No newline at end of file diff --git a/chatkit_ui/build-profile.json5 b/chatkit_ui/build-profile.json5 new file mode 100644 index 0000000..22da177 --- /dev/null +++ b/chatkit_ui/build-profile.json5 @@ -0,0 +1,28 @@ +{ + "apiType": "stageMode", + "buildOption": { + }, + "buildOptionSet": [ + { + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } + }, + ], + "targets": [ + { + "name": "default" + } + ] +} \ No newline at end of file diff --git a/chatkit_ui/consumer-rules.txt b/chatkit_ui/consumer-rules.txt new file mode 100644 index 0000000..e69de29 diff --git a/chatkit_ui/hvigorfile.ts b/chatkit_ui/hvigorfile.ts new file mode 100644 index 0000000..9d34d19 --- /dev/null +++ b/chatkit_ui/hvigorfile.ts @@ -0,0 +1,13 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { harTasks } from '@ohos/hvigor-ohos-plugin'; + +export default { + system: harTasks, /* Built-in plugin of Hvigor. It cannot be modified. */ + plugins: [] /* Custom plugin to extend the functionality of Hvigor. */ +} diff --git a/chatkit_ui/obfuscation-rules.txt b/chatkit_ui/obfuscation-rules.txt new file mode 100644 index 0000000..272efb6 --- /dev/null +++ b/chatkit_ui/obfuscation-rules.txt @@ -0,0 +1,23 @@ +# Define project specific obfuscation rules here. +# You can include the obfuscation configuration files in the current module's build-profile.json5. +# +# For more details, see +# https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/source-obfuscation-V5 + +# Obfuscation options: +# -disable-obfuscation: disable all obfuscations +# -enable-property-obfuscation: obfuscate the property names +# -enable-toplevel-obfuscation: obfuscate the names in the global scope +# -compact: remove unnecessary blank spaces and all line feeds +# -remove-log: remove all console.* statements +# -print-namecache: print the name cache that contains the mapping from the old names to new names +# -apply-namecache: reuse the given cache file + +# Keep options: +# -keep-property-name: specifies property names that you want to keep +# -keep-global-name: specifies names that you want to keep in the global scope + +-enable-property-obfuscation +-enable-toplevel-obfuscation +-enable-filename-obfuscation +-enable-export-obfuscation \ No newline at end of file diff --git a/chatkit_ui/oh-package.json5 b/chatkit_ui/oh-package.json5 new file mode 100644 index 0000000..5b38157 --- /dev/null +++ b/chatkit_ui/oh-package.json5 @@ -0,0 +1,19 @@ +{ + "name": "@nimkit/chatkit_ui", + "version": "10.1.0", + "description": "Please describe the basic information.", + "main": "Index.ets", + "author": "", + "license": "Apache-2.0", + "dependencies": { + "@nimkit/common": "file:../common", + "@nimkit/chatkit": "file:../chatkit", + "@nimkit/corekit": "file:../corekit", + "@nimsdk/base": "10.9.10", + "class-transformer": "^0.5.1", + "reflect-metadata": "^0.1.13", + '@nimkit/markdown': "1.1.0", + "@itcast/basic":"file:../commons/basic" + // 用于嵌套对象@Type反射 + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/ChatKitConfig.ets b/chatkit_ui/src/main/ets/ChatKitConfig.ets new file mode 100644 index 0000000..37a2e0b --- /dev/null +++ b/chatkit_ui/src/main/ets/ChatKitConfig.ets @@ -0,0 +1,16 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +export class ChatKitConfig { + //消息撤回时间限制 + static messageRevokeTimeLimit: number = 2 * 60 * 1000; + //消息时间展示的间隔,默认5分钟 + static messageTimeGap: number = 5 * 60 * 1000; + //消息分页拉取,每页大小 + static chatMessagePageSize: number = 50; + // 消息已读未读功能 + static messageReadState: boolean = true; +} diff --git a/chatkit_ui/src/main/ets/common/ChatUtils.ets b/chatkit_ui/src/main/ets/common/ChatUtils.ets new file mode 100644 index 0000000..f4522be --- /dev/null +++ b/chatkit_ui/src/main/ets/common/ChatUtils.ets @@ -0,0 +1,365 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { filePreview } from '@kit.PreviewKit'; +import { BusinessError, systemDateTime } from '@kit.BasicServicesKit'; +import { NEChatMoreOperationData, NEChatMoreOperationType } from '../model/NEChatMoreOperationData'; +import { NIMMessageInfo } from '../model/NIMMessageInfo'; +import { V2NIMMessageLocationAttachment, V2NIMMessageSendingState, V2NIMMessageType } from '@nimsdk/base'; +import { sceneMap } from '@kit.MapKit'; +import { common } from '@kit.AbilityKit'; +import { MessageOperationItem, MessageOperationType } from '../model/MessageOperationItem'; +import { ChatConst } from '../constants/ChatConst'; +import { ChatKitClient } from '@nimkit/chatkit'; +import { ChatKitConfig } from '../ChatKitConfig'; +import { isSupportMessage } from '../common/MessageHelper'; + + +export function openFileWithApp(fileUri: string, fileName: string, fileExt: string, context: Context) { + let displayInfo: filePreview.DisplayInfo = { + x: 100, + y: 100, + }; + let fileInfo: filePreview.PreviewInfo = { + title: fileName, + uri: fileUri, + mimeType: getOpenFileType(fileExt) + }; + filePreview.openPreview(context, fileInfo, displayInfo).then(() => { + console.info('Succeeded in opening preview'); + }).catch((err: BusinessError) => { + console.error(`Failed to open preview, err.code = ${err.code}, err.message = ${err.message}`); + }); +} + +export function showLocationDetail(msg: NIMMessageInfo, context: common.UIAbilityContext) { + let attachment = msg.message.attachment as V2NIMMessageLocationAttachment + + let queryLocationOptions: sceneMap.LocationQueryOptions = { + location: { + latitude: attachment.latitude, + longitude: attachment.longitude + }, + name: attachment.address, + address: attachment.address, + }; + // 拉起地点详情页 + sceneMap.queryLocation(context, queryLocationOptions).then(() => { + console.info("netease QueryLocation", "Succeeded in querying location."); + }).catch((err: BusinessError) => { + console.error("netease QueryLocation", `Failed to query Location, code: ${err.code}, message: ${err.message}`); + }); +} + +export function setupMoreOperationData() { + let operationMoreDataList: Array = Array() + // 照片功能 + const imageOperationData = new NEChatMoreOperationData(); + imageOperationData.operationTitle = $r("app.string.photo_take"); + imageOperationData.type = NEChatMoreOperationType.Image; + imageOperationData.imageSource = "app.media.im_icon_images"; + operationMoreDataList.push(imageOperationData); + // 拍摄功能 + const videoOperationData = new NEChatMoreOperationData(); + videoOperationData.operationTitle = $r("app.string.chat_camera_take"); + videoOperationData.type = NEChatMoreOperationType.Video; + videoOperationData.imageSource = "app.media.im_icon_camera"; + operationMoreDataList.push(videoOperationData); + //快捷回复 + const replyOperationData = new NEChatMoreOperationData(); + replyOperationData.operationTitle = $r("app.string.reply"); + replyOperationData.type = NEChatMoreOperationType.Reply; + replyOperationData.imageSource = "app.media.quck_message"; + operationMoreDataList.push(replyOperationData); + //患教 + const teachOperationData = new NEChatMoreOperationData(); + teachOperationData.operationTitle = $r("app.string.teach"); + teachOperationData.type = NEChatMoreOperationType.Teach; + teachOperationData.imageSource = "app.media.patient_teach_call"; + operationMoreDataList.push(teachOperationData); + //出停诊 + const outOperationData = new NEChatMoreOperationData(); + outOperationData.operationTitle = $r("app.string.outpatient"); + outOperationData.type = NEChatMoreOperationType.Outpatient; + outOperationData.imageSource = "app.media.outpatient_true"; + operationMoreDataList.push(outOperationData); + //商城 + const shopOperationData = new NEChatMoreOperationData(); + shopOperationData.operationTitle = $r("app.string.shopping"); + shopOperationData.type = NEChatMoreOperationType.Shopping; + shopOperationData.imageSource = "app.media.ytx_chattingfooter_shopping"; + operationMoreDataList.push(shopOperationData); + //互联网医院 + const hospatilOperationData = new NEChatMoreOperationData(); + hospatilOperationData.operationTitle = $r("app.string.hospital"); + hospatilOperationData.type = NEChatMoreOperationType.Hospital; + hospatilOperationData.imageSource = "app.media.ytx_chatting_hospital"; + operationMoreDataList.push(hospatilOperationData); + // // 位置功能 + // const locationOperationData = new NEChatMoreOperationData(); + // locationOperationData.operationTitle = $r("app.string.chat_send_location"); + // locationOperationData.type = NEChatMoreOperationType.Location; + // locationOperationData.imageSource = "app.media.ic_chat_more_location"; + // operationMoreDataList.push(locationOperationData); + // + // // 文件功能 + // const fileOperationData = new NEChatMoreOperationData(); + // fileOperationData.operationTitle = $r("app.string.chat_send_file"); + // fileOperationData.type = NEChatMoreOperationType.File; + // fileOperationData.imageSource = "app.media.ic_public_chat_file"; + // operationMoreDataList.push(fileOperationData); + + return operationMoreDataList +} + +export function getOpenFileType(fileExt: string): string { + + if (fileExt.includes('txt')) { + return 'text/plain' + } else if (fileExt.includes('cpp')) { + return 'text/x-c++src' + } else if (fileExt.includes('c')) { + return 'text/x-csrc' + } else if (fileExt.includes('h')) { + return 'text/x-chdr' + } else if (fileExt.includes('java')) { + return 'text/x-java' + } else if (fileExt.includes('xhtml')) { + return 'application/xhtml+xml' + } else if (fileExt.includes('xml')) { + return 'text/xml' + } else if (fileExt.includes('html') || fileExt.includes('htm')) { + return 'text/html' + } else if (fileExt.includes('pdf')) { + return 'application/pdf' + } else if (fileExt.includes('jpg')) { + return 'image/jpeg' + } else if (fileExt.includes('png')) { + return 'image/png' + } else if (fileExt.includes('gif')) { + return 'image/gif' + } else if (fileExt.includes('webp')) { + return 'image/webp' + } else if (fileExt.includes('bmp')) { + return 'image/bmp' + } else if (fileExt.includes('svg')) { + return 'image/svg+xml' + } else if (fileExt.includes('m4a')) { + return 'audio/mp4a-latm' + } else if (fileExt.includes('mp3')) { + return 'audio/mpeg' + } else if (fileExt.includes('aac')) { + return 'audio/aac' + } else if (fileExt.includes('ogg')) { + return 'audio/ogg' + } else if (fileExt.includes('wav')) { + return 'audio/x-wav' + } else if (fileExt.includes('mp4')) { + return 'video/mp4' + } else if (fileExt.includes('mkv')) { + return 'video/x-matroska' + } else if (fileExt.includes('ts')) { + return 'video/mp2ts' + } + + return ' ' +} + +export function sliceContent(content: string | undefined, maxsize: number, isCenter: boolean): string { + if (!content) { + return '' + } + let result = content + if (content.length > maxsize) { + if (isCenter) { + let startIndex = Math.floor(maxsize * 0.75) + let lastIndex = content.length - 2 + let targetStr = content.charAt(startIndex) + let lastTargetStr = content.charAt(lastIndex) + // 判断是否为高位 + if (isCharacterEmoji(targetStr) && !isLastCharacterEmoji(targetStr)) { + startIndex++ + } + let nick = content.substring(0, startIndex + 1) + "..." + if (isLastCharacterEmoji(lastTargetStr)) { + lastIndex++ + } + result = nick + content.substring(lastIndex) + } else { + let lastIndex = maxsize - 2 + let lastTargetStr = content.charAt(lastIndex) + // 判断是否为高位 + if (isCharacterEmoji(lastTargetStr) && !isLastCharacterEmoji(lastTargetStr)) { + lastIndex++ + } + result = content.substring(0, lastIndex + 1) + "..." + } + } + return result +} + +// 最后是否为表情符号的最后一位 +export function isLastCharacterEmoji(str: string): boolean { + // 使用正则表达式匹配表情符号 + const emojiRegex = /[\uDC00-\uDFFF]+$/u + + return emojiRegex.test(str) +} + +// 最后是否为表情符号 +export function isCharacterEmoji(str: string): boolean { + // 使用正则表达式匹配表情符号 + const emojiRegex = /[\uD83C-\uDBFF\uDC00-\uDFFF]+$/u + + return emojiRegex.test(str) +} + +export function getOperateMenu(operateMsg: NIMMessageInfo | undefined): MessageOperationItem[] { + let operationMoreDataList: MessageOperationItem[] = [] + let localExtension = operateMsg?.message.localExtension; + if (localExtension == undefined || !localExtension.includes(ChatConst.revokeLocalKey)) { + + if (operateMsg !== undefined && + operateMsg.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_TEXT) { + let copyItem = new MessageOperationItem() + copyItem.operationType = MessageOperationType.Copy; + copyItem.operationText = $r('app.string.chat_operation_copy'); + copyItem.operationImage = $r('app.media.ic_chat_menu_copy'); + operationMoreDataList.push(copyItem) + } + + // if (operateMsg !== undefined && + // operateMsg.message.sendingState == V2NIMMessageSendingState.V2NIM_MESSAGE_SENDING_STATE_SUCCEEDED + // && isSupportMessage(operateMsg)) { + // if (operateMsg.message.messageType !== V2NIMMessageType.V2NIM_MESSAGE_TYPE_CALL) { + // + // let replyItem = new MessageOperationItem() + // replyItem.operationType = MessageOperationType.Reply; + // replyItem.operationText = $r('app.string.chat_operation_reply'); + // replyItem.operationImage = $r('app.media.ic_chat_menu_reply'); + // operationMoreDataList.push(replyItem); + // + // + // if (operateMsg.message.messageType !== V2NIMMessageType.V2NIM_MESSAGE_TYPE_AUDIO) { + // let translateItem = new MessageOperationItem() + // translateItem.operationType = MessageOperationType.Forward; + // translateItem.operationText = $r('app.string.chat_operation_forward'); + // translateItem.operationImage = $r('app.media.ic_chat_menu_translate'); + // operationMoreDataList.push(translateItem); + // } + // + // let pinItem = new MessageOperationItem() + // if (operateMsg?.isPinMsg) { + // pinItem.operationText = $r('app.string.chat_operation_unpin'); + // pinItem.operationType = MessageOperationType.Unpin; + // } else { + // pinItem.operationType = MessageOperationType.Pin; + // pinItem.operationText = $r('app.string.chat_operation_pin'); + // + // } + // pinItem.operationImage = $r('app.media.ic_chat_menu_pin'); + // operationMoreDataList.push(pinItem); + // } + // + // } + + let deleteItem = new MessageOperationItem() + deleteItem.operationType = MessageOperationType.Delete; + deleteItem.operationText = $r('app.string.chat_operation_delete'); + deleteItem.operationImage = $r('app.media.ic_chat_menu_delete'); + operationMoreDataList.push(deleteItem); + + if (operateMsg !== undefined && + operateMsg.message.sendingState == V2NIMMessageSendingState.V2NIM_MESSAGE_SENDING_STATE_SUCCEEDED + && isSupportMessage(operateMsg) && operateMsg.message.messageType !== V2NIMMessageType.V2NIM_MESSAGE_TYPE_CALL + && systemDateTime.getTime() - operateMsg.message.createTime < ChatKitConfig.messageRevokeTimeLimit + && operateMsg.message.senderId == ChatKitClient.getLoginUserId()) { + + let undoItem = new MessageOperationItem() + undoItem.operationImage = $r('app.media.ic_chat_menu_revoke'); + undoItem.operationText = $r('app.string.chat_operation_undo'); + undoItem.operationType = MessageOperationType.Undo; + operationMoreDataList.push(undoItem) + } + + // let selectItem = new MessageOperationItem() + // selectItem.operationType = MessageOperationType.Select; + // selectItem.operationText = $r('app.string.chat_operation_multi_select'); + // selectItem.operationImage = $r('app.media.ic_chat_menu_multi_select'); + // operationMoreDataList.push(selectItem); + + // if (operateMsg !== undefined && + // operateMsg.message.sendingState === V2NIMMessageSendingState.V2NIM_MESSAGE_SENDING_STATE_SUCCEEDED + // && isSupportMessage(operateMsg) + // && operateMsg.message.messageType !== V2NIMMessageType.V2NIM_MESSAGE_TYPE_CALL) { + // let collectionItem = new MessageOperationItem() + // collectionItem.operationType = MessageOperationType.Collection; + // collectionItem.operationText = $r('app.string.chat_operation_collection'); + // collectionItem.operationImage = $r('app.media.ic_chat_menu_collection'); + // operationMoreDataList.push(collectionItem); + // } + } + + return operationMoreDataList +} + +export function getOperateMenuSize(msgInfo: NIMMessageInfo | undefined) { + let count = 0 + if (msgInfo == undefined) { + return count + } + let localExtension = msgInfo?.message.localExtension; + if (localExtension == undefined || !localExtension.includes(ChatConst.revokeLocalKey)) { + // 多选和删除 + count = count + 2 + if (msgInfo !== undefined && + msgInfo.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_TEXT) { + // 复制 + count++ + } + + if (msgInfo.message.sendingState == V2NIMMessageSendingState.V2NIM_MESSAGE_SENDING_STATE_SUCCEEDED + && isSupportMessage(msgInfo)) { + + if (msgInfo.message.messageType !== V2NIMMessageType.V2NIM_MESSAGE_TYPE_CALL) { + // 回复、收藏 + count = count + 2 + if (msgInfo.message.messageType !== V2NIMMessageType.V2NIM_MESSAGE_TYPE_AUDIO) { + // 转发、标记 + count = count + 2 + } else { + // 标记 + count++ + } + + if (msgInfo.getMessageType() !== V2NIMMessageType.V2NIM_MESSAGE_TYPE_CALL && + systemDateTime.getTime() - msgInfo.message.createTime < ChatKitConfig.messageRevokeTimeLimit + && msgInfo.message.senderId == ChatKitClient.getLoginUserId()) { + // 撤回 + count++; + } + } + } + + + } + return count +} + +/** + * 计算消息长按弹窗宽度 + * @param msg 长按的消息 + * @returns 消息长按弹窗宽度 + */ +export function computeOperateViewWidth(msg: NIMMessageInfo | undefined): number { + return ChatConst.menuItemWidth * Math.min(getOperateMenuSize(msg), ChatConst.menuItemColumnNum) +} + +export function computeOperateViewHeight(msg: NIMMessageInfo | undefined): number { + return ChatConst.menuItemHeight * (Math.ceil(getOperateMenuSize(msg) / ChatConst.menuItemColumnNum)) +} + diff --git a/chatkit_ui/src/main/ets/common/DateUtils.ets b/chatkit_ui/src/main/ets/common/DateUtils.ets new file mode 100644 index 0000000..f366337 --- /dev/null +++ b/chatkit_ui/src/main/ets/common/DateUtils.ets @@ -0,0 +1,57 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { systemDateTime } from '@kit.BasicServicesKit'; + +export class DateUtils { + static formatTime(msgTime: number, lastTime?: number): string { + const msgDate = new Date(msgTime); + const nowDate = new Date(systemDateTime.getTime()); + + const yearOptions: Intl.DateTimeFormatOptions = { + hour12: false, + hour: '2-digit', + minute: '2-digit', + month: 'long', + day: 'numeric', + year: 'numeric' + }; + + const monthOptions: Intl.DateTimeFormatOptions = { + hour12: false, + hour: '2-digit', + minute: '2-digit', + month: 'long', + day: 'numeric', + }; + + const minuteOptions: Intl.DateTimeFormatOptions = { + hour12: false, + hour: '2-digit', + minute: '2-digit', + }; + + if (nowDate.getFullYear() !== msgDate.getFullYear()) { + return msgDate.toLocaleString('zh-CN', yearOptions); + } else if (nowDate.getMonth() !== msgDate.getMonth() || nowDate.getUTCDate() !== msgDate.getUTCDate()) { + return msgDate.toLocaleString('zh-CN', monthOptions); + } else { + return msgDate.toLocaleString('zh-CN', minuteOptions); + } + } + + static formatCallTime(time: number): string { + const hour: number = Math.floor(time / 3600); + const minute: number = Math.floor((time % 3600) / 60); + const second: number = time % 60; + if (hour === 0) { + return `${minute.toString().padStart(2, '0')}:${second.toString().padStart(2, '0')}`; + } + return `${hour.toString().padStart(2, '0')}:${minute.toString().padStart(2, '0')}:${second.toString() + .padStart(2, '0')}`; + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/common/DeviceUtils.ets b/chatkit_ui/src/main/ets/common/DeviceUtils.ets new file mode 100644 index 0000000..c5afee5 --- /dev/null +++ b/chatkit_ui/src/main/ets/common/DeviceUtils.ets @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +export class DeviceUtils { + static windowPXWidth: number = 0; + static windowPXHeight: number = 0; + static rootDirPath: string = ''; + private static msgLineWidth: number = 0; + + static getMessageLineWidth(): number { + DeviceUtils.msgLineWidth = DeviceUtils.windowPXWidth * 0.75 - vp2px(50); + return DeviceUtils.msgLineWidth; + } + + static getPinMessageLineWidth(): number { + DeviceUtils.msgLineWidth = DeviceUtils.windowPXWidth - vp2px(72); + return DeviceUtils.msgLineWidth; + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/common/FileUtils.ets b/chatkit_ui/src/main/ets/common/FileUtils.ets new file mode 100644 index 0000000..cb93e07 --- /dev/null +++ b/chatkit_ui/src/main/ets/common/FileUtils.ets @@ -0,0 +1,63 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { fileShare } from '@kit.CoreFileKit'; +import { BusinessError } from '@kit.BasicServicesKit'; + +export class FileUtils { + static formatFileSize(bytes: number): string { + if (bytes < 1024) { + return bytes + "B"; + } else if (bytes < 1024 * 1024) { + return (bytes / 1024).toFixed(2) + "KB"; + } else if (bytes < 1024 * 1024 * 1024) { + return (bytes / (1024 * 1024)).toFixed(2) + "MB"; + } else { + return (bytes / (1024 * 1024 * 1024)).toFixed(2) + "GB"; + } + } + + static getFileExtension(filename: string): string { + if (filename && filename.length > 0) { + const dot = filename.lastIndexOf('.'); + if (dot > -1 && dot < filename.length - 1) { + return filename.substring(dot + 1); + } + } + return ""; + } + + static openFile(path: string) { + try { + let uri = path; + let policyInfo: fileShare.PolicyInfo = { + uri: uri, + operationMode: fileShare.OperationMode.READ_MODE, + }; + let policies: Array = [policyInfo]; + fileShare.activatePermission(policies).then(() => { + console.info("activatePermission successfully"); + + }).catch(async (err: BusinessError>) => { + console.error("activatePermission failed with error message: " + err.message + ", error code: " + err.code); + if (err.code == 13900001 && err.data) { + for (let i = 0; i < err.data.length; i++) { + console.error("error code : " + JSON.stringify(err.data[i].code)); + console.error("error uri : " + JSON.stringify(err.data[i].uri)); + console.error("error reason : " + JSON.stringify(err.data[i].message)); + if (err.data[i].code == fileShare.PolicyErrorCode.PERMISSION_NOT_PERSISTED) { + await fileShare.persistPermission(policies); + } + } + } + }); + } catch (error) { + let err: BusinessError = error as BusinessError; + console.error('activatePermission failed with err: ' + JSON.stringify(err)); + } + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/common/MessageHelper.ets b/chatkit_ui/src/main/ets/common/MessageHelper.ets new file mode 100644 index 0000000..86646e6 --- /dev/null +++ b/chatkit_ui/src/main/ets/common/MessageHelper.ets @@ -0,0 +1,1236 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { NIMMessageInfo } from '../model/NIMMessageInfo'; +import Hash from '@ohos.file.hash'; +import fs from '@ohos.file.fs'; +import { + V2NIMMessage, + V2NIMMessageAudioAttachment, + V2NIMMessageCallAttachment, + V2NIMMessageFileAttachment, + V2NIMMessageImageAttachment, + V2NIMMessageNotificationType, + V2NIMMessageType, + V2NIMMessageVideoAttachment +} from '@nimsdk/base/src/main/ets/nim/sdk/V2NIMMessageService'; +import { + IM_ELITE_SDK_VERSION_HUMAN, + V2NIMConversationType, + V2NIMErrorCode, + V2NIMMessageNotificationAttachment, + V2NIMMessageSendingState, + V2NIMTeamChatBannedMode, + V2NIMTeamInviteMode, + V2NIMTeamUpdateInfoMode +} from '@nimsdk/base'; +import { + aitKey, + ChatKitClient, + ChatRepo, + CustomMessageUtils, + getAitModelFromJson, + keyExtensionAtAll, + keyExtensionLastOptType, + keyReplyMsgKey, + MergedMessageAttachment, + mergedMessageAvatarKey, + mergedMessageCustomType, + mergedMessageNickKey, + multiForwardFileName, + StorageRepo, + typeExtensionAllowAll +} from '@nimkit/chatkit'; +import { DeviceUtils } from './DeviceUtils'; +import { FileUtils } from './FileUtils'; +import { ChatConst } from '../constants/ChatConst'; +import { DateUtils } from './DateUtils'; +import { NEEmojiManager, NEEmojiParseResult } from '../manager/NEEmojiManager'; +import { ChatInfo } from '../model/ChatInfo'; +import { JSON } from '@kit.ArkTS'; +import { ImagesIndexModel, NECommonUtils } from '@nimkit/common'; +import { fileUri } from '@kit.CoreFileKit'; +import { BusinessError, systemDateTime } from '@kit.BasicServicesKit'; +import { isCharacterEmoji, isLastCharacterEmoji, openFileWithApp, sliceContent } from '../common/ChatUtils'; +import { ChatAitNode } from '../model/ChatAitNode'; +import { media } from '@kit.MediaKit'; + +// 获取群通知消息内容 +export function getNotificationMessageContent(messageInfo: NIMMessageInfo, chatUserInfo: ChatInfo): string { + + // 邀请通知 + if (messageInfo.message.attachment != null && messageInfo.message.attachment as V2NIMMessageNotificationAttachment) { + let attachment = messageInfo.message.attachment as V2NIMMessageNotificationAttachment + let fromAccount = messageInfo.message.senderId; + if (fromAccount === ChatKitClient.getLoginUserId()) { + fromAccount = getContext().resourceManager.getStringByNameSync('chat_current_user_name') + } else { + fromAccount = chatUserInfo?.getChatUserShowName(messageInfo.message.senderId) + } + let targetName = ''; + attachment.targetIds?.forEach(element => { + let name = '' + if (element == ChatKitClient.getLoginUserId()) { + name = getContext().resourceManager.getStringByNameSync('chat_current_user_name') + } else { + name = chatUserInfo?.getChatUserShowName(element) + } + if (targetName.length > 0) { + targetName = targetName + ',' + } + targetName = targetName + name + }); + + if (attachment.type == V2NIMMessageNotificationType.V2NIM_MESSAGE_NOTIFICATION_TYPE_TEAM_INVITE) { + let inviteContent = getContext().resourceManager.getStringByNameSync('chat_team_notify_invite_title') + let inviteJoin = getContext().resourceManager.getStringByNameSync('chat_team_notify_invite_join') + return fromAccount + inviteContent.toString() + targetName + inviteJoin; + } else if (attachment.type == V2NIMMessageNotificationType.V2NIM_MESSAGE_NOTIFICATION_TYPE_TEAM_KICK) { + let kickContent = getContext().resourceManager.getStringByNameSync('chat_team_notify_kick_title'); + return targetName + kickContent; + } else if (attachment.type == V2NIMMessageNotificationType.V2NIM_MESSAGE_NOTIFICATION_TYPE_TEAM_LEAVE) { + let leaveContent = getContext().resourceManager.getStringByNameSync('chat_team_notify_leave_title'); + return fromAccount + leaveContent.toString(); + } else if (attachment.type == V2NIMMessageNotificationType.V2NIM_MESSAGE_NOTIFICATION_TYPE_TEAM_DISMISS) { + let leaveContent = getContext().resourceManager.getStringByNameSync('chat_team_notify_dismiss_title'); + return fromAccount + leaveContent; + } else if (attachment.type == V2NIMMessageNotificationType.V2NIM_MESSAGE_NOTIFICATION_TYPE_TEAM_UPDATE_TINFO) { + let teamInfo = attachment.updatedTeamInfo + let fromUser = chatUserInfo?.getChatUserShowName(fromAccount) + let notifyContent = '' + if (teamInfo?.name != undefined) { + notifyContent = getContext().resourceManager.getStringByNameSync('chat_team_name_update') + teamInfo.name + } else if (teamInfo?.announcement != undefined) { + notifyContent = getContext().resourceManager.getStringByNameSync('chat_team_notice_update') + } else if (teamInfo?.intro != undefined) { + notifyContent = getContext().resourceManager.getStringByNameSync('chat_team_intro_update') + } else if (teamInfo?.avatar != undefined) { + notifyContent = getContext().resourceManager.getStringByNameSync('chat_team_avatar_update') + } else if (teamInfo?.inviteMode != undefined) { + notifyContent = getContext().resourceManager.getStringByNameSync('chat_team_invitation_permission_update') + if (teamInfo.inviteMode === V2NIMTeamInviteMode.V2NIM_TEAM_INVITE_MODE_ALL) { + notifyContent = notifyContent + getContext().resourceManager.getStringByNameSync('chat_team_permission_all') + } else { + notifyContent = + notifyContent + getContext().resourceManager.getStringByNameSync('chat_team_permission_manager') + } + } else if (teamInfo?.updateInfoMode != undefined) { + notifyContent = getContext().resourceManager.getStringByNameSync('chat_team_modify_resource_permission_update') + if (teamInfo.updateInfoMode === V2NIMTeamUpdateInfoMode.V2NIM_TEAM_UPDATE_INFO_MODE_ALL) { + notifyContent = notifyContent + getContext().resourceManager.getStringByNameSync('chat_team_permission_all') + } else { + notifyContent = + notifyContent + getContext().resourceManager.getStringByNameSync('chat_team_permission_manager') + } + } else if (teamInfo?.chatBannedMode !== undefined) { + fromUser = '' + if (teamInfo.chatBannedMode == V2NIMTeamChatBannedMode.V2NIM_TEAM_CHAT_BANNED_MODE_UNBAN) { + notifyContent = notifyContent + getContext().resourceManager.getStringByNameSync('chat_team_cancel_all_mute') + } else { + notifyContent = notifyContent + getContext().resourceManager.getStringByNameSync('chat_team_full_mute') + } + } else if (teamInfo?.serverExtension !== undefined) { + let extensionObj = JSON.parse(teamInfo.serverExtension) as object | null + if (extensionObj != null && extensionObj[keyExtensionLastOptType] == keyExtensionAtAll) { + if (extensionObj[keyExtensionAtAll] === typeExtensionAllowAll) { + notifyContent = getContext().resourceManager.getStringByNameSync('chat_team_at_permission_all_tips') + } else { + notifyContent = getContext().resourceManager.getStringByNameSync('chat_team_at_permission_manager_tips') + } + } + + } + return fromUser + notifyContent; + } else if (attachment.type == V2NIMMessageNotificationType.V2NIM_MESSAGE_NOTIFICATION_TYPE_TEAM_ADD_MANAGER) { + return targetName + getContext().resourceManager.getStringByNameSync('chat_team_appoint_manager'); + } else if (attachment.type == V2NIMMessageNotificationType.V2NIM_MESSAGE_NOTIFICATION_TYPE_TEAM_REMOVE_MANAGER) { + return targetName + getContext().resourceManager.getStringByNameSync('chat_team_removed_manager'); + } + } + return ''; +} + +export function getPinMessagesTips(messageInfo: NIMMessageInfo, chatUserInfo: ChatInfo | undefined): string { + let targetName = '' + if (messageInfo.pinInfo != null) { + if (messageInfo.pinInfo.operatorId == ChatKitClient.getLoginUserId()) { + targetName = getContext().resourceManager.getStringByNameSync('chat_current_user_name') + } else if (chatUserInfo !== undefined) { + targetName = chatUserInfo?.getChatUserShowName(messageInfo.pinInfo?.operatorId) + } + if (targetName.length > ChatConst.pinOperatorNameMaxLen) { + let targetIndex = ChatConst.pinOperatorNameMaxLen - 1 + if (!isLastCharacterEmoji(targetName.charAt(targetIndex))) { + targetIndex++ + } + targetName = targetName.substring(0, targetIndex + 1) + '...' + } + } + + return getContext().resourceManager.getStringByNameSync('chat_pin_message_tips', targetName); +} + +// 获取消息高度,单位为VP +export function measureMessageHeight(uicontext: UIContext, messageInfo: NIMMessageInfo | undefined): number { + let messageHeight = ChatConst.messageLineHeight; + if (messageInfo?.getMessageType() === V2NIMMessageType.V2NIM_MESSAGE_TYPE_TEXT) { + // 文本消息体最大宽度,单位为VP + let lineWidth = DeviceUtils.getMessageLineWidth(); + let textSize = uicontext.getMeasureUtils().measureTextSize({ + textContent: translateEmojiText(messageInfo?.message.text ?? ''), + fontSize: ChatConst.messageTextFontSize, + constraintWidth: px2vp(lineWidth), + lineHeight: ChatConst.textLineHeight + }); + messageHeight = px2vp(textSize.height as number) + if (messageHeight < ChatConst.textLineHeight) { + messageHeight = ChatConst.textLineHeight + } + messageHeight = messageHeight + (ChatConst.messageLineHeight - ChatConst.textLineHeight) + if (messageInfo.isReplyMsg) { + messageHeight = messageHeight + ChatConst.textLineHeight; + } + } else if (messageInfo?.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_LOCATION) { + messageHeight = ChatConst.mapMessageHeight; + } else if (messageInfo?.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_IMAGE || + messageInfo?.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_VIDEO) { + messageHeight = getImageHeight(messageInfo); + } else if (messageInfo?.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_FILE) { + messageHeight = ChatConst.fileMessageWidth; + } else if (messageInfo?.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_AUDIO) { + messageHeight = ChatConst.messageLineHeight; + } else if (messageInfo?.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_CALL) { + messageHeight = ChatConst.messageLineHeight; + } else if (messageInfo?.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_CUSTOM) { + if (messageInfo.isMergeMsg) { + // 文本消息体最大宽度,单位为VP + // 文本消息体最大宽度,单位为VP + let lineWidth = DeviceUtils.getMessageLineWidth(); + let textSize = uicontext.getMeasureUtils().measureTextSize({ + textContent: messageInfo.mergedContent, + fontSize: ChatConst.messageTextFontSize, + constraintWidth: px2vp(lineWidth), + lineHeight: ChatConst.textLineHeight, + }); + let viewHeight = px2vp(textSize.height as number) + ChatConst.mergedMessageMinHeight + if (viewHeight > ChatConst.mergedMessageHeight) { + viewHeight = ChatConst.mergedMessageHeight + } + messageHeight = viewHeight + } + } + // 群消息需要展示发送者昵称,所有高度增加 + // if (messageInfo?.message.conversationType !== V2NIMConversationType.V2NIM_CONVERSATION_TYPE_P2P + // && (messageInfo?.isMergeDetailMsg || messageInfo?.isReceiveMessage())) { + // messageHeight = messageHeight + ChatConst.textLineHeight; + // } + + // 需要展示发送消息时间的,高度增加 + // if (messageInfo?.getMessageTime() != null) { + // messageHeight = messageHeight + 10 + // } + + // if (messageInfo?.isPinMsg) { + // messageHeight = messageHeight + 30 + // } + return messageHeight; +} + +// 获取消息高度,单位为VP +export function measureTextHeight(uicontext: UIContext, text: string, maxLines: number): number { + let messageHeight = ChatConst.messageLineHeight; + // 文本消息体最大宽度,单位为VP + let lineWidth = DeviceUtils.getMessageLineWidth(); + let textSize = uicontext.getMeasureUtils().measureTextSize({ + textContent: text, + fontSize: ChatConst.messageTextFontSize, + constraintWidth: px2vp(lineWidth), + lineHeight: ChatConst.textLineHeight, + }); + let viewHeight = px2vp(textSize.height as number) + (ChatConst.messageLineHeight - ChatConst.textLineHeight) + messageHeight = viewHeight + return messageHeight; +} + +// 将文本消息中的Emoji表情进行转换,将表情文案裁剪,保证裁剪之后的文本计算的宽度符合实际表情展示 +// [惊讶] 转换成表情之后,实际宽度要少,所以按照测试,‘[惊讶][高兴]’ 转换为 ‘[惊高’ 计算高度满足表情图片高度 +export function translateEmojiText(text: string): string { + let inputString = text; + let resultText = '' + const pattern = /\[([^\]]+)\]/g; + let finish = false; + let lastMatchIndex = 0; + let emojiLength = 0; + while (finish == false) { + let match = pattern.exec(inputString) + if (match !== null) { + let tag = match[0]; + emojiLength++; + if (emojiLength >= 2) { + emojiLength = 0; + resultText = resultText + inputString.substring(lastMatchIndex, match.index) + tag.substring(1, 2); + } else { + resultText = resultText + inputString.substring(lastMatchIndex, match.index) + tag.substring(0, 2); + } + lastMatchIndex = match.index + match[0].length; + } else { + finish = true; + resultText = resultText + inputString.substring(lastMatchIndex, inputString.length); + } + } + return resultText; +} + +// 根据图片消息的尺寸,计算展示的宽度,单位为VP +export function getImageWidth(messageInfo: NIMMessageInfo): number { + if (messageInfo.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_IMAGE) { + let imageAttachment = messageInfo.message.attachment as V2NIMMessageImageAttachment; + if (imageAttachment && imageAttachment.width) { + return Math.min(imageAttachment.width, ChatConst.imageMessageWidth); + } + } else if (messageInfo.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_VIDEO) { + let videoAttachment = messageInfo.message.attachment as V2NIMMessageImageAttachment; + if (videoAttachment && videoAttachment.width) { + return Math.min(videoAttachment.width, ChatConst.imageMessageWidth); + } + } + return ChatConst.imageMessageWidth; +} + +// 根据图片消息的尺寸,计算展示的高度,单位为VP +export function getImageHeight(messageInfo: NIMMessageInfo): number { + if (messageInfo.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_IMAGE) { + let imageAttachment = messageInfo.message.attachment as V2NIMMessageImageAttachment; + if (imageAttachment && imageAttachment.height) { + if (imageAttachment.width >= ChatConst.imageMessageWidth) { + return ChatConst.imageMessageWidth * imageAttachment.height / imageAttachment.width + } + return imageAttachment.height; + } + } else if (messageInfo.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_VIDEO) { + let videoAttachment = messageInfo.message.attachment as V2NIMMessageImageAttachment; + if (videoAttachment && videoAttachment.height) { + if (videoAttachment.width >= ChatConst.imageMessageWidth) { + return ChatConst.imageMessageWidth * videoAttachment.height / videoAttachment.width + } + return videoAttachment.height; + } + } + return ChatConst.imageMessageHeight; +} + +// 获取语音消息的展示图标,根据语音消息的发送或者接受展示不同的图标 +export function getAudioMessageIcon(messageInfo: NIMMessageInfo): Resource { + if (messageInfo.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_AUDIO) { + if (messageInfo.isReceiveMessage()) { + return $r('app.media.ic_chat_audio_receive') + } + } + return $r('app.media.ic_chat_audio_send') +} + +// 获取语音消息的展示时间,根据语音消息的长度计算,单位为秒 +export function getAudioMessageText(messageInfo: NIMMessageInfo): string { + let result = 0; + if (messageInfo.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_AUDIO) { + let audioAttachment = messageInfo.message.attachment as V2NIMMessageAudioAttachment; + if (audioAttachment != null) { + let duration = audioAttachment.duration != null ? audioAttachment.duration : 0; + result = Math.floor(duration / 1000); + } + } + return result + " s" +} + +// 计算语音消息的宽度,根据语音消息的长度计算 +// 最长230 +export function getAudioMessageWidth(messageInfo: NIMMessageInfo): number { + let result = 58; + if (messageInfo.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_AUDIO) { + let audioAttachment = messageInfo.message.attachment as V2NIMMessageAudioAttachment; + if (audioAttachment != null) { + let duration = audioAttachment.duration != null ? audioAttachment.duration : 0; + result += duration / 100; + } + } + if (result > 230) { + result = 230; + } + return result; +} + +// 文件消息展示图标,根据文件消息类型展示不同的图标 +export function getFileMessageIcon(messageInfo: NIMMessageInfo): Resource { + if (messageInfo.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_FILE) { + let fileAttachment = messageInfo.message.attachment as V2NIMMessageFileAttachment; + let fileIcon = $r('app.media.ic_chat_file_unknown') + let fileType = fileAttachment.ext + if (fileType == undefined) { + fileType = FileUtils.getFileExtension(fileAttachment.name ?? '') + } + + if (fileType !== undefined) { + if (fileType.includes('doc')) { + fileIcon = $r('app.media.ic_chat_file_word') + } else if (fileType.includes('xls') || fileType.includes('xlsx') || fileType.includes('csv')) { + fileIcon = $r('app.media.ic_chat_file_excel') + } else if (fileType.includes('ppt')) { + fileIcon = $r('app.media.ic_chat_file_ppt') + } else if (fileType.includes('jpg') || fileType.includes('png') || fileType.includes('jpeg') + || fileType.includes('tiff') || fileType.includes('gif')) { + fileIcon = $r('app.media.ic_chat_file_image') + } else if (fileType.includes('zip') || fileType.includes('7z') || fileType.includes('tar') + || fileType.includes('rar')) { + fileIcon = $r('app.media.ic_chat_file_rar') + } else if (fileType.includes('pdf') || fileType.includes('rtf')) { + fileIcon = $r('app.media.ic_chat_file_ppt') + } else if (fileType.includes('mp4') || fileType.includes('avi') || fileType.includes('wmv') + || fileType.includes('mov') || fileType.includes('asf') || fileType.includes('flv') || fileType.includes('f4v') + || fileType.includes('rmvb') || fileType.includes('rm') || fileType.includes('3gp')) { + fileIcon = $r('app.media.ic_chat_file_video') + } else if (fileType.includes('mp3') || fileType.includes('aac') || fileType.includes('wav') + || fileType.includes('wma') || fileType.includes('flac')) { + fileIcon = $r('app.media.ic_chat_file_mp3') + } else if (fileType.includes('jpg') || fileType.includes('png') || fileType.includes('jpeg') + || fileType.includes('tiff') || fileType.includes('gif')) { + fileIcon = $r('app.media.ic_chat_file_image') + } else if (fileType.includes('txt')) { + fileIcon = $r('app.media.ic_chat_file_txt') + } else { + fileIcon = $r('app.media.ic_chat_file_other') + } + } + + return fileIcon + } + return $r('app.media.ic_chat_file_other') +} + +// 获取文件消息,发送文件名称 +export function getFileMessageName(messageInfo: NIMMessageInfo): string { + if (messageInfo.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_FILE) { + let fileAttachment = messageInfo.message.attachment as V2NIMMessageFileAttachment; + if (fileAttachment != null) { + return fileAttachment.name != null ? fileAttachment.name : '' + } + } + return ''; +} + +// 计算文件消息的大小 +export function getFileMessageSize(messageInfo: NIMMessageInfo): string { + if (messageInfo.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_FILE) { + let fileAttachment = messageInfo.message.attachment as V2NIMMessageFileAttachment; + if (fileAttachment != null) { + let size = fileAttachment.size != null ? fileAttachment.size : 0; + return FileUtils.formatFileSize(size) + } + } + return ''; +} + +// 计算文件消息的大小 +export function getCallMessageText(messageInfo: NIMMessageInfo): string | Resource { + if (messageInfo.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_CALL) { + let callAttachment = messageInfo.message.attachment as V2NIMMessageCallAttachment; + if (callAttachment != null) { + let status = callAttachment.status; + if (status == 1) { + let durations = callAttachment.durations + if (durations.length > 0) { + let time = durations[0].duration + let timeStr = DateUtils.formatCallTime(time) + return getContext().resourceManager.getStringByNameSync('chat_msg_call_completed') + timeStr + } + return $r('app.string.chat_msg_call_completed') + } else if (status == 2) { + return $r('app.string.chat_msg_call_canceled') + } else if (status == 3) { + return $r('app.string.chat_msg_call_refused') + } else if (status == 4) { + return $r('app.string.chat_msg_call_timeout') + } else if (status == 5) { + return $r('app.string.chat_msg_call_busy') + } + } + } + return $r('app.string.chat_msg_call_completed'); +} + +// 计算文件消息的大小 +export function getCallMessageIcon(messageInfo: NIMMessageInfo): Resource { + if (messageInfo.getMessageType() === V2NIMMessageType.V2NIM_MESSAGE_TYPE_CALL) { + let callAttachment = messageInfo.message.attachment as V2NIMMessageCallAttachment; + if (callAttachment.type === 2) { + return $r('app.media.ic_chat_call_video') + } else { + return $r('app.media.ic_chat_call_audio') + } + } + return $r('app.media.ic_chat_call_audio'); +} + +export function parseMessageText(text?: string): Array | undefined { + let result: Array | undefined = undefined + if (text !== undefined) { + result = NEEmojiManager.instance.parseEmojiText(text); + } + + return result; +} + +/** + * 获取@标识 + * @param startIndex + * @param text + * @param extension + * @returns + */ +export function getAitNodes(startIndex: number, text: string, extension?: string): ChatAitNode[] { + let segments: ChatAitNode[] = [] + let aitModel = getAitModelFromJson(extension) + if (aitModel) { + aitModel.aitBlocks.forEach((value, key) => { + if (value.segments) { + for (let segment of value.segments) { + if (segment.start >= startIndex + && segment.start < startIndex + text.length) { + let node: ChatAitNode = { + text: value.text, + segment: segment, + account: key + } + segments.push(...[node]) + } + } + } + }) + } + let aitNodes: ChatAitNode[] = [] + if (segments.length > 0) { + segments.sort((a, b) => (a.segment?.start ?? 0) - (b.segment?.start ?? 0)) + let lastStartIndex = startIndex + let endIndex = 0 + for (let index = 0; index < segments.length; index++) { + let segment = segments[index] + if (lastStartIndex < (segment.segment?.start ?? 0)) { + let textNode: ChatAitNode = { + text: text.substring(lastStartIndex - startIndex, (segment.segment?.start ?? 0) - startIndex) + } + aitNodes.push(...[textNode]) + } + aitNodes.push(...[segment]) + lastStartIndex = (segment.segment?.end ?? lastStartIndex) + 1 + endIndex = segment.segment?.end ?? 0 + } + //添加最后非@的Text + if (endIndex < startIndex + text.length) { + let textNode: ChatAitNode = { + text: text.substring(endIndex - startIndex) + } + aitNodes.push(...[textNode]) + } + } else { + let textNode: ChatAitNode = { + text: text + } + aitNodes.push(...[textNode]) + } + return aitNodes +} + +export function parseText(msgText: string): Array | undefined { + let text = msgText?.trimStart().trimEnd(); + let result: Array | undefined = undefined + if (text !== undefined) { + result = NEEmojiManager.instance.parseEmojiText(text); + } + + return result; +} + +export function getVideoMessageUrl(messageInfo: NIMMessageInfo): string { + let urlResult = '' + if (messageInfo.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_VIDEO) { + let videoAttachment = messageInfo.message.attachment as V2NIMMessageVideoAttachment; + if (videoAttachment != null) { + urlResult = makeVideoThumbUrl(videoAttachment.url); + } + } + console.debug('netease getVideoMessageUrl:', urlResult) + return urlResult +} + +// 获取本地视频消息首帧 +export async function getVideoMessageThumbnail(messageInfo: NIMMessageInfo) { + if (messageInfo.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_VIDEO) { + let videoAttachment = messageInfo.message.attachment as V2NIMMessageVideoAttachment; + if (videoAttachment != null) { + if (videoAttachment.path !== undefined) { + if (fs.accessSync(videoAttachment.path)) { + const uri = fileUri.getUriFromPath(videoAttachment.path) + // 打开文件 + let file = fs.openSync(uri) + + // 创建AVImageGenerator对象 + let avImageGenerator: media.AVImageGenerator = await media.createAVImageGenerator() + // 设置fdSrc + avImageGenerator.fdSrc = file + + // 初始化入参 + let timeUs = 0 + let queryOption = media.AVImageQueryOptions.AV_IMAGE_QUERY_NEXT_SYNC + + // 获取缩略图(promise模式) + let pixelMap = await avImageGenerator.fetchFrameByTime(timeUs, queryOption, { + width: videoAttachment.width, + height: videoAttachment.height + }) + + // 释放资源(promise模式) + avImageGenerator.release() + fs.closeSync(file); + + return pixelMap + } + } + } + } + return undefined +} + +export function makeVideoThumbUrl(url: string | undefined): string { + if (url === undefined) { + return ''; + } + const connectChar: string = url.includes("?") ? "&" : "?"; + return url + connectChar + 'vframe=1'; +} + +export function getMessageAttachmentPath(msg: NIMMessageInfo): string { + let filePath = ''; + if (msg.message.attachment as V2NIMMessageFileAttachment) { + let fileAttachment = msg.message.attachment as V2NIMMessageFileAttachment; + if (fileAttachment.path !== undefined) { + filePath = fileAttachment.path; + } else { + let subDir = '' + if (msg.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_IMAGE) { + subDir = '/image/' + } else if (msg.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_VIDEO) { + subDir = '/video/' + } else if (msg.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_FILE) { + subDir = '/file/' + } else if (msg.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_AUDIO) { + subDir = '/audio/' + } + let fileExt = fileAttachment.ext + if (fileExt !== undefined && !fileExt.startsWith('.')) { + fileExt = '.' + fileExt + } + let dirPath = DeviceUtils.rootDirPath + subDir + fs.mkdir(dirPath) + filePath = DeviceUtils.rootDirPath + subDir + msg.message.messageClientId + fileExt + } + } + console.debug('netease getMessageAttachmentPath:', filePath) + return filePath; +} + + +export function getFileMessageAttachmentName(msg: NIMMessageInfo): string { + let fileName = ''; + if (msg.message.attachment as V2NIMMessageFileAttachment) { + let fileAttachment = msg.message.attachment as V2NIMMessageFileAttachment; + fileName = fileAttachment.name ?? '' + } + console.debug('netease getFileMessageAttachmentName:', fileName) + return fileName; +} + +export function getFileMessageAttachmentExt(msg: NIMMessageInfo): string { + let fileExt = ''; + if (msg.message.attachment as V2NIMMessageFileAttachment) { + let fileAttachment = msg.message.attachment as V2NIMMessageFileAttachment; + fileExt = fileAttachment.ext ?? '' + if (fileExt !== undefined && !fileExt.startsWith('.')) { + fileExt = '.' + fileExt + } + } + console.debug('netease getFileMessageAttachmentExt:', fileExt) + return fileExt; +} + +// 移除消息扩展字段中的 回复、@ +/// - Parameter forwardMessage: 消息 +export function clearForwardAtMark(forwardMessage: V2NIMMessage) { + // 回复 thread 方案 + if (forwardMessage.threadReply) { + forwardMessage.threadReply = undefined + } + + if (forwardMessage.serverExtension) { + try { + let remoteExt = JSON.parse(forwardMessage.serverExtension) as object + if (remoteExt) { + remoteExt[aitKey] = undefined + remoteExt[keyReplyMsgKey] = undefined + } + forwardMessage.serverExtension = JSON.stringify(remoteExt) + } catch (err) { + console.error(err) + } + } +} + +/// 获取消息外显文案 +/// - Parameter message: 消息 +/// - Returns: 外显文案 +function contentOfMessage(message: V2NIMMessage): string { + const resourceManager = getContext().resourceManager + switch (message.messageType) { + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_TEXT: + return message.text ?? '' + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_IMAGE: + return resourceManager.getStringSync($r('app.string.imageMessageType').id) + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_AUDIO: + return resourceManager.getStringSync($r('app.string.audioMessageType').id) + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_VIDEO: + return resourceManager.getStringSync($r('app.string.videoMessageType').id) + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_LOCATION: + return resourceManager.getStringSync($r('app.string.locationMessageType').id) + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_FILE: + return resourceManager.getStringSync($r('app.string.fileMessageType').id) + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_NOTIFICATION: + return resourceManager.getStringSync($r('app.string.notificationMessageType').id) + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_TIPS: + return resourceManager.getStringSync($r('app.string.tipMessageType').id) + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_CALL: + if (message.attachment) { + const messageAttachment = message.attachment as V2NIMMessageCallAttachment + if (messageAttachment.type == 1) { + return resourceManager.getStringSync($r('app.string.msg_type_rtc_audio').id) + } else { + return resourceManager.getStringSync($r('app.string.msg_type_rtc_video').id) + } + } + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_CUSTOM: + if (message.attachment) { + let type = CustomMessageUtils.typeOfCustomMessage(message.attachment) + if (type === mergedMessageCustomType) { + return '[' + resourceManager.getStringSync($r('app.string.chatHistoryBrief').id) + ']' + } + } + return resourceManager.getStringSync($r('app.string.chat_msg_unknown_type').id) + } + return message.text ?? resourceManager.getStringSync($r('app.string.chatMessageNonsupportType').id) +} + +/** + * 序列化文件的头部,占一行 + * + * @param version 文件格式版本 + * @param message_count 消息数目 + * @return 头部字符串 + */ +function buildHeader(version: number, messageCount: number): string { + const obj: Record = {}; + obj['version'] = version + obj['terminal'] = 3 + obj['sdk_version'] = IM_ELITE_SDK_VERSION_HUMAN + obj['message_count'] = messageCount + return JSON.stringify(obj); +} + +/** + * 把需要进行上传的数据 按照约定的“数据字段字典”转换后的json格式字符串,每条记录一行,存储在文本文件中,并从第二行开始存储(因为第一行存的是head信息) + * + * @param msgList 要合并的消息列表 + * @return 合并后的字符串 + */ +function buildBody(msgList: V2NIMMessage[], chatInfo: ChatInfo): [string, Record[]] { + // 分隔符 + const enter = "\n"; + if (msgList.length === 0) { + return ["", []]; + } + // 序列化结果 + let stringBuilder = ""; + // 摘要信息 + const abstracts: Record[] = []; + + for (let index = 0; index < msgList.length; index++) { + const msg = msgList[index]; + // 移除扩展字段中的 回复、@ 信息 + let oldRemoteExt = msg.serverExtension + clearForwardAtMark(msg) + + // 保存消息昵称和头像 + let senderNick = chatInfo.getChatUserShowName(msg.senderId, false, false) // 昵称不取备注和群昵称 + if (msg.serverExtension) { + let remoteExt = JSON.parse(msg.serverExtension) as object + if (remoteExt) { + remoteExt[mergedMessageNickKey] = senderNick + remoteExt[mergedMessageAvatarKey] = + chatInfo.getChatUserAvatarUrl(msg.senderId) ?? chatInfo.getChatUserAvatarName(msg.senderId) + msg.serverExtension = JSON.stringify(remoteExt) + } + } else { + const remoteExt: Record = {}; + remoteExt[mergedMessageNickKey] = senderNick + remoteExt[mergedMessageAvatarKey] = + chatInfo.getChatUserAvatarUrl(msg.senderId) ?? chatInfo.getChatUserAvatarName(msg.senderId) + msg.serverExtension = JSON.stringify(remoteExt) + } + + // 摘要信息 + if (index < 3) { + let content = contentOfMessage(msg) + abstracts.push({ + "senderNick": senderNick, + "content": content, + "userAccId": msg.senderId + }) + } + + stringBuilder += enter + ChatKitClient.nim.messageConverter.messageSerialization(msg) + + // 恢复扩展字段中的 回复、@ 信息 + msg.serverExtension = oldRemoteExt + } + return [stringBuilder.substring(enter.length), abstracts]; +} + +/** + * 创建合并转发消息体内容 + * + * @param messages + * @return + */ +export async function createForwardMessageListFileDetail(messages: V2NIMMessage[], chatInfo: ChatInfo, + depth: number): Promise { + if (!messages || messages.length === 0) { + return undefined; + } + const conversationId = messages[0].conversationId; + if (!conversationId) { + return undefined; + } + const msgList: V2NIMMessage[] = []; + for (const msg of messages) { + if (conversationId !== msg.conversationId) { + continue; + } + if ( + msg.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_NOTIFICATION || + msg.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_AVCHAT || + msg.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_ROBOT + ) { + continue; + } + msgList.push(msg); + } + + let multiForwardMsg = buildHeader(0, msgList.length) + "\n" + buildBody(msgList, chatInfo)[0]; + let data = systemDateTime.getTime() + let fileName = multiForwardFileName + '_' + data + let cacheDir = getContext().cacheDir + let filePath = cacheDir + "/" + fileName + + try { + // 新建并打开文件 + let file = fs.openSync(filePath, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE); + // 写入一段内容至文件 + fs.writeSync(file.fd, multiForwardMsg); + // 关闭文件 + fs.closeSync(file); + + // 上传文件 + let fileTask = StorageRepo.createUploadFileTask({ + filePath: filePath, + sceneName: "nim_default_im" + }) + + if (fileTask) { + const data: Record = {} + const url = await StorageRepo.uploadFile(fileTask, () => { + }) + if (url) { + data["url"] = url + } + if (fs.accessSync(filePath)) { + const md5 = await Hash.hash(filePath, "md5") + data["md5"] = md5.toLowerCase() + } + data["sessionId"] = ChatKitClient.nim.conversationIdUtil.parseConversationTargetId(chatInfo.conversationId) + data["depth"] = depth + data["abstracts"] = buildBody(msgList, chatInfo)[1] + if (chatInfo.conversationName) { + data["sessionName"] = chatInfo.conversationName + } + + const jsonData: Record = {} + jsonData["data"] = data + jsonData["messageType"] = "custom" + jsonData["type"] = mergedMessageCustomType + + let text = `[${getContext().resourceManager.getStringByNameSync('chatHistoryBrief')}]` + let rawAttach = JSON.stringify(jsonData) + let mergeMessage = ChatRepo.createCustomMessage(text, rawAttach) + return mergeMessage + } + return undefined + } catch (err) { + console.error(err) + NECommonUtils.showToast($r('app.string.chat_multi_forward_failed')) + if (fs.accessSync(filePath)) { + fs.unlink(filePath) + } + return undefined + } +} + +/* + 获取消息的视频 url,用于视频查看器 + */ +export function getMessageVideoUrl(msg: NIMMessageInfo, chatInfo?: ChatInfo): string | undefined { + let path = getMessageAttachmentPath(msg) + if (msg.message.sendingState === V2NIMMessageSendingState.V2NIM_MESSAGE_SENDING_STATE_SENDING) { + if (path !== '' && fs.accessSync(path)) { + return path + } + } + + if (msg.downloadProgress < 0) { + if (path !== '' && fs.accessSync(path)) { + return path + } else { + downloadAttachment(msg, path, chatInfo) + return undefined + } + } + return undefined +} + +/* + * 获取消息的视频宽高比 + */ +export function getMessageVideoRatio(message?: NIMMessageInfo) { + const attachment = message?.message.attachment as V2NIMMessageVideoAttachment + if (attachment && attachment.height > 0) { + return attachment.width / attachment.height + } + return 0 +} + +export async function downloadAttachment(msg: NIMMessageInfo, path: string, chatInfo?: ChatInfo) { + if (msg.message.attachment as V2NIMMessageFileAttachment) { + let fileAttachment = msg.message.attachment as V2NIMMessageFileAttachment; + if (fileAttachment.url !== undefined) { + msg.setDownloadProgress(1) + try { + await StorageRepo.downloadFile(fileAttachment.url, path, (progress: number) => { + if (progress < 100) { + chatInfo?.downloadProgressMap.set(msg.message.messageClientId, progress) + msg.setDownloadProgress(progress) + } else { + if (progress == 100) { + msg.setDownloadProgress(100) + } + msg.setDownloadProgress(-1) + chatInfo?.downloadProgressMap.delete(msg.message.messageClientId) + } + } + ) + } catch (err) { + console.log('netease downloadAttachment', err) + msg.setDownloadProgress(-1) + } + } + } +} + + +/* + 获取消息列表中的图片url列表,并返回当前消息的图片的下标,用于图片查看器 + */ +export async function getMessageImageUrls(message?: NIMMessageInfo, chatInfo?: ChatInfo, + messages?: NIMMessageInfo[]): Promise { + let model = new ImagesIndexModel() + let messageList = messages + if (chatInfo) { + messageList = chatInfo.msgList.getMessageList() + } + messageList?.forEach(async (msg) => { + if (msg?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_IMAGE) { + const imageAttach = msg.message.attachment as V2NIMMessageImageAttachment + if (imageAttach) { + let path = getMessageAttachmentPath(msg) + + // 本地存在(已下载) + if (fs.accessSync(path)) { + const uri = fileUri.getUriFromPath(path) + model.imageUrls.push(uri) + + // 当前点击的图片 + if (msg?.message.messageClientId === message?.message.messageClientId) { + model.currentIndex = model.imageUrls.length - 1 + } + } else if (imageAttach.url) { + // 未下载 + // 先展示缩略图 + const imageThumbUrl = ChatKitClient.nim.storageUtil?.imageThumbUrl(imageAttach.url, 350) + if (imageThumbUrl) { + model.imageUrls.push(imageThumbUrl) + + // 当前点击的图片 + if (msg?.message.messageClientId === message?.message.messageClientId) { + model.currentIndex = model.imageUrls.length - 1 + } + + // 下载后替换为原图 + try { + let path = getMessageAttachmentPath(msg) + await downloadAttachment(msg, path, chatInfo) + + if (fs.accessSync(path)) { + const uri = fileUri.getUriFromPath(path) + const imageIndex = model.imageUrls.indexOf(imageThumbUrl) + model.imageUrls[imageIndex] = uri + } + } catch (err) { + console.log('netease getMessageImageUrls', err) + } + } + } + } + } + }) + return model +} + +export async function getMessageImageUrl(message?: NIMMessageInfo, chatInfo?: ChatInfo): Promise { + let model = new ImagesIndexModel() + let messageList = [message] + messageList?.forEach(async (msg) => { + if (msg?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_IMAGE) { + const imageAttach = msg.message.attachment as V2NIMMessageImageAttachment + if (imageAttach) { + let path = getMessageAttachmentPath(msg) + + // 本地存在(已下载) + if (fs.accessSync(path)) { + const uri = fileUri.getUriFromPath(path) + model.imageUrls.push(uri) + + } else if (imageAttach.url) { + // 未下载 + // 先展示缩略图 + const imageThumbUrl = ChatKitClient.nim.storageUtil?.imageThumbUrl(imageAttach.url, 350) + if (imageThumbUrl) { + model.imageUrls.push(imageThumbUrl) + // 下载后替换为原图 + try { + let path = getMessageAttachmentPath(msg) + await downloadAttachment(msg, path, chatInfo) + + if (fs.accessSync(path)) { + const uri = fileUri.getUriFromPath(path) + const imageIndex = model.imageUrls.indexOf(imageThumbUrl) + model.imageUrls[imageIndex] = uri + } + } catch (err) { + console.log('netease getMessageImageUrl', err) + } + } + } + } + } + }) + return model +} + +/** + * 文件消息下载或打开 + * @param msg + * @param context + */ +export function downLoadAndOpenFile(msg: NIMMessageInfo, context: Context, chatInfo?: ChatInfo) { + let path = getMessageAttachmentPath(msg) + if (path !== '') { + fs.stat(path).then((stat: fs.Stat) => { + let uri = fileUri.getUriFromPath(path); + let fileName = getFileMessageAttachmentName(msg); + let fileExt = getFileMessageAttachmentExt(msg); + openFileWithApp(uri, fileName, fileExt, context) + }).catch((err: BusinessError) => { + console.error("netease get file info failed with error message: " + err.message + ", error code: " + err.code); + downloadAttachment(msg, path, chatInfo) + NECommonUtils.showToast($r('app.string.chat_msg_download_tips')) + return + }); + } +} + +/** + * 拼装合并消息内容 + * @param mergedAttachment + */ +export function getMergedMessageContent(mergedAttachment: MergedMessageAttachment): string { + let content = '' + if (mergedAttachment.abstracts) { + for (let index = 0; index < mergedAttachment.abstracts.length; index++) { + let abstract = mergedAttachment.abstracts[index] + let sendNick = abstract.senderNick + if (sendNick.length > 8) { + let startIndex = 3 + let lastIndex = sendNick.length - 2 + let targetStr = sendNick.charAt(startIndex) + let lastTargetStr = sendNick.charAt(lastIndex) + // 判断是否为高位 + if (isCharacterEmoji(targetStr) && !isLastCharacterEmoji(targetStr)) { + startIndex++ + } + sendNick = sendNick.substring(0, startIndex + 1) + sendNick = sendNick + "..." + if (isLastCharacterEmoji(lastTargetStr)) { + lastIndex++ + } + sendNick = sendNick + abstract.senderNick.substring(lastIndex) + } + content += sendNick + ": " + content += abstract.content + if (index < mergedAttachment.abstracts.length - 1) { + content += "\n" + } + } + } + return content +} + +export function getReplyMessageTitle(msg: NIMMessageInfo, chatInfo: ChatInfo): string { + return getContext().resourceManager.getStringByNameSync('chat_input_reply_text') + + parseReplyMessageUserInfo(msg, chatInfo) +} + +export function parseReplyMessageContent(msg: NIMMessageInfo, chatInfo: ChatInfo): string { + let result: string = '' + let nickName = sliceContent(chatInfo?.getChatUserShowName(msg.message), 8, true) + result = nickName + ": " + if (msg.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_TEXT) { + result += sliceContent(msg.message.text, 30, false) + } else { + result += contentOfMessage(msg.message) + } + return result +} + +export function parseReplyMessageUserInfo(msg: NIMMessageInfo, chatInfo: ChatInfo): string { + let result: string = '' + let nickName = sliceContent(chatInfo?.getChatUserShowName(msg.message), 8, true) + result = nickName + ": " + return result +} + +export function getReplyMessageText(msg: NIMMessageInfo): string { + let result: string = '' + if (msg.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_TEXT) { + result = msg.message.text ?? '' + } else { + result = contentOfMessage(msg.message) + } + return result +} + +export function sliceMessageText(msgResult: Array | undefined, + limit: number): Array { + let size = 0 + let result: Array = [] + if (msgResult) { + + for (let index = 0; index < msgResult.length; index++) { + const element = msgResult[index]; + if (element.text) { + if (element.text.length + size < limit) { + result.push(element) + size = size + element.text.length + } else if (element.text.length + size < limit + 5) { + result.push(element) + break + } else { + element.text = sliceContent(element.text, limit - size, false) + result.push(element) + break + } + } else if (element.emoji) { + if (size + 1.5 < limit) { + result.push(element) + size = size + 1.5 + } else { + break + } + } + + } + } + return result +} + +/** + * 插入消息发送失败提示 + * @param msg 发送失败的消息 + * @param err 失败信息 + */ +export function sendMessageFailedTips(msg: V2NIMMessage, err: BusinessError, conversationId: string) { + let text: string | undefined + const resourceManager = getContext().resourceManager + switch (err.code) { + case V2NIMErrorCode.V2NIM_ERROR_CODE_ACCOUNT_IN_BLOCK_LIST: + text = resourceManager.getStringSync($r('app.string.msg_send_failed_in_block').id) + break + case V2NIMErrorCode.V2NIM_ERROR_CODE_FRIEND_NOT_EXIST: + text = resourceManager.getStringSync($r('app.string.msg_send_failed_no_friend').id) + + resourceManager.getStringSync($r('app.string.msg_send_failed_friend_application').id) + break + } + + if (text) { + const tipMessage = ChatRepo.createTipsMessage(text) + const createTime = Date.now() + ChatRepo.insertMessageToLocal(tipMessage, conversationId, ChatKitClient.getLoginUserId(), + createTime) + } +} + +export function isSupportMessage(msgInfo: NIMMessageInfo): boolean { + let result = false + if (msgInfo.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_TEXT) { + result = true + } else if (msgInfo.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_LOCATION) { + result = true + } else if (msgInfo.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_IMAGE) { + result = true + } else if (msgInfo.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_VIDEO) { + result = true + } else if (msgInfo.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_FILE) { + result = true + } else if (msgInfo.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_AUDIO) { + result = true + } else if (msgInfo.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_CALL) { + result = true + } else if (msgInfo.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_CUSTOM) { + if (msgInfo.isMergeMsg) { + result = true + } else { + result = false + } + } else { + result = false + } + return result +} + diff --git a/chatkit_ui/src/main/ets/constants/ChatConst.ets b/chatkit_ui/src/main/ets/constants/ChatConst.ets new file mode 100644 index 0000000..89e0d95 --- /dev/null +++ b/chatkit_ui/src/main/ets/constants/ChatConst.ets @@ -0,0 +1,55 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +/** + * Common constants for all features. + */ +export class ChatConst { + //消息分页拉取,每页大小 + static readonly chatMessagePageSize: number = 50; + // 图片消息图片的高度 + static readonly imageMessageHeight: number = 124; + // 图片消息图片的宽度 + static readonly imageMessageWidth: number = 222; + // 合并转发消息高度 + static readonly mergedMessageHeight: number = 130; + // 合并转发消息最小宽度 + static readonly mergedMessageMinHeight: number = 80; + // 消息单行高度 vp + static readonly messageLineHeight: number = 60; + // 文本消息单行高度 vp + static readonly textLineHeight: number = 20; + //文本消息字体大小 + static readonly messageTextFontSize: number = 14; + // 地图消息默认高度 vp + static readonly mapMessageHeight: number = 160; + // 文件消息默认宽度 vp + static readonly fileMessageWidth: number = 60; + // 语音消息默认宽度 vp + static readonly audioMessageWidth: number = 35; + // 消息输入区域高度 + static readonly messageInputAreaHeight: number = 250; + // 消息长按菜单每个item的宽度 + static readonly menuItemWidth: number = 60; + static readonly menuItemHeight: number = 50; + // 消息长按菜单列数 + static readonly menuItemColumnNum: number = 5; + // PIN 消息操作者名称最大长度 + static readonly pinOperatorNameMaxLen: number = 15; + // 消息撤回本地存储,是否为本端撤回消息 + static readonly revokeLocalKey: string = 'revoke_message_local'; + // 消息撤回本地存储,撤回时间 + static readonly revokeLocalTimeKey: string = 'revoke_message_local_time'; + // 消息撤回本地存储,撤回的消息clientId + static readonly revokeMsgClientIdKey: string = 'revoke_message_client_id'; + // 消息撤回本地存储,撤回的消息内容 + static readonly revokeMsgTextKey: string = 'revoke_message_local_content'; + // 消息撤回本地存储,撤回的消息是否为编辑状态 + static readonly revokeMsgEditKey: string = 'revoke_message_local_edit'; + // 消息删除限制 + static readonly messageDeleteLimit: number = 50; +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/manager/AudioManager.ets b/chatkit_ui/src/main/ets/manager/AudioManager.ets new file mode 100644 index 0000000..cae895c --- /dev/null +++ b/chatkit_ui/src/main/ets/manager/AudioManager.ets @@ -0,0 +1,150 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { audio } from '@kit.AudioKit'; +import { AsyncCallback, BusinessError } from '@kit.BasicServicesKit'; +import { fileIo } from '@kit.CoreFileKit'; + +const TAG = 'Audio manager'; + +class Options { + offset?: number; + length?: number; +} + +let bufferSize: number = 0; +let audioCapture: audio.AudioCapturer | undefined = undefined; +let audioStreamInfo: audio.AudioStreamInfo = { + samplingRate: audio.AudioSamplingRate.SAMPLE_RATE_48000, // 采样率 + channels: audio.AudioChannel.CHANNEL_2, // 通道 + sampleFormat: audio.AudioSampleFormat.SAMPLE_FORMAT_S16LE, // 采样格式 + encodingType: audio.AudioEncodingType.ENCODING_TYPE_RAW // 编码格式 +} +let audioCaptureInfo: audio.AudioCapturerInfo = { + source: audio.SourceType.SOURCE_TYPE_MIC, // 音源类型 + capturerFlags: 0 // 音频采集器标志 +} +let audioCaptureOptions: audio.AudioCapturerOptions = { + streamInfo: audioStreamInfo, + capturerInfo: audioCaptureInfo +} + +export class AudioManager { + public static instance: AudioManager = new AudioManager() + file?: fileIo.File + + private constructor() { + console.log('net ease AudioManager constructor') + this.setup(); + } + + // 初始化,创建实例,设置监听事件 + setup() { + // 创建Audio Capture实例 + audio.createAudioCapturer(audioCaptureOptions, (err, capture) => { + if (err) { + console.error(`net ease Invoke createAudioCapture failed, code is ${err.code}, message is ${err.message}`); + return; + } + console.info(`net ease ${TAG}: create AudioCapture success`); + audioCapture = capture; + if (audioCapture !== undefined) { + // (audioCapture as audio.AudioCapture).on('readData', readDataCallback); + } + }); + } + + // 开始一次音频采集 + public start(filePath: string) { + if (audioCapture !== undefined) { + + // let path = getContext().cacheDir; + // let filePath = path + '/StarWars10s-2C-48000-4SW.wav'; + + let file: fileIo.File = fileIo.openSync(filePath, fileIo.OpenMode.READ_WRITE | fileIo.OpenMode.CREATE); + this.file = file; + let readDataCallback = (buffer: ArrayBuffer) => { + let options: Options = { + offset: bufferSize, + length: buffer.byteLength + } + fileIo.writeSync(file.fd, buffer, options); + bufferSize += buffer.byteLength; + } + + audioCapture.on('readData', readDataCallback); + + let stateGroup = [audio.AudioState.STATE_PREPARED, audio.AudioState.STATE_PAUSED, audio.AudioState.STATE_STOPPED]; + if (stateGroup.indexOf((audioCapture as audio.AudioCapturer).state.valueOf()) === + -1) { // 当且仅当状态为STATE_PREPARED、STATE_PAUSED和STATE_STOPPED之一时才能启动采集 + console.error(`net ease ${TAG}: start failed`); + return; + } + + // 启动采集 + (audioCapture as audio.AudioCapturer).start((err: BusinessError) => { + if (err) { + console.error('net ease Capture start failed.'); + } else { + console.info('net ease Capture start success.'); + } + }); + } + } + + // 停止采集 + public stop(callback: AsyncCallback) { + if (audioCapture !== undefined && this.file != null) { + // 只有采集器状态为STATE_RUNNING或STATE_PAUSED的时候才可以停止 + if ((audioCapture as audio.AudioCapturer).state.valueOf() !== audio.AudioState.STATE_RUNNING && + (audioCapture as audio.AudioCapturer).state.valueOf() !== audio.AudioState.STATE_PAUSED) { + console.info('net ease Capture is not running or paused'); + return; + } + + //停止采集 + (audioCapture as audio.AudioCapturer).stop((err: BusinessError) => { + if (err) { + console.error('net ease Capture stop failed.'); + if (callback) { + callback(err, false); + } + } else { + fileIo.close(this.file); + console.info('net ease Capture stop success.'); + if (callback) { + callback(err, true); + } + } + }); + } + } + + // 销毁实例,释放资源 + release() { + if (audioCapture !== undefined) { + // 采集器状态不是STATE_RELEASED或STATE_NEW状态,才能release + if ((audioCapture as audio.AudioCapturer).state.valueOf() === audio.AudioState.STATE_RELEASED || + (audioCapture as audio.AudioCapturer).state.valueOf() === audio.AudioState.STATE_NEW) { + console.info('net ease Capture already released'); + return; + } + + //释放资源 + (audioCapture as audio.AudioCapturer).release((err: BusinessError) => { + if (err) { + console.error('net ease Capture release failed.'); + } else { + console.info('net ease Capture release success.'); + } + }); + } + } +} + + + + diff --git a/chatkit_ui/src/main/ets/manager/AudioPlayerManager.ets b/chatkit_ui/src/main/ets/manager/AudioPlayerManager.ets new file mode 100644 index 0000000..243fd24 --- /dev/null +++ b/chatkit_ui/src/main/ets/manager/AudioPlayerManager.ets @@ -0,0 +1,159 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { media } from '@kit.MediaKit'; +import { BusinessError } from '@kit.BasicServicesKit'; +import audio from '@ohos.multimedia.audio'; // 导入audio模块 +import { CommonConstants } from '@nimkit/common'; + +export class AudioPlayerManager { + static logTag: string = 'AudioPlayerManager' + static instance: AudioPlayerManager = new AudioPlayerManager() + onStart?: () => void + onFinish?: () => void + avPlayer?: media.AVPlayer + //正在播放的URL + playingUrl?: string + //audioRender + audioRenderer?: audio.AudioRenderer + + private constructor() { + } + + // 注册avplayer回调函数 + setAVPlayerCallback(avPlayer: media.AVPlayer) { + // error回调监听函数,当avPlayer在操作过程中出现错误时调用 reset接口触发重置流程 + avPlayer.on('error', (err: BusinessError) => { + console.error(`Invoke avPlayer failed, code is ${err.code}, message is ${err.message}`); + avPlayer.reset(); // 调用reset重置资源,触发idle状态 + }) + // 状态机变化回调函数 + avPlayer.on('stateChange', async (state: string, reason: media.StateChangeReason) => { + switch (state) { + case 'idle': // 成功调用reset接口后触发该状态机上报 + console.debug(`${AudioPlayerManager.logTag}`, 'AVPlayer state idle called.'); + break; + case 'initialized': // avplayer 设置播放源后触发该状态上报 + console.debug(`${AudioPlayerManager.logTag}`, 'AVPlayer state initialized called.'); + avPlayer.prepare(); + break; + case 'prepared': // prepare调用成功后上报该状态机 + console.debug(`${AudioPlayerManager.logTag}`, 'AVPlayer state prepared called.'); + // avPlayer.audioInterruptMode = audio.InterruptMode.INDEPENDENT_MODE + avPlayer.play(); // 调用播放接口开始播放 + break; + case 'playing': // play成功调用后触发该状态机上报 + console.debug(`${AudioPlayerManager.logTag}`, 'AVPlayer state playing called.'); + if (this.onStart) { + this.onStart() + } + break; + case 'completed': // 播放结束后触发该状态机上报 + console.debug(`${AudioPlayerManager.logTag}`, 'AVPlayer state completed called.'); + avPlayer.stop(); //调用播放结束接口 + break; + case 'stopped': // stop接口成功调用后触发该状态机上报 + console.debug(`${AudioPlayerManager.logTag}`, 'AVPlayer state stopped called.'); + avPlayer.reset(); // 调用reset接口初始化avplayer状态 + if (this.onFinish) { + this.onFinish() + } + break; + case 'released': + console.debug(`${AudioPlayerManager.logTag}`, 'AVPlayer state released called.'); + break; + default: + console.info('AVPlayer state unknown called.'); + break; + } + }) + + // 监听interrupt + avPlayer.on('audioInterrupt', (interruptEvent) => { + console.debug(`${AudioPlayerManager.logTag} audioInterrupt ${interruptEvent}`) + if (this.onFinish) { + this.onFinish() + } + }) + } + + //设置语言播放设备 + async setAudioPlayDevice() { + let audioStreamInfo: audio.AudioStreamInfo = { + samplingRate: audio.AudioSamplingRate.SAMPLE_RATE_44100, + channels: audio.AudioChannel.CHANNEL_1, + sampleFormat: audio.AudioSampleFormat.SAMPLE_FORMAT_S16LE, + encodingType: audio.AudioEncodingType.ENCODING_TYPE_RAW + }; + + let audioRendererInfo: audio.AudioRendererInfo = { + usage: audio.StreamUsage.STREAM_USAGE_VOICE_MESSAGE, + rendererFlags: 0 + }; + + let audioRendererOptions: audio.AudioRendererOptions = { + streamInfo: audioStreamInfo, + rendererInfo: audioRendererInfo + }; + + + this.audioRenderer = await audio.createAudioRenderer(audioRendererOptions) + let earpieceOpen = AppStorage.get(CommonConstants.KEY_SETTING_EARPIECE_MODE) + console.log(`${AudioPlayerManager.logTag} , earpieceOpen = ${earpieceOpen}`) + await this.audioRenderer.setDefaultOutputDevice((earpieceOpen ?? true) ? audio.DeviceType.EARPIECE : + audio.DeviceType.SPEAKER) + if (this.audioRenderer?.state !== audio.AudioState.STATE_RUNNING) { + await this.audioRenderer.start() + } + + } + + + // 通过url设置网络地址来实现播放直播码流 + async avPlayerLive(url: string, onStart?: () => void, + onFinish?: () => void) { + await this.setAudioPlayDevice() + // 创建avPlayer实例对象 + if (!this.avPlayer) { + this.avPlayer = await media.createAVPlayer(); + } + + if (this.onFinish) { + this.onFinish() + } + + //重复点击,如果已经播放则停止播放,并返回直接返回 + if (this.playingUrl === url + && (this.avPlayer?.state === 'prepared' || + this.avPlayer?.state === 'playing')) { + this.playingUrl = undefined + await this.avPlayer?.reset() + return + } + + await this.avPlayer?.reset() + this.playingUrl = url + + this.onStart = onStart + + this.onFinish = onFinish + + // 创建状态机变化回调函数 + this.setAVPlayerCallback(this.avPlayer); + this.avPlayer.url = url + } + + async stopPlayAll() { + console.log(`${AudioPlayerManager.logTag}, stopPlayAll`) + if (this.onFinish) { + this.onFinish() + } + await this.avPlayer?.reset() + await this.audioRenderer?.stop() + this.audioRenderer = undefined + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/manager/AudioRecordManager.ets b/chatkit_ui/src/main/ets/manager/AudioRecordManager.ets new file mode 100644 index 0000000..9396817 --- /dev/null +++ b/chatkit_ui/src/main/ets/manager/AudioRecordManager.ets @@ -0,0 +1,129 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { media } from '@kit.MediaKit'; +import { BusinessError } from '@kit.BasicServicesKit'; +import fs from '@ohos.file.fs'; + +let avProfile: media.AVRecorderProfile = { + audioBitrate: 100000, // 音频比特率 + audioChannels: 2, // 音频声道数 + audioCodec: media.CodecMimeType.AUDIO_AAC, // 音频编码格式,当前只支持aac + audioSampleRate: 48000, // 音频采样率 + fileFormat: media.ContainerFormatType.CFT_MPEG_4A, // 封装格式,当前只支持m4a +} + + +let avConfig: media.AVRecorderConfig = { + audioSourceType: media.AudioSourceType.AUDIO_SOURCE_TYPE_MIC, // 音频输入源,这里设置为麦克风 + profile: avProfile, + url: '', // 参考应用文件访问与管理开发示例新建并读写一个文件 +}; + +export class AudioRecordManager { + public static instance: AudioRecordManager = new AudioRecordManager() + private avRecorder?: media.AVRecorder; + + // 初始化 + public setup() { + if (this.avRecorder === undefined) { + media.createAVRecorder().then((recorder: media.AVRecorder) => { + console.log('net ease AudioRecordManager create success'); + this.avRecorder = recorder; + this.setupAudioRecordListen(); + }, (error: BusinessError) => { + console.error(`net ease createAVRecorder failed ${error}`); + }) + } + } + + // 注册audioRecorder回调函数 + setAudioRecorderCallback() { + if (this.avRecorder !== undefined) { + // 状态机变化回调函数 + this.avRecorder.on('stateChange', (state: media.AVRecorderState, reason: media.StateChangeReason) => { + console.log(`net ease AudioRecorder current state is ${state}`); + }) + // 错误上报回调函数 + this.avRecorder.on('error', (err: BusinessError) => { + console.error(`net ease AudioRecorder failed, code is ${err.code}, message is ${err.message}`); + }) + } + } + + async startRecordingProcess(path: string) { + if (this.avRecorder !== undefined) { + await this.avRecorder.release(); + this.avRecorder = undefined; + } + // await FileUtils.createFile(path) + + // 1.创建录制实例 + this.avRecorder = await media.createAVRecorder(); + this.setAudioRecorderCallback(); + // 2.获取录制文件fd赋予avConfig里的url;参考FilePicker文档 + let file = fs.openSync(path, fs.OpenMode.CREATE | fs.OpenMode.READ_WRITE); + let url = 'fd://' + file.fd + + console.log("net ease AudioRecorder url is: " + url); + avConfig.url = url; + + // 3.配置录制参数完成准备工作 + await this.avRecorder.prepare(avConfig); + // 4.开始录制 + await this.avRecorder.start(); + + console.log('net ease AudioRecorder start success') + } + + // 暂停录制对应的流程 + async pauseRecordingProcess() { + if (this.avRecorder != undefined && this.avRecorder.state === 'started') { // 仅在started状态下调用pause为合理状态切换 + await this.avRecorder.pause(); + } + } + + // 恢复录制对应的流程 + async resumeRecordingProcess() { + if (this.avRecorder != undefined && this.avRecorder.state === 'paused') { // 仅在paused状态下调用resume为合理状态切换 + await this.avRecorder.resume(); + } + } + + // 停止录制对应的流程 + async stopRecordingProcess() { + if (this.avRecorder != undefined) { + // 1. 停止录制 + if (this.avRecorder.state === 'started' + || this.avRecorder.state === 'paused') { // 仅在started或者paused状态下调用stop为合理状态切换 + await this.avRecorder.stop(); + } + // 2.重置 + await this.avRecorder.reset(); + // 3.释放录制实例 + await this.avRecorder.release(); + this.avRecorder = undefined; + // 4.关闭录制文件fd + } + } + + // 回调监听 + private setupAudioRecordListen() { + if (this.avRecorder !== undefined) { + // 状态上报回调函数 + this.avRecorder.on('stateChange', (state: media.AVRecorderState, reason: media.StateChangeReason) => { + console.log(`net ease current state is ${state}`); + // 用户可以在此补充状态发生切换后想要进行的动作 + }) + + // 错误上报回调函数 + this.avRecorder.on('error', (err: BusinessError) => { + console.error(`net ease avRecorder failed, code is ${err.code}, message is ${err.message}`); + }) + } + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/manager/NEAudioMetaManager.ets b/chatkit_ui/src/main/ets/manager/NEAudioMetaManager.ets new file mode 100644 index 0000000..6db53da --- /dev/null +++ b/chatkit_ui/src/main/ets/manager/NEAudioMetaManager.ets @@ -0,0 +1,108 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { media } from '@kit.MediaKit'; +import { fileIo } from '@kit.CoreFileKit'; +import { AsyncCallback } from '@kit.BasicServicesKit'; +import { image } from '@kit.ImageKit'; + +const TAG = 'net ease' + +export class NEAudioMetaManager { + public static instance: NEAudioMetaManager = new NEAudioMetaManager() + + // 获取音频专辑封面(Resource 文件夹下) + async fetchMetadataFromFdSrcByCallback(fileName: string, callback: AsyncCallback) { + if (canIUse("SystemCapability.Multimedia.Media.AVMetadataExtractor")) { + // 创建AVMetadataExtractor对象 + let avMetadataExtractor: media.AVMetadataExtractor = await media.createAVMetadataExtractor() + + // 设置fdSrc + avMetadataExtractor.fdSrc = await getContext(this).resourceManager.getRawFd(fileName); + + // 获取元数据(callback模式) + avMetadataExtractor.fetchMetadata((error, metadata) => { + if (error) { + console.error(TAG, `fetchMetadata callback failed, err = ${JSON.stringify(error)}`) + return + } + console.info(TAG, `fetchMetadata callback success, genre: ${metadata.genre}`) + }) + + //获取专辑封面(callback模式) + avMetadataExtractor.fetchAlbumCover((err, pixelMap) => { + if (err) { + console.error(TAG, `fetchAlbumCover callback failed, err = ${JSON.stringify(err)}`) + return + } + if (callback) { + callback(err, pixelMap); + } + + // 释放资源(callback模式) + avMetadataExtractor.release((error) => { + if (error) { + console.error(TAG, `release failed, err = ${JSON.stringify(error)}`) + return + } + console.info(TAG, `release success.`) + }) + }) + } + } + + // 使用fs文件系统打开沙箱地址获取媒体文件地址,设置dataSrc属性,获取音频元数据并打印 + async fetchMetadataFromDataSrc(filePath: string, callback: AsyncCallback) { + + let fd: number = fileIo.openSync(filePath, 0o0).fd; + let fileSize: number = fileIo.statSync(filePath).size; + // 设置dataSrc描述符,通过callback从文件中获取资源,写入buffer中 + let dataSrc: media.AVDataSrcDescriptor = { + fileSize: fileSize, + callback: (buffer, len, pos) => { + if (buffer == undefined || len == undefined || pos == undefined) { + console.error(TAG, `dataSrc callback param invalid`) + return -1 + } + + class Option { + offset: number | undefined = 0; + length: number | undefined = len; + position: number | undefined = pos; + } + + let options = new Option(); + let num = fileIo.readSync(fd, buffer, options) + console.info(TAG, 'readAt end, num: ' + num) + if (num > 0 && fileSize >= pos) { + return num; + } + return -1; + } + } + + if (canIUse("SystemCapability.Multimedia.Media.AVMetadataExtractor")) { + // 创建AVMetadataExtractor对象 + let avMetadataExtractor = await media.createAVMetadataExtractor() + // 设置dataSrc + avMetadataExtractor.dataSrc = dataSrc; + + // 获取元数据(promise模式) + let metadata = await avMetadataExtractor.fetchMetadata() + console.info(TAG, `get meta data, mimeType: ${metadata.mimeType}`) + + // 获取专辑封面(promise模式) + if (callback) { + callback(undefined, metadata); + } + + // 释放资源(promise模式) + avMetadataExtractor.release() + console.info(TAG, `release data source success.`) + } + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/manager/NEEmojiManager.ets b/chatkit_ui/src/main/ets/manager/NEEmojiManager.ets new file mode 100644 index 0000000..3b52253 --- /dev/null +++ b/chatkit_ui/src/main/ets/manager/NEEmojiManager.ets @@ -0,0 +1,157 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import common from '@ohos.app.ability.common'; +import util from '@ohos.util'; + +export enum NIMEmoticonType { + file = 1, + delete = 2, +} + +export enum EmojiParseType { + // 表情 + emoji = 1, + // 文本 + text = 2, +} + +export class NEEmojiParseResult { + // 解析类型 + type: EmojiParseType = EmojiParseType.text; + //开始坐标 + startIndex: number = 0 + // 解析文本内容 + text?: string; + // 解析表情 + emoji?: NIMInputEmoticon; +} + +export class NIMInputEmoticon { + type: NIMEmoticonType = NIMEmoticonType.file; + id?: string; + tag?: string; + file?: string; +} + +export class EmojiDataModel { + sourceData: Array = []; +} + +export class NEEmojiManager { + public static instance: NEEmojiManager = new NEEmojiManager() + dataModel: EmojiDataModel = new EmojiDataModel(); + public deleteEmoji: NIMInputEmoticon = new NIMInputEmoticon(); + // 根据文件名获取表情 + private fileEmojiCache: Map = new Map(); + // 根据tag获取表情 + private tagEmojiCache: Map = new Map(); + private pattern = /\[([^\]]+)\]/g; + + private constructor() { + } + + // 初始化表情管理器 + public setup(): void { + // 获取表情列表 + if (this.dataModel.sourceData.length === 0) { + this.getEmojiList(); + } + } + + // 获取表情列表 + async getEmojiList() { + this.deleteEmoji.file = 'emoji_del_normal.png'; + this.deleteEmoji.type = NIMEmoticonType.delete; + let context = getContext() as common.UIAbilityContext; + context.resourceManager.getRawFileContent('emoji_en.json', (err, rawFile) => { + if (err) { + console.error('net ease getRawFileContent failed, err is: ' + err) + return + } + try { + let textDecoder = util.TextDecoder.create('utf-8', { ignoreBOM: true }) + let retStr = textDecoder.decode(rawFile); + let dataModel: EmojiDataModel = JSON.parse(retStr); + this.dataModel = dataModel; + dataModel.sourceData.forEach((emoji) => { + emoji.type = NIMEmoticonType.file; + if (emoji.file !== undefined) { + this.fileEmojiCache.set(emoji.file, emoji); + } + if (emoji.tag !== undefined) { + this.tagEmojiCache.set(emoji.tag, emoji); + } + }) + } catch (e) { + console.error('net ease get emoji list failed, err is: ' + e) + } + }) + this.fileEmojiCache.set(this.deleteEmoji.file, this.deleteEmoji); + } + + getEmojiByName(fileName: string): NIMInputEmoticon | undefined { + return this.fileEmojiCache.get(fileName) + } + + getEmojiByTag(tag: string): NIMInputEmoticon | undefined { + return this.tagEmojiCache.get(tag) + } + + public hasEmoji(inputString: string): boolean { + let match = this.pattern.exec(inputString) + if (match !== null) { + return true + } + return false + } + + public parseEmojiText(inputString: string): Array { + // const inputString: string = "This is a [sample] input [string] with [multiple] occurrences of [brackets]."; + let array = new Array(); + let finish = false; + let lastMatchIndex = 0; + while (finish == false) { + let match = this.pattern.exec(inputString) + if (match !== null) { + let tag = match[0]; + let emoji = this.getEmojiByTag(tag); + if (emoji !== undefined) { + const nonMatchString = inputString.substring(lastMatchIndex, match.index); + if (nonMatchString.length > 0) { + let textResult = new NEEmojiParseResult(); + textResult.type = EmojiParseType.text; + textResult.text = nonMatchString; + textResult.startIndex = lastMatchIndex + array.push(textResult); + } + lastMatchIndex = match.index + match[0].length; + let emojiResult = new NEEmojiParseResult(); + emojiResult.type = EmojiParseType.emoji; + emojiResult.emoji = emoji; + emojiResult.startIndex = match.index + array.push(emojiResult); + } + } else { + if (lastMatchIndex < inputString.length) { + let textResult = new NEEmojiParseResult(); + textResult.type = EmojiParseType.text; + textResult.text = inputString.substring(lastMatchIndex, inputString.length); + textResult.startIndex = lastMatchIndex + array.push(textResult); + } + finish = true; + } + } + if (array.length == 0) { + let textResult = new NEEmojiParseResult(); + textResult.type = EmojiParseType.text; + textResult.text = inputString; + array.push(textResult); + } + return array; + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/manager/ait/AitManager.ets b/chatkit_ui/src/main/ets/manager/ait/AitManager.ets new file mode 100644 index 0000000..9f6be00 --- /dev/null +++ b/chatkit_ui/src/main/ets/manager/ait/AitManager.ets @@ -0,0 +1,121 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { accountAll, AitMessage } from '@nimkit/chatkit'; +import { AitModel } from '@nimkit/chatkit/src/main/ets/model/ait/AitModel'; + +export class AitManager { + aitModel: AitModel = new AitModel() + + getAitModel(): AitModel | undefined { + if (this.aitModel.aitBlocks.size > 0) { + return this.aitModel + } + return undefined + } + + // 通过@文本添加@用户 + addAitWithText(account: string, name: string, startIndex: number): void { + this.aitModel.addAitMember(account, name, startIndex); + } + + // 清理@用户,在发送之后调用 + cleanAit(): void { + this.aitModel.reset(); + } + + // 复制@用户信息,用户撤回消息使用 + forkAit(aitContactsModel: AitModel): void { + this.aitModel.fork(aitContactsModel); + } + + // @用户 是否在文本最后,如果在文本最后,需要在文本后面添加空格 + aitEnd(text: string): boolean { + const len = text.length; + for (const element of this.aitModel.aitBlocks.values()) { + for (const segment of element.segments) { + if (segment.start < len && segment.end >= len) { + return true; + } + } + } + return false; + } + + /** + * 根据插入后的Text 文案, segment 移位或者删除。 + * 返回被删除的AitMsg信息 + * @param deletedText 删除后的字符串 + * @param endIndex 删除的结束位置 + * @param length 删除的长度 + * @returns + */ + deleteAitWithText(deletedText: string, endIndex: number, length: number): AitMessage | null { + return this.aitModel.deleteAitUser(deletedText, endIndex, length); + } + + /** + * 删除文本 + * @param endIndex + * @param length + */ + deleteText(endIndex: number, length: number) { + this.aitModel.deleteText(endIndex, length) + } + + /** + * 新增Text输入,但输入的不是@ + * 会进行移位或者删除,如果在@XXX 中插入文本 @XXX 会被删除 + * @param endIndex 输入的结束位置 + * @param length 输入的长度 + */ + addTextWithoutAit(endIndex: number, length: number): void { + this.aitModel.insertText(endIndex, length); + } + + // 获取需要推送的用户列表 + getPushList(): string[] | undefined { + const pushList: string[] = []; + for (const key of this.aitModel.aitBlocks.keys()) { + if (key === accountAll) { + // pushList.length = 0; + // const teamMembers: string[] = TeamMemberCache.getInstance().getAllMemberAccounts() + // pushList.push(...teamMembers); + return pushList; + } else { + pushList.push(key); + } + } + if (pushList.length > 0) { + return pushList; + } + return undefined + } + + // 是否已经在@列表中 + haveBeAit(account: string): boolean { + return this.aitModel.aitBlocks.has(account) + } + + // 是否有@成员 + haveAitMember(): boolean { + return Object.keys(this.aitModel.aitBlocks).length > 0; + } + + // 光标移动到@后自动到后面 + resetAitCursor(baseIndex: number): number { + for (const aitMsg of this.aitModel.aitBlocks.values()) { + for (const segment of aitMsg.segments) { + if (segment.start < baseIndex && segment.end + 1 > baseIndex) { + return segment.end + 1; + } + } + } + return baseIndex; + } +} + + diff --git a/chatkit_ui/src/main/ets/model/ChatAitNode.ets b/chatkit_ui/src/main/ets/model/ChatAitNode.ets new file mode 100644 index 0000000..3b3155e --- /dev/null +++ b/chatkit_ui/src/main/ets/model/ChatAitNode.ets @@ -0,0 +1,17 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { AitSegment } from '@nimkit/chatkit/src/main/ets/model/ait/AitSegment'; + +export interface ChatAitNode { + //文本 + text: string, + + //片段 + segment?: AitSegment + //accId + account?: string +} diff --git a/chatkit_ui/src/main/ets/model/ChatInfo.ets b/chatkit_ui/src/main/ets/model/ChatInfo.ets new file mode 100644 index 0000000..22ffcc2 --- /dev/null +++ b/chatkit_ui/src/main/ets/model/ChatInfo.ets @@ -0,0 +1,429 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { ChatKitClient } from '@nimkit/chatkit'; +import { V2NIMMessagePin } from '@nimsdk/base'; +import { V2NIMMessage, V2NIMMessageSendingState } from '@nimsdk/base/src/main/ets/nim/sdk/V2NIMMessageService'; +import { NIMMessageInfo } from '../model/NIMMessageInfo'; + +@ObservedV2 +export class ChatInfo { + @Trace conversationName: string | undefined = undefined; + @Trace msgList: MessageDataSource = new MessageDataSource(); + @Trace downloadProgressMap: Map = new Map(); + @Trace isReceiveMsg: boolean = false; + @Trace scrollIndex: number = -1; // 是否需要滚动到指定位置 + msgMap: Map = new Map(); + @Trace msgPinMap: Map = new Map(); + conversationId: string = ''; + targetId: string = ''; + + constructor(conversationId: string) { + this.conversationId = conversationId; + this.targetId = ChatKitClient.nim.conversationIdUtil.parseConversationTargetId(conversationId) + } + + setConversationId(conversationId: string) { + this.conversationId = conversationId; + this.targetId = ChatKitClient.nim.conversationIdUtil.parseConversationTargetId(conversationId) + } + + setReceiveMsg(receiveMsg: boolean) { + this.isReceiveMsg = receiveMsg; + } + + setScrollIndex(index: number) { + this.scrollIndex = index + } + + getConversationName(): string { + return ''; + }; + + getChatUserAvatarUrl(param?: string | V2NIMMessage): string { + return ''; + }; + + getChatUserAvatarName(param?: string | V2NIMMessage): string { + if (param as V2NIMMessage) { + return (param as V2NIMMessage).senderId + } + return param as string; + }; + + getChatUserShowName(param?: string | V2NIMMessage, alias: boolean = true, teamNick: boolean = true): string { + if (param as V2NIMMessage) { + return (param as V2NIMMessage).senderId + } + return param as string; + }; + + getCurrentUserShowName(): string { + return this.targetId; + }; + + getCurrentUserAvatarUrl(message?: V2NIMMessage): string { + return ''; + }; + + getCurrentUserAvatarName(): string { + return this.targetId; + }; + + updateMessageStatus(message: V2NIMMessage): boolean { + if (message.sendingState === V2NIMMessageSendingState.V2NIM_MESSAGE_SENDING_STATE_SENDING) { + return false + } + let targetMessage = + this.msgList.getMessageList().find(msg => msg.message.messageClientId === message.messageClientId); + if (targetMessage !== undefined) { + targetMessage.updateMessageStatus(message) + // 如果是消息 message crateTime 》 lastMessage crateTime 需要调整消息位置 + this.moveMessage(message) + return true + } else { + this.insertMessage(message) + return false + } + } + + addPinMessage(pinMsg: V2NIMMessagePin[]) { + pinMsg.forEach(pin => { + this.msgPinMap.set(pin.messageRefer.messageClientId, pin) + this.msgMap.get(pin.messageRefer.messageClientId)?.setPinMessage(pin) + }) + } + + resetPinMessage(pinMsg: V2NIMMessagePin[]) { + this.msgPinMap.clear() + this.msgList.messageData.forEach(msg => { + msg.setPinMessage(undefined) + }) + pinMsg.forEach(pin => { + this.msgPinMap.set(pin.messageRefer.messageClientId, pin) + this.msgMap.get(pin.messageRefer.messageClientId)?.setPinMessage(pin) + }) + } + + removePinMessage(pinMsg: V2NIMMessagePin[]) { + pinMsg.forEach(pin => { + this.msgPinMap.delete(pin.messageRefer.messageClientId) + this.msgMap.get(pin.messageRefer.messageClientId)?.setPinMessage(undefined) + }) + } + + updateMessageReadReceipt(message: NIMMessageInfo) { + + } + + moveMessage(message: V2NIMMessage){ + // 如果是消息 message crateTime 》 lastMessage crateTime 需要调整消息位置 + const copiedArray = [...this.msgList.messageData]; + const oldIndex = this.msgList.searchPosition(message.messageClientId) + const updatedElement = copiedArray[oldIndex]; + // 按新的createTime降序排序 + const sortedArray = [...copiedArray].sort((a, b) => a.message.createTime - b.message.createTime); + const newIndex = sortedArray.findIndex(element => element === updatedElement) + // 位置发生变换,进行reload + if (oldIndex != newIndex) { + this.msgList.reloadData() + } + } + + insertMessage(message: V2NIMMessage): NIMMessageInfo { + let addIndex = this.msgList.searchInsertPosition(message.createTime) + if (addIndex > this.msgList.totalCount()) { + let result = this.pushMessage(message) + this.setReceiveMsg(true) + return result + } else { + let lastMessageTime = 0 + if (addIndex > 0) { + lastMessageTime = this.msgList.getMessageList()[addIndex - 1]?.message.createTime; + } + let msgInfo = new NIMMessageInfo(message) + msgInfo.setLastMessageTime(lastMessageTime) + this.updateMessageReadReceipt(msgInfo) + this.msgMap.set(message.messageClientId, msgInfo) + if (this.msgPinMap.has(message.messageClientId)) { + msgInfo.setPinMessage(this.msgPinMap.get(message.messageClientId)) + } + this.msgList.addData(addIndex, msgInfo) + + // 非尾部插入。 + // 该情况下可能展示时间,但是可能与新的一条消息时间间隔太小,会重复展示相同时间。因此该条展示后,需要检查与下条的展示时间是否相同。若相同,则隐藏下条消息时间。 + const changeIndex = addIndex + 1 + if (changeIndex < this.msgList.totalCount()) { + const nextMsg: NIMMessageInfo = this.msgList.getData(changeIndex) + nextMsg.setLastMessageTime(message.createTime) + this.msgList.replaceData(changeIndex, nextMsg) + } + + return msgInfo; + } + } + + pushMessage(message: V2NIMMessage): NIMMessageInfo { + let current = this.getMessage(message.messageClientId) + if (current !== undefined) { + return current; + } + let lastMessageTime = 0 + if (this.msgList.totalCount() > 0) { + lastMessageTime = this.msgList.getMessageList()[this.msgList.totalCount() - 1]?.message.createTime; + } + let msgInfo = new NIMMessageInfo(message) + msgInfo.setLastMessageTime(lastMessageTime) + this.updateMessageReadReceipt(msgInfo) + this.msgList.push(msgInfo); + this.msgMap.set(message.messageClientId, msgInfo) + if (this.msgPinMap.has(message.messageClientId)) { + msgInfo.setPinMessage(this.msgPinMap.get(message.messageClientId)) + } + return msgInfo; + } + + pushModifyMessage(message: V2NIMMessage): NIMMessageInfo | undefined { + const current: NIMMessageInfo | undefined = this.getMessage(message.messageClientId) + if (current !== undefined) { + const idx: number = this.msgList.searchPosition(message.messageClientId) // TODO 目前以遍历方式更新,modify 频繁情况下(如流式消息)存在性能优化项。临时方案 + if (idx >= 0) { + current.message = message + this.msgList.getData(idx).message = message + this.msgList.getData(idx).messageHeight = -1 // 重置高度,重新计算高度 + this.msgList.notifyDataChange(idx) + } + return current; + } else { + return undefined + } + } + + pushMessageInfo(msgInfo: NIMMessageInfo) { + let current = this.getMessage(msgInfo.message.messageClientId) + if (current !== undefined) { + return; + } + let lastMessageTime = this.msgList.getMessageList()[this.msgList.totalCount() - 1]?.message.createTime; + msgInfo.setLastMessageTime(lastMessageTime) + this.updateMessageReadReceipt(msgInfo) + this.msgMap.set(msgInfo.message.messageClientId, msgInfo) + if (this.msgPinMap.has(msgInfo.message.messageClientId)) { + msgInfo.setPinMessage(this.msgPinMap.get(msgInfo.message.messageClientId)) + } + this.msgList.push(msgInfo); + } + + unshiftMessage(messageList: V2NIMMessage[]): NIMMessageInfo[] { + let result: NIMMessageInfo[] = []; + for (let index = 0; index < messageList.length; index++) { + let msg = new NIMMessageInfo(messageList[index]); + if (index < messageList.length - 1) { + msg.setLastMessageTime(messageList[index+1].createTime); + } + this.msgMap.set(msg.message.messageClientId, msg) + if (this.msgPinMap.has(msg.message.messageClientId)) { + msg.setPinMessage(this.msgPinMap.get(msg.message.messageClientId)) + } + this.msgList.unshift(msg) + result.push(msg); + } + + return result; + } + + deleteMessage(msgClientId: string) { + this.msgList.delete(msgClientId) + this.msgMap.delete(msgClientId) + } + + revokeMessage(msgClientId: string) { + this.deleteMessage(msgClientId) + } + + getMessage(msgClientId: string): NIMMessageInfo | undefined { + return this.msgMap.get(msgClientId) + } + + searchPosition(msgClientId: string): number { + return this.msgList.searchPosition(msgClientId) + } + + public cleanMessage() { + this.msgList.clean() + this.msgMap.clear() + } +} + + +// Basic implementation of IDataSource to handle data listener +export class MessageDataSource implements IDataSource { + messageData: NIMMessageInfo[] = []; + private listeners: DataChangeListener[] = []; + + public totalCount(): number { + return this.messageData.length; + } + + public getData(index: number): NIMMessageInfo { + return this.messageData[index]; + } + + public addData(index: number, data: NIMMessageInfo): void { + this.messageData.splice(index, 0, data); + this.notifyDataAdd(index); + } + + public replaceData(index: number, data: NIMMessageInfo): void { + this.messageData.splice(index, 1, data); + this.notifyDataChange(index); + } + + public push(data: NIMMessageInfo): void { + this.messageData.push(data); + this.notifyDataAdd(this.messageData.length - 1); + } + + public unshift(data: NIMMessageInfo): void { + this.messageData.unshift(data); + this.notifyDataAdd(0); + } + + public unshiftList(data: NIMMessageInfo[]): void { + data.forEach(element => { + this.messageData.unshift(element); + }) + + this.notifyDatasetChange([{ + type: DataOperationType.ADD, + index: 0, + count: data.length + }]); + } + + public pushList(data: NIMMessageInfo[]): void { + data.forEach(element => { + this.messageData.push(element); + }); + this.notifyDataAdd(this.messageData.length - 1); + } + + public delete(msgClientId: string) { + this.messageData.forEach((msg, index, msgList) => { + if (msgClientId === msg.message.messageClientId) { + this.messageData.splice(index, 1) + this.notifyDataDelete(index) + return + } + }) + } + + public deleteWithIndex(index: number) { + if (index >= 0 && index < this.messageData.length) { + this.messageData.splice(index, 1) + this.notifyDataDelete(index) + } + } + + public reloadData(): void { + // 1. 元素重新排序 + this.messageData.sort((a, b) => a.message.createTime - b.message.createTime) + // 2. 通知视图更新 + this.notifyDataReload() + } + + public searchInsertPosition(creatTime: number): number { + for (let index = this.messageData.length - 1; index >= 0; index--) { + if (creatTime > this.messageData[index].getCreateTime()) { + return index + 1; + } + } + return 0; + } + + public searchPosition(clientId: string): number { + for (let index = this.messageData.length - 1; index >= 0; index--) { + if (clientId == this.messageData[index].getMessageClientId()) { + return index; + } + } + return -1; + } + + public clean() { + while (this.messageData.length > 0) { + this.messageData.pop() + } + } + + public getMessageList(): NIMMessageInfo[] { + return this.messageData; + } + + // 该方法为框架侧调用,为LazyForEach组件向其数据源处添加listener监听 + registerDataChangeListener(listener: DataChangeListener): void { + if (this.listeners.indexOf(listener) < 0) { + this.listeners.push(listener); + } + } + + // 该方法为框架侧调用,为对应的LazyForEach组件在数据源处去除listener监听 + unregisterDataChangeListener(listener: DataChangeListener): void { + const pos = this.listeners.indexOf(listener); + if (pos >= 0) { + this.listeners.splice(pos, 1); + } + } + + // 通知LazyForEach组件需要重载所有子组件 + notifyDataReload(): void { + this.listeners.forEach(listener => { + listener.onDataReloaded(); + }) + } + + // 通知LazyForEach组件需要在index对应索引处添加子组件 + notifyDataAdd(index: number): void { + this.listeners.forEach(listener => { + listener.onDataAdd(index); + }) + } + + // 通知LazyForEach组件在index对应索引处数据有变化,需要重建该子组件 + notifyDataChange(index: number): void { + this.listeners.forEach(listener => { + listener.onDataChange(index); + }) + } + + // 通知LazyForEach组件需要在index对应索引处删除该子组件 + notifyDataDelete(index: number): void { + this.listeners.forEach(listener => { + listener.onDataDelete(index); + }) + } + + // 通知LazyForEach组件将from索引和to索引处的子组件进行交换 + notifyDataMove(from: number, to: number): void { + this.listeners.forEach(listener => { + listener.onDataMove(from, to); + }) + } + + // 通知LazyForEach组件将from索引和to索引处的子组件进行交换 + notifyDatasetChange(operation: DataAddOperation[]): void { + this.listeners.forEach(listener => { + listener.onDatasetChange(operation); + }) + } + // 通知LazyForEach组件将from索引和to索引处的子组件进行交换 + notifyDatasetReload(operation: DataReloadOperation[]): void { + this.listeners.forEach(listener => { + listener.onDatasetChange(operation); + }) + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/model/ChatTeamInfo.ets b/chatkit_ui/src/main/ets/model/ChatTeamInfo.ets new file mode 100644 index 0000000..531bb13 --- /dev/null +++ b/chatkit_ui/src/main/ets/model/ChatTeamInfo.ets @@ -0,0 +1,227 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { ChatInfo } from './ChatInfo'; +import { V2NIMFriend, V2NIMMessage, V2NIMTeamMessageReadReceipt, V2NIMUser } from '@nimsdk/base'; +import { V2NIMTeam, V2NIMTeamMember } from '@nimsdk/base/src/main/ets/nim/sdk/V2NIMTeamService'; +import { NIMMessageInfo } from './NIMMessageInfo'; +import { NEFriendUserCache } from '@nimkit/chatkit/src/main/ets/NEFriendUserCache'; +import { ChatKitClient } from '@nimkit/chatkit'; + +@ObservedV2 +export class ChatTeamInfo extends ChatInfo { + @Trace team?: V2NIMTeam | undefined = undefined; + @Trace teamMemberMap = new Map(); + @Trace teamUserMap = new Map(); + // 用于动态监听好友信息变更时,更新会话页面好友数据 + @Trace teamUserFriendMap = new Map(); + teamMessageReadReceipt = new Map(); + + constructor(conversationId: string) { + super(conversationId) + this.conversationName = conversationId; + } + + setConversationId(conversationId: string): void { + super.setConversationId(conversationId) + this.conversationName = conversationId; + } + + setTeam(team: V2NIMTeam | undefined) { + this.team = team; + if (team !== undefined && team.name != '') { + this.conversationName = team.name; + } + } + + setTeamMember(member: V2NIMTeamMember) { + this.teamMemberMap.set(member.accountId, member); + } + + setTeamReadReadReceipt(readReceipts: V2NIMTeamMessageReadReceipt[]) { + readReceipts.forEach((readReceipt) => { + this.teamMessageReadReceipt.set(readReceipt.messageClientId, readReceipt); + let msg = this.getMessage(readReceipt.messageClientId); + msg?.setReadCount(readReceipt.readCount, readReceipt.unreadCount) + }) + } + + pushDataList(msgList: NIMMessageInfo[]) { + msgList.forEach(element => { + this.msgList.push(element); + }); + } + + addTeamUser(userList: V2NIMUser[]) { + userList.forEach((user) => { + this.teamUserMap.set(user.accountId, user); + }); + } + + addTeamFriend(friend: V2NIMFriend) { + this.teamUserFriendMap.set(friend.accountId, friend); + } + + addTeamMember(member: V2NIMTeamMember[]) { + member.forEach((member) => { + this.teamMemberMap.set(member.accountId, member); + }); + } + + getTeamMember(accountId: string): V2NIMTeamMember | undefined { + if (this.teamMemberMap.has(accountId)) { + return this.teamMemberMap.get(accountId); + } + return undefined; + } + + getChatUserAvatarUrl(param?: string | V2NIMMessage): string { + let accountId: string = "" + if ((param as V2NIMMessage).senderId) { + accountId = (param as V2NIMMessage).senderId + } else { + accountId = param as string; + } + + if (this.teamUserMap.has(accountId)) { + return this.teamUserMap.get(accountId)?.avatar ?? ''; + } + return ''; + } + + getCurrentUserAvatarUrl(): string { + let accountId = ChatKitClient.getLoginUserId() + if (this.teamUserMap.has(accountId)) { + return this.teamUserMap.get(accountId)?.avatar ?? ''; + } + return ''; + } + + getChatUserAvatarName(param?: string | V2NIMMessage): string { + let accountId: string = "" + if ((param as V2NIMMessage).senderId) { + accountId = (param as V2NIMMessage).senderId + } else { + accountId = param as string; + } + + let result = ''; + if (this.teamUserFriendMap.has(accountId)) { + let friend = this.teamUserFriendMap.get(accountId) + if (friend && friend.alias !== undefined) { + result = friend.alias ?? '' + } + } else if (NEFriendUserCache.getInstance().isFriend(accountId)) { + let friendInfo = NEFriendUserCache.getInstance().getFriendById(accountId) + if (friendInfo !== undefined) { + result = friendInfo.shortName(true) + } + } + + if (result == null || result.trim() === '') { + result = this.teamUserMap.get(accountId)?.name ?? ''; + } + + if (result == null || result.trim() === '') { + result = accountId; + } + if (result !== '' && result.length > 2) { + result = result.substring(result.length - 2, result.length) + } + return result + } + + getCurrentUserAvatarName(): string { + let accountId = ChatKitClient.getLoginUserId() + let result = ''; + if (result == null || result.trim() === '') { + result = this.teamUserMap.get(accountId)?.name ?? ''; + } + + if (result == null || result.trim() === '') { + result = accountId; + } + if (result !== '' && result.length > 2) { + result = result.substring(result.length - 2, result.length) + } + return result + } + + getChatUserShowName(param?: string | V2NIMMessage, alias: boolean = true, teamNick: boolean = true): string { + let accountId: string = "" + if ((param as V2NIMMessage).senderId) { + accountId = (param as V2NIMMessage).senderId + } else { + accountId = param as string; + } + + let result = ''; + if (this.teamUserFriendMap.has(accountId)) { + let friend = this.teamUserFriendMap.get(accountId) + if (friend && friend.alias !== undefined) { + result = friend.alias ?? '' + } + } + let friendInfo = NEFriendUserCache.getInstance().getFriendById(accountId) + //1,备注优先 + if (alias && (result == null || result.trim() === '') && friendInfo) { + result = friendInfo.getAlias() ?? '' + } + //2,群昵称次之 + if (teamNick && (result == null || result.trim() === '') && this.teamMemberMap.has(accountId)) { + result = this.teamMemberMap.get(accountId)?.teamNick ?? ''; + } + //3,好友名称再次之 + if ((result == null || result.trim() === '') && NEFriendUserCache.getInstance().isFriend(accountId)) { + if (friendInfo !== undefined) { + result = friendInfo.showName(alias) + } + } + if (result == null || result.trim() === '') { + result = this.teamUserMap.get(accountId)?.name ?? ''; + } + + if (result == null || result.trim() === '') { + result = accountId; + } + return result; + } + + getCurrentUserShowName(): string { + let result = ''; + let accountId = ChatKitClient.getLoginUserId() + if (this.teamMemberMap.has(accountId)) { + result = this.teamMemberMap.get(accountId)?.teamNick ?? ''; + } + if (result == null || result.trim() === '') { + result = this.teamUserMap.get(accountId)?.name ?? ''; + } + + if (result == null || result.trim() === '') { + result = accountId; + } + return result; + } + + /** + * 获取用成员用户信息 + * @param accountId + * @returns + */ + getMemberUserById(accountId: string) { + return this.teamUserMap.get(accountId) + } + + /** + * 获取当前成员的群管理员 + * @returns + */ + getCurrentUserTeamMember() { + let accId = ChatKitClient.getLoginUserId() + return this.teamMemberMap.get(accId) + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/model/ChatUserInfo.ets b/chatkit_ui/src/main/ets/model/ChatUserInfo.ets new file mode 100644 index 0000000..a92813d --- /dev/null +++ b/chatkit_ui/src/main/ets/model/ChatUserInfo.ets @@ -0,0 +1,205 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { ChatKitClient, NEFriendUserCache } from '@nimkit/chatkit'; +import { NIMMessageInfo } from '../model/NIMMessageInfo'; +import { V2NIMFriend, V2NIMMessage, V2NIMP2PMessageReadReceipt, V2NIMUser } from '@nimsdk/base'; +import { ChatInfo } from './ChatInfo'; + +@ObservedV2 +export class ChatUserInfo extends ChatInfo { + @Trace currentUser: V2NIMUser | undefined = undefined; + @Trace chatUser: V2NIMUser | undefined = undefined; + @Trace chatFriend: V2NIMFriend | undefined = undefined; + readReceipt: V2NIMP2PMessageReadReceipt | undefined = undefined; + readReceiptMsg: NIMMessageInfo | undefined = undefined; + + constructor() { + super(''); + } + + setConversationId(conversationId: string): void { + super.setConversationId(conversationId) + this.conversationName = this.getConversationName(); + } + + setCurrentUser(user: V2NIMUser | undefined) { + this.currentUser = user; + } + + setChatUser(user: V2NIMUser | undefined) { + this.chatUser = user; + this.conversationName = this.getConversationName(); + } + + setChatFriend(friend: V2NIMFriend | undefined) { + this.chatFriend = friend; + } + + updateConversationName() { + this.conversationName = this.getConversationName(); + } + + setMessageReadReceipt(readReceipt: V2NIMP2PMessageReadReceipt | undefined) { + if (readReceipt == undefined || readReceipt.timestamp == undefined) { + return + } + this.readReceipt = readReceipt + let readCount = -1 + for (let index = super.msgList.totalCount() - 1; index >= 0; index--) { + if (super.msgList.messageData[index].readCount > 0) { + break + } else if (readCount == -1) { + let hasRead = readReceipt?.timestamp >= super.msgList.messageData[index].getCreateTime() + readCount = hasRead ? 1 : 0; + } + super.msgList.messageData[index].readCount = readCount + } + } + + updateMessageReadReceipt(message: NIMMessageInfo) { + super.updateMessageReadReceipt(message) + if (this.readReceipt == undefined) { + return + } + let hasRead = this.readReceipt?.timestamp >= message.getCreateTime() + message.readCount = hasRead ? 1 : 0; + } + + getChatUserAvatarName(param?: string | V2NIMMessage): string { + let accountId: string = "" + if ((param as V2NIMMessage).senderId) { + accountId = (param as V2NIMMessage).senderId + } else { + accountId = param as string; + } + + if (accountId === ChatKitClient.getLoginUserId()) { + return this.getCurrentUserAvatarName() + } + + let name = ''; + if (this.chatFriend) { + name = this.chatFriend?.alias ?? ''; + } + if (name === '' && NEFriendUserCache.getInstance().getFriendById(accountId)) { + let friendInfo = NEFriendUserCache.getInstance().getFriendById(accountId) + if (friendInfo !== undefined) { + name = friendInfo.showName() + } + } + if (name === '' && this.chatUser !== undefined) { + name = this.chatUser?.name ?? ''; + } + if (name === '') { + name = accountId; + } + + if (name !== '' && name.length > 2) { + name = name.substring(name.length - 2, name.length) + } + return name; + } + + getCurrentUserAvatarName(): string { + let name = ''; + let accountId = ChatKitClient.getLoginUserId(); + if (this.currentUser !== undefined) { + name = this.currentUser?.name ?? ''; + } + if (name === '') { + name = accountId; + } + if (name !== '' && name.length > 2) { + name = name.substring(name.length - 2, name.length) + } + return name; + } + + getChatUserShowName(param?: string | V2NIMMessage, alias: boolean = true, teamNick: boolean = true): string { + let accountId: string = "" + if ((param as V2NIMMessage).senderId) { + accountId = (param as V2NIMMessage).senderId + } else { + accountId = param as string; + } + + if (accountId === ChatKitClient.getLoginUserId()) { + return this.getCurrentUserShowName() + } + + let name = ''; + let friendInfo = NEFriendUserCache.getInstance().getFriendById(accountId) + if (friendInfo !== undefined) { + name = friendInfo.showName(alias) + } + if (name === '' && this.chatUser !== undefined) { + name = this.chatUser?.name ?? ''; + } + + if (name === '') { + name = accountId; + } + return name; + } + + getCurrentUserShowName(): string { + let name = ''; + if (name === '' && this.currentUser !== undefined) { + name = this.currentUser?.name ?? ''; + } + if (name === '') { + name = ChatKitClient.getLoginUserId(); + } + return name; + } + + getChatUserAvatarUrl(param?: string | V2NIMMessage): string { + let accountId: string = "" + if ((param as V2NIMMessage).senderId) { + accountId = (param as V2NIMMessage).senderId + } else { + accountId = param as string; + } + + if (accountId === ChatKitClient.getLoginUserId()) { + return this.getCurrentUserAvatarUrl() + } + + let result: string = ''; + if (this.chatUser !== undefined) { + result = this.chatUser?.avatar ? this.chatUser?.avatar : ''; + } + if (result == null || result.trim() === '') { + result = ''; + } + + return result; + } + + getCurrentUserAvatarUrl(): string { + let result: string = ''; + if (this.currentUser !== undefined) { + result = this.currentUser?.avatar ? this.currentUser?.avatar : ''; + } + if (result == null || result.trim() === '') { + result = ''; + } + return result; + } + + getConversationName(): string { + let result: string = ''; + let friendInfo = NEFriendUserCache.getInstance().getFriendById(this.targetId) + if (friendInfo !== undefined) { + result = friendInfo.showName(true) + } else if (this.chatUser !== undefined) { + result = this.chatUser?.name !== null ? this.chatUser?.name : this.chatUser?.accountId; + } + return result; + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/model/MergeMessageInfo.ets b/chatkit_ui/src/main/ets/model/MergeMessageInfo.ets new file mode 100644 index 0000000..c844e64 --- /dev/null +++ b/chatkit_ui/src/main/ets/model/MergeMessageInfo.ets @@ -0,0 +1,30 @@ +import { mergedMessageAvatarKey, mergedMessageNickKey } from '@nimkit/chatkit'; +import { TailString } from '@nimkit/common'; +import { V2NIMMessage } from '@nimsdk/base'; +import { ChatInfo } from '../model/ChatInfo'; + +@ObservedV2 +export class MergeMessageInfo extends ChatInfo { + getServerExtensionValue(key: string, param?: string | V2NIMMessage | undefined): string { + if (param as V2NIMMessage) { + const message = param as V2NIMMessage + if (message.serverExtension) { + const remoteExt = JSON.parse(message.serverExtension) as object + return remoteExt[key] + } + } + return "" + } + + getChatUserAvatarUrl(param?: string | V2NIMMessage | undefined): string { + return this.getServerExtensionValue(mergedMessageAvatarKey, param) + } + + getChatUserAvatarName(param?: string | V2NIMMessage | undefined): string { + return TailString(this.getChatUserShowName(param)) + } + + getChatUserShowName(param?: string | V2NIMMessage): string { + return this.getServerExtensionValue(mergedMessageNickKey, param) + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/model/MessageOperationItem.ets b/chatkit_ui/src/main/ets/model/MessageOperationItem.ets new file mode 100644 index 0000000..f5dc3a8 --- /dev/null +++ b/chatkit_ui/src/main/ets/model/MessageOperationItem.ets @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +export enum MessageOperationType { + // 删除 + Delete = 1, + // 复制 + Copy = 2, + // 撤回 + Undo = 3, + // 转发 + Forward = 4, + //标记 + Pin = 5, + //取消标记 + Unpin = 6, + // 多选 + Select = 7, + // 收藏 + Collection = 8, + // 回复 + Reply = 9 +} + +export class MessageOperationItem { + // 操作提示图片 + operationImage?: ResourceStr; + // 操作提示文字 + operationText?: ResourceStr; + // 操作类型 + operationType: MessageOperationType = MessageOperationType.Delete; +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/model/NEChatMoreOperationData.ets b/chatkit_ui/src/main/ets/model/NEChatMoreOperationData.ets new file mode 100644 index 0000000..d27a47f --- /dev/null +++ b/chatkit_ui/src/main/ets/model/NEChatMoreOperationData.ets @@ -0,0 +1,24 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +export enum NEChatMoreOperationType { + Video = 1, + File = 2, + Location = 3, + Reply = 4, + Teach = 5, + Outpatient=6, + Shopping=7, + Hospital=8, + Image=8 +} + +export class NEChatMoreOperationData { + type?: NEChatMoreOperationType; + operationTitle?: ResourceStr; + imageSource?: string; +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/model/NERectData.ets b/chatkit_ui/src/main/ets/model/NERectData.ets new file mode 100644 index 0000000..1d93c6a --- /dev/null +++ b/chatkit_ui/src/main/ets/model/NERectData.ets @@ -0,0 +1,17 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +@ObservedV2 +export class NERectData { + @Trace + x: number = 0; + @Trace + y: number = 0; + @Trace + width: number = 0; + @Trace + height: number = 0; +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/model/NIMMessageInfo.ets b/chatkit_ui/src/main/ets/model/NIMMessageInfo.ets new file mode 100644 index 0000000..02903f8 --- /dev/null +++ b/chatkit_ui/src/main/ets/model/NIMMessageInfo.ets @@ -0,0 +1,358 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { + V2NIMMessage, + V2NIMMessageAttachment, + V2NIMMessageImageAttachment, + V2NIMMessageType +} from '@nimsdk/base/src/main/ets/nim/sdk/V2NIMMessageService' +import { + ChatKitClient, + ChatRepo, + CustomMessageUtils, + keyReplyMsgKey, + mergedMessageCustomType, + StorageRepo +} from '@nimkit/chatkit' +import { DateUtils } from '../common/DateUtils' +import { fileUri } from '@kit.CoreFileKit' +import { ChatConst } from '../constants/ChatConst' +import { JSONUtil } from '@nimkit/common' +import { BusinessError, systemDateTime } from '@kit.BasicServicesKit' +import { V2NIMGetMediaResourceInfoResult, V2NIMMessageAIStreamStatus, V2NIMMessagePin } from '@nimsdk/base' +import { ChatKitConfig } from '../ChatKitConfig' +import { getMergedMessageContent, measureMessageHeight } from '../common/MessageHelper' +import fs from '@ohos.file.fs' + +@ObservedV2 +export class NIMMessageInfo { + // IM SDK 层的消息对象 + @Trace message: V2NIMMessage + // 未读数量 + @Trace unReadCount: number = 100 + // 已读数量 + @Trace readCount: number = -1 + // 消息下载或上传进度 + @Trace downloadProgress: number = -1 + @Trace messageHeight = -1 + // 消息附件 + attachment: V2NIMMessageAttachment | null = null + // 自定义消息附件 + customAttachment: object | null = null + // 上一条消息的发送时间,用于判断该消息展示时候是否需要展示发送时间 + @Trace lastMessageTime: number = 0 + // 是否是接收消息,UI渲染时使用 + isReceiveMsg: boolean = false + // 是否为撤回消息 + isRevokeMsg: boolean = false + // 是否为撤回可编辑 + @Trace revokeEditMsg: boolean = false + // 是否为PIN消息 + @Trace isPinMsg: boolean = false + // 是否为合并转发消息 + isMergeMsg: boolean = false + mergedContent: string = '' + // 是否为合并转发详情页中的消息 + isMergeDetailMsg: boolean = false + // 是否为多选选中 + @Trace isSelectedMsg: boolean = false + //是否为回复消息 + @Trace + isReplyMsg: boolean = false + // 回复消息 + @Trace replyMsg: NIMMessageInfo | undefined = undefined + // 撤回消息扩展 + revokeInfo: RevokeInfo | undefined = undefined + //pin信息 + pinInfo: V2NIMMessagePin | undefined = undefined + + constructor(msg: V2NIMMessage) { + this.message = msg + this.parseMessage(msg) + } + + async parseMessage(message: V2NIMMessage) { + this.isReceiveMsg = this.message.senderId != ChatKitClient.getLoginUserId() + + // 解析撤回 + this.revokeInfo = RevokeInfo.parseRevokeInfo(message) + if (this.revokeInfo != null) { + this.isRevokeMsg = true + this.revokeEditMsg = this.revokeInfo?.isEditMsg && + (systemDateTime.getTime() - this.revokeInfo.revokeTime < ChatKitConfig.messageRevokeTimeLimit) + } + + // 解析合并转发 + if (message.messageType == V2NIMMessageType.V2NIM_MESSAGE_TYPE_CUSTOM && message.attachment != null) { + this.customAttachment = CustomMessageUtils.dataOfCustomMessage(message.attachment) + let customType = CustomMessageUtils.typeOfCustomMessage(message.attachment) + if (customType == mergedMessageCustomType) { + this.isMergeMsg = true + this.mergedContent = getMergedMessageContent(this.customAttachment) + } + } + + // 解析回复 + this.parseReply(message) + + this.messageHeight = -1 + } + + // @Computed + // get isReplyMsg():boolean{ + // return this.replyMsg !== undefined + // } + + setIsReply(reply: boolean) { + this.isReplyMsg = reply + } + + async parseReply(message: V2NIMMessage) { + // 优先使用 thread 方案 + if (message.threadReply) { + this.isReplyMsg = true + try { + const messages = await ChatRepo.getMessageListByRefers([message.threadReply]) + if (messages.length > 0) { + this.replyMsg = new NIMMessageInfo(messages[0]) + } + } catch (err) { + console.error(err) + } + return + } + + // 非 thread 方案 + const remoteExt = message.serverExtension + if (remoteExt) { + try { + const remoteDic = JSON.parse(remoteExt) as object + const msgReplyDic = remoteDic[keyReplyMsgKey] as object + if (msgReplyDic) { + try { + this.isReplyMsg = true + const messages = await ChatRepo.getMessageListByRefers([{ + messageClientId: msgReplyDic['idClient'] as string, + messageServerId: msgReplyDic['idServer'] as string, + senderId: msgReplyDic['from'] as string, + createTime: msgReplyDic['time'] as number, + conversationId: msgReplyDic['to'] as string, + receiverId: msgReplyDic['receiverId'] as string, + conversationType: msgReplyDic['scene'] as number, + }]).catch((err: BusinessError) => { + console.debug('netease parseReply', err.message) + }) + + if (messages && messages.length > 0) { + this.replyMsg = new NIMMessageInfo(messages[0]) + } + } catch (err) { + console.error(err) + } + } + } catch (err) { + console.error(err) + } + } + } + + checkRevokeEdit(): boolean { + if (this.revokeInfo != null) { + this.isRevokeMsg = true + this.revokeEditMsg = this.revokeInfo?.isEditMsg && + (systemDateTime.getTime() - this.revokeInfo.revokeTime < ChatKitConfig.messageRevokeTimeLimit) + return this.revokeEditMsg + } + return false + } + + configReadReceipt(): boolean { + return this.message.messageConfig?.readReceiptEnabled ?? false + } + + updateMessageStatus(message: V2NIMMessage) { + this.message = message + } + + setLastMessageTime(time: number) { + this.lastMessageTime = time + } + + setSelected(isSelected: boolean) { + this.isSelectedMsg = isSelected + } + + getMessageHeight(context: UIContext): number { + if (this.messageHeight < 0) { + this.messageHeight = measureMessageHeight(context, this) + } + return this.messageHeight + } + + setPinMessage(pinMsg: V2NIMMessagePin | undefined) { + if (pinMsg !== undefined) { + this.pinInfo = pinMsg + this.isPinMsg = true + } else { + this.isPinMsg = false + this.pinInfo = undefined + } + this.messageHeight = -1 + + } + + setDownloadProgress(progress: number) { + this.downloadProgress = progress + } + + setReadCount(readCount: number, unreadCount: number) { + this.unReadCount = unreadCount + this.readCount = readCount + } + + getCreateTime(): number { + return this.message.createTime + } + + // 获取消息时间 + getMessageFormatTime(): string { + return DateUtils.formatTime(this.message.createTime, this.lastMessageTime) + } + + // 获取消息时间(根据消息时间展示的间隔) + getMessageTime(): string { + let result = '' + if (this.message.createTime - this.lastMessageTime > ChatKitConfig.messageTimeGap) { + result = DateUtils.formatTime(this.message.createTime, this.lastMessageTime) + } + return result + } + + getConversationId() { + return this.message.conversationId + } + + getConversationType() { + return ChatKitClient.nim.conversationIdUtil.parseConversationType(this.getConversationId()) + } + + getMessageClientId(): string { + return this.message.messageClientId + } + + getAvatarName(): string { + let result = '' + if (this.message != null && this.message != null) { + result = this.message.senderId.substring(this.message.senderId.length - 2, this.message.senderId.length) + } + if (this.message != null && this.message.senderId != null) { + result = this.message.senderId.substring(this.message.senderId.length - 2, this.message.senderId.length) + } + return result + } + + getMessageType(): V2NIMMessageType { + return this.message.messageType + } + + isAiStreamMessage(): boolean { + return this.message.aiConfig?.aiStream ?? false + } + + isFinishedAiStream(): boolean { + return (this.message.aiConfig?.aiStreamStatus ?? + V2NIMMessageAIStreamStatus.V2NIM_MESSAGE_AI_STREAM_STATUS_GENERATED) > + V2NIMMessageAIStreamStatus.V2NIM_MESSAGE_AI_STREAM_STATUS_PLACEHOLDER + } + + isReceiveMessage(): boolean { + return this.isReceiveMsg + } + + isPinMessage(): boolean { + return this.isPinMsg + } + + isMergeMessage(): boolean { + return this.isMergeMsg + } + + isMergeDetailMessage(): boolean { + return this.isMergeDetailMsg + } + + getImageUrl(): string { + if (this.message.messageType == V2NIMMessageType.V2NIM_MESSAGE_TYPE_IMAGE) { + let iamgeAttachment = this.message.attachment as V2NIMMessageImageAttachment + if (iamgeAttachment) { + if (iamgeAttachment.path) { + if (fs.accessSync(iamgeAttachment.path)) { + const uri = fileUri.getUriFromPath(iamgeAttachment.path) + return uri + } + } + return iamgeAttachment.url ?? '' + } + } + return '' + } + + async getImageThumbUrl(): Promise { + if (this.message.messageType == V2NIMMessageType.V2NIM_MESSAGE_TYPE_IMAGE) { + let iamgeAttachment = this.message.attachment as V2NIMMessageImageAttachment + if (iamgeAttachment) { + if (iamgeAttachment.path) { + if (fs.accessSync(iamgeAttachment.path)) { + const uri = fileUri.getUriFromPath(iamgeAttachment.path) + return uri + } + } + const thumbResult: V2NIMGetMediaResourceInfoResult | undefined = + await StorageRepo.getImageThumbUrl(iamgeAttachment, { + width: ChatConst.imageMessageWidth + }) + if (!thumbResult) { + return iamgeAttachment.url ?? '' + } else { + return thumbResult.url ?? '' + } + } + } + return '' + } +} + +export class RevokeInfo { + isLocalRevoke: boolean = false + revokeTime: number = 0 + isEditMsg: boolean = false + revokeMsgText: string = '' + revokeMsgClientId: string = '' + + static parseRevokeInfo(msg: V2NIMMessage): RevokeInfo | undefined { + if (msg == undefined || msg.messageType !== V2NIMMessageType.V2NIM_MESSAGE_TYPE_TEXT || + msg.localExtension == undefined + || !msg.localExtension?.includes(ChatConst.revokeLocalKey)) { + return undefined + } + + let localExtension = msg.localExtension + if (JSONUtil.isJSONString(localExtension)) { + let localObject = JSON.parse(localExtension) as object + let revokeInfo = new RevokeInfo() + revokeInfo.revokeMsgText = localObject?.[ChatConst.revokeMsgTextKey] + revokeInfo.revokeMsgClientId = localObject?.[ChatConst.revokeMsgClientIdKey] + revokeInfo.revokeTime = localObject?.[ChatConst.revokeLocalTimeKey] + revokeInfo.isLocalRevoke = localObject?.[ChatConst.revokeLocalKey] + revokeInfo.isEditMsg = localObject?.[ChatConst.revokeMsgEditKey] + return revokeInfo + } + + return undefined + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/model/TeamDataResult.ets b/chatkit_ui/src/main/ets/model/TeamDataResult.ets new file mode 100644 index 0000000..59dc89c --- /dev/null +++ b/chatkit_ui/src/main/ets/model/TeamDataResult.ets @@ -0,0 +1,14 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { V2NIMTeam, V2NIMTeamMember, V2NIMUser } from '@nimsdk/base'; + +export class TeamDataResult { + team?: V2NIMTeam | undefined = undefined; + teamMemberList: V2NIMTeamMember[] = []; + teamUserList: V2NIMUser[] = []; +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/pages/ChatP2PPage.ets b/chatkit_ui/src/main/ets/pages/ChatP2PPage.ets new file mode 100644 index 0000000..eed5d4a --- /dev/null +++ b/chatkit_ui/src/main/ets/pages/ChatP2PPage.ets @@ -0,0 +1,1429 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { ChatUserInfo } from '../model/ChatUserInfo'; +import { NIMMessageInfo } from '../model/NIMMessageInfo'; +import { MessageComponent } from '../view/MessageComponent'; +import { ChatP2PViewModel } from '../viewmodel/ChatP2PViewModel'; +import { NEChatEmojiView } from '../view/NEChatEmojiView'; +import { NEEmojiManager, NEEmojiParseResult, NIMEmoticonType } from '../manager/NEEmojiManager'; +import { NEChatMoreOperation } from '../view/ChatMoreOperationLayout'; +import { NEChatMoreOperationData, NEChatMoreOperationType } from '../model/NEChatMoreOperationData'; +import { NEAudioRecordView } from '../view/NEAudioRecordView'; +import { InputStyleType, NEChatInputView } from '../view/ChatInputView'; +import { + DoubleAlertDialog, + ImagesIndexModel, + MediaUtils, + NavigationBackBuilder, + NECommonUtils, + NetworkBrokenBuilder, + PermissionsUtils, + VideoViewerDialog +} from '@nimkit/common'; +import { NECameraSelectView } from '../view/NECameraSelectView'; +import { common } from '@kit.AbilityKit'; +import { cameraPicker } from '@kit.CameraKit'; +import { LengthMetrics, window } from '@kit.ArkUI'; +import { NERectData } from '../model/NERectData'; +import { MessageOperationView } from '../view/MessageOperationView'; +import { MessageOperationItem, MessageOperationType } from '../model/MessageOperationItem'; +import { BusinessError, pasteboard } from '@kit.BasicServicesKit'; +import { DeviceUtils } from '../common/DeviceUtils'; +import { ImageViewDialog } from '@nimkit/common/src/main/ets/ImageViewDialog/ImageViewDialog'; +import { + V2NIMMessage, + V2NIMMessageAudioAttachment, + V2NIMMessageLocationAttachment, + V2NIMMessageSendingState, + V2NIMMessageType +} from '@nimsdk/base'; +import { ChatConst } from '../constants/ChatConst'; +import { ChatKitClient } from '@nimkit/chatkit/src/main/ets/ChatKitClient'; +import { AudioPlayerManager } from '../manager/AudioPlayerManager'; +import { + conversationSelectLimitCount, + ConversationSelectParam, + CustomMessageUtils, + ErrorUtils, + MergedMessageAttachment, + mergedMessageCustomType, + mergedMessageLimitCount, + mergedMessageMaxDepth, + singleMessageLimitCount +} from '@nimkit/chatkit'; +import { ConversationSelectModel } from '@nimkit/chatkit/src/main/ets/model/ConversationSelectModel'; +import { ForwardMessageDialog } from '../view/ForwardMessageDialog'; +import { photoAccessHelper } from '@kit.MediaLibraryKit'; +import { + downLoadAndOpenFile, + getMessageImageUrl, + getMessageImageUrls, + getMessageVideoRatio, + getMessageVideoUrl, + parseMessageText +} from '../common/MessageHelper'; +import { sceneMap } from '@kit.MapKit'; +import { computeOperateViewHeight, computeOperateViewWidth, setupMoreOperationData } from '../common/ChatUtils'; +import { ChatMultiSelectView } from '../view/ChatMultiSelectView'; +import { TextMessageDetailDialog } from '../view/TextMessageDetailDialog'; +import { TeachDialog } from '../view/TeachDialog'; +import { NewWaDialog } from '../view/NewWaDialog'; +import { PerfactInputSheet } from '@itcast/basic/src/main/ets/Views/PerfactInputSheet' +import { hdHttp, HdResponse,BasicConstant, authStore} from '@itcast/basic' +import { HashMap } from '@kit.ArkTS'; +import { customAttachment } from '../view/MessageComponentBuilder' + +@ComponentV2 +export struct ChatP2PPage { + pathStack: NavPathStack = new NavPathStack() + sessionId=''//患者的云信id + patientUuid=''//患者uuid + @Local statusBarHeight:number=0 + @Local havestopout:boolean=false;//是否有出诊公告 + @Local chatUserInfo: ChatUserInfo = new ChatUserInfo(); + chatViewModel: ChatP2PViewModel = new ChatP2PViewModel(); + conversationId: string = ''; + // 底部扩展区域高度,默认为0 + @Local expandHeight: number = 0; + @Local inputStyle: InputStyleType = InputStyleType.None; + @Local hideInput: boolean = false; + @Local scrollHeight: number = 0; + @Local showOperationView: boolean = false; + @Local showMultiSelect: boolean = false; + @Local multiSelectCount: number = 0; + // 长按操作弹窗的边距值 + operationViewMargin: number = 12; + defaultInputViewHeight: number = 0; + // 长按操作选中的消息 + @Local operationMsg: NIMMessageInfo | undefined = undefined + @Local replyMsg: NIMMessageInfo | undefined = undefined + @Local operationRect: NERectData = new NERectData() + screenHeight: number = 0; + screenWidth: number = 0; + keyboardHeight: number = 0 + //导航栏高度,用于计算弹窗位置 + navBarHeight: number = 80; + // 底部输入框以及固定按钮操作栏高度 + @Local bottomHeight: number = 65; + bottomMargin: number = 100; + // bottomMargin: number = 10; + bottomWithReplyHeight: number = 135; + controller: RichEditorController = new RichEditorController() + operationMoreDataList: Array = Array() + listScroller: Scroller = new Scroller() + toScroll: boolean = false + inputContentLength: number = 0 + // 接受消息标记 + msgSize: number = 0 + // 列表滚动位置 + listScrollStartPosition: number = 0 + listScrollEndPosition: number = 0 + //首次加载数据滚动到底部 + firstLoadData: boolean = true; + selectVideoView: CustomDialogController = new CustomDialogController({ + builder: NECameraSelectView({ + onTakePhotoFromCamera: () => { + const context: common.UIAbilityContext = getContext(this) as common.UIAbilityContext; + MediaUtils.showCameraPicker(context, cameraPicker.PickerMediaType.PHOTO).then((result) => { + if (result.uri) { + if (result.type === photoAccessHelper.PhotoType.IMAGE) { + this.chatViewModel.sendImageMessage(result.uri) + } else if (result.type === photoAccessHelper.PhotoType.VIDEO) { + this.chatViewModel.sendVideoMessage(result.uri, result.duration, result.width, result.height) + } + } + }); + }, + onTakeVideoFromCamera: () => { + const context: common.UIAbilityContext = getContext(this) as common.UIAbilityContext; + MediaUtils.showCameraPicker(context, cameraPicker.PickerMediaType.VIDEO).then((result) => { + if (result.uri) { + if (result.type === photoAccessHelper.PhotoType.IMAGE) { + this.chatViewModel.sendImageMessage(result.uri) + } else if (result.type === photoAccessHelper.PhotoType.VIDEO) { + this.chatViewModel.sendVideoMessage(result.uri, result.duration, result.width, result.height) + } + } + }); + } + }), + cornerRadius: 0, + alignment: DialogAlignment.Bottom, + backgroundColor: Color.Transparent, + backgroundBlurStyle: BlurStyle.NONE, + height: 140, + }) + @Local imagesIndexModel?: ImagesIndexModel + @Local currentImageIndex: number = 0 + imageViewerDialog: CustomDialogController = new CustomDialogController({ + builder: ImageViewDialog({ + imagesIndexModel: this.imagesIndexModel + }), + cornerRadius: 0, + alignment: DialogAlignment.Center, + backgroundColor: Color.Black, + backgroundBlurStyle: BlurStyle.NONE, + height: '100%', + width: '100%', + customStyle: true + }) + teachDialog: CustomDialogController = new CustomDialogController({ + builder: TeachDialog({ + + }), + cornerRadius: 4, + width: '70%', + }) + waDialog: CustomDialogController = new CustomDialogController({ + builder: NewWaDialog({ + firstCallBack:()=>{ + this.chatViewModel.sendTextMessage("纽娃复合营养素固体饮料主要成分是:蜂花粉、乳清蛋白粉、灰树花粉、低聚木糖、蚕蛹氨基酸、麦芽粉、薏苡仁粉、烟酸、磷脂,以及其他调味品、辅助原料。科学配比制成,含有丰富的蛋白质、氨基酸、维生素、微量元素及其他营养元素,点击链接了解详情。", this.replyMsg) + const jsonData:customAttachment = { + gdxz_title:'纽娃复合营养素固体饮料', + gdxz_url:BasicConstant.getNewWa+"setInfo?patient_uuid="+this.patientUuid +"&expert_uuid="+ authStore.getUser().uuid, + gdxz_content: '肝胆相照®肝胆病在线公共服务平台', + gdxz_id: '', + gdxz_img: '', + gdxz_type: BasicConstant.Shopping, + gdxz_ext_data: '' + } + let rawAttach = JSON.stringify(jsonData) + this.chatViewModel.sendCustomMessage(BasicConstant.Shopping, rawAttach) + }, + secondCallBack:()=>{ + + } + }), + cornerRadius: 4, + width: '70%', + }) + @Local videoFileUrl?: string + @Local videoRatio?: number + videoViewerDialog: CustomDialogController = new CustomDialogController({ + builder: VideoViewerDialog({ + videoUrl: this.videoFileUrl, + videoRatio: this.videoRatio + }), + cornerRadius: 0, + alignment: DialogAlignment.Center, + backgroundColor: Color.Black, + backgroundBlurStyle: BlurStyle.NONE, + height: '100%', + width: '100%', + customStyle: true + }) + forwardMessages: V2NIMMessage[] = [] + forwardConversations: ConversationSelectModel[] = [] + currentConversationName?: string + forwardType?: ResourceStr = $r('app.string.chat_operation_forward') + forwardMessageDialog = new CustomDialogController({ + builder: ForwardMessageDialog({ + conversationList: this.forwardConversations, + currentConversationName: this.currentConversationName, + forwardType: this.forwardType, + sendForwardMsg: (text: string | undefined) => { + if (ErrorUtils.checkNetworkAndToast()) { + this.chatViewModel.forwardMessage(this.forwardMessages, this.forwardConversations, text) + this.showMultiSelect = false + } + } + }), + cornerRadius: 14, + backgroundColor: Color.White, + height: 250, + width: 276, + }) + invalidForwardDialogSureAction?: () => void + invalidForwardFailureDialog?: CustomDialogController = new CustomDialogController({ + builder: DoubleAlertDialog({ + title: $r('app.string.exception_description'), + message: $r("app.string.multiForward_exist_invalid_fail"), + sureAction: this.invalidForwardDialogSureAction + }), + cornerRadius: 14, + backgroundColor: Color.White, + height: 140, + width: 270, + }) + invalidForwardDepthDialog?: CustomDialogController = new CustomDialogController({ + builder: DoubleAlertDialog({ + title: $r('app.string.exception_description'), + message: $r('app.string.multiForward_exist_invalid_depth'), + sureAction: this.invalidForwardDialogSureAction + }), + cornerRadius: 14, + backgroundColor: Color.White, + height: 140, + width: 270, + }) + forwardMessageAction = (selectedList: ConversationSelectModel[]) => { + if (this.operationMsg?.message) { + this.forwardMessages = [this.operationMsg.message] + this.forwardConversations = selectedList + this.currentConversationName = this.chatUserInfo.getConversationName() + this.forwardMessageDialog.open() + } + } + private outpatient!:CustomDialogController; + @Local inputPlaceholder:string='您未添加出/停诊信息,是否添加?' + initDialog() { + this.outpatient = new CustomDialogController({ + builder:PerfactInputSheet({ + controller:this.outpatient, + inputTitle:'提示', + inputPlaceholder:this.inputPlaceholder, + style:'2', + okColor:$r('app.color.top_title'), + inputCallBack:(input: string,title:string)=>{ + if(this.havestopout) + { + const jsonData:customAttachment = { + gdxz_title: authStore.getUser().realName+'医生门诊详情', + gdxz_url: BasicConstant.urlOutpatientnew+authStore.getUser().uuid, + gdxz_content: '门诊详情', + gdxz_id: '', + gdxz_img: '', + gdxz_type: BasicConstant.VisitTeach, + gdxz_ext_data: '' + } + + let rawAttach = JSON.stringify(jsonData) + this.chatViewModel.sendCustomMessage(BasicConstant.VisitTeach, rawAttach) + } + + + } + }), + keyboardAvoidDistance: LengthMetrics.vp(0), // 设置弹窗底部与键盘顶部间距(单位:vp) + alignment: DialogAlignment.Center, + customStyle: true, + autoCancel: false, + backgroundColor: ('rgba(0,0,0,0.5)'), + height: '100%' + }) + } + @Monitor("chatUserInfo.isReceiveMsg") + onReceiveMsg() { + if (this.firstLoadData || this.chatUserInfo.isReceiveMsg) { + this.listScroller.scrollEdge(Edge.Bottom) + this.chatUserInfo.setReceiveMsg(false) + this.firstLoadData = false; + } + } + + @Monitor("chatUserInfo.scrollIndex") + onScrollIndex() { + if (this.chatUserInfo.scrollIndex > -1) { + let height = DeviceUtils.windowPXHeight / 2 + this.toScroll = true + this.listScroller.scrollToIndex(this.chatUserInfo.scrollIndex, false, undefined, { + 'extraOffset': new LengthMetrics(-height, 0) + }) + this.chatViewModel.setAnchorMessage(undefined) + this.chatUserInfo.setScrollIndex(-1) + } + } + + @Monitor("chatViewModel.needScrollToBottom") + onNeedScrollToBottom() { + if (this.chatViewModel.needScrollToBottom && + this.listScrollEndPosition >= this.chatUserInfo.msgList.totalCount() - 2) { + this.listScroller.scrollEdge(Edge.Bottom) + this.chatViewModel.needScrollToBottom = false; + } + } + + @Monitor("chatViewModel.anchorMsg") + onAnchorMsg() { + if (this.chatViewModel.anchorMsg) { + if (this.chatUserInfo.msgMap.has(this.chatViewModel.anchorMsg.getMessageClientId())) { + let position = this.chatUserInfo.searchPosition(this.chatViewModel.anchorMsg.getMessageClientId()) + this.toScroll = true + this.listScroller.scrollToIndex(position) + this.chatViewModel.setAnchorMessage(undefined) + } else { + this.chatViewModel.loadAnchorMsg(this.chatViewModel.anchorMsg) + } + } + + } + + @Monitor("chatViewModel.selectMsgCount") + onSelectMsg() { + this.multiSelectCount = this.chatViewModel.getSelectMessageSize() + } + + @Monitor("expandHeight") + onExpandInputView() { + if (this.expandHeight > 10) { + // 如果是定位消息状态,收到键盘展开重新切换最新消息 + if (this.chatViewModel.hasNew) { + this.chatViewModel.reloadMessageList() + } else { + this.listScroller.scrollEdge(Edge.Bottom) + } + } + } + + getOutList() + { + let hashMap1: HashMap = new HashMap(); + hashMap1.set("page", "1") + hdHttp.httpReq(BasicConstant.listOutPatient,hashMap1).then(async (res: HdResponse) => { + let json = JSON.parse(res+'') as Record; + let json1=json.data as Record + let datas:[]=json1.list as [] + if(datas!=null&&datas.length>0) + { + this.havestopout=true + } + + }).catch((err: BusinessError) => { + console.info(`Response fail: ${err}`); + }) + let hashMap: HashMap = new HashMap(); + + hdHttp.httpReq(BasicConstant.stopOutPatientList,hashMap).then(async (res: HdResponse) => { + let json = JSON.parse(res+'') as Record; + let datas:[]=json.data as [] + if(datas!=null&&datas.length>0) + { + this.havestopout=true + } + + }).catch((err: BusinessError) => { + console.info(`Response fail: ${err}`); + }) + } + + patientDetail() + { + this.sessionId = ChatKitClient.nim.conversationIdUtil.parseConversationTargetId(this.conversationId) + this.patientUuid=this.sessionId + hdHttp.post(BasicConstant.patientDetail, { + patientUuid: this.sessionId, + } as patientDetailExtraData).then(async (res: HdResponse) => { + let json = JSON.parse(res+'') as Record; + let datas=json.data as Record; + this.patientUuid=datas.uuid + }).catch((err: BusinessError) => { + + }) + } + + + aboutToAppear(): void { + + NEEmojiManager.instance.setup(); + DeviceUtils.rootDirPath = getContext(this).filesDir + this.operationMoreDataList = setupMoreOperationData() + window.getLastWindow(getContext(this)).then(currentWindow => { + + let avoidArea1 = currentWindow.getWindowAvoidArea(window.AvoidAreaType.TYPE_SYSTEM); + // 顶部状态栏高度 + let statusBarHeight = px2vp(avoidArea1.topRect.height); + this.statusBarHeight=statusBarHeight; + + let property = currentWindow.getWindowProperties(); + // 初始化窗口高度 + let avoidArea = currentWindow.getWindowAvoidArea(window.AvoidAreaType.TYPE_KEYBOARD); + this.screenHeight = px2vp(property.windowRect.height); + this.screenWidth = px2vp(property.windowRect.width); + DeviceUtils.windowPXWidth = property.windowRect.width; + DeviceUtils.windowPXHeight = property.windowRect.height; + this.scrollHeight = + px2vp(property.windowRect.height - avoidArea.bottomRect.height) - this.bottomHeight; + this.defaultInputViewHeight = this.scrollHeight; + // 监听软键盘的隐藏和显示 + currentWindow.on('avoidAreaChange', data => { + if (data.type == window.AvoidAreaType.TYPE_KEYBOARD) { + this.showOperationView = false + this.keyboardHeight = px2vp(data.area.bottomRect.height); + // 如果是定位消息状态,收到键盘展开重新切换最新消息 + if (this.keyboardHeight > 10 && this.chatViewModel.hasNew) { + this.chatViewModel.reloadMessageList() + } + this.computeScrollHeight() + return; + } + }) + }) + this.initDialog() + this. getOutList() + this.patientDetail() + } + + computeScrollHeight() { + if ((this.inputStyle === InputStyleType.Emoji || this.inputStyle === InputStyleType.Record || + this.inputStyle === InputStyleType.More) && this.keyboardHeight <= 0) { + this.scrollHeight = this.screenHeight - this.keyboardHeight - this.bottomHeight - this.expandHeight + } else { + this.scrollHeight = this.screenHeight - this.keyboardHeight - this.bottomHeight + if (this.keyboardHeight > 10) { + this.expandHeight = 0 + this.inputStyle = InputStyleType.None; + this.listScroller.scrollEdge(Edge.Bottom) + } + } + } + + getInputContentLength(): number { + let length = 0 + this.controller.getSpans().forEach((item) => { + if (typeof (item as RichEditorImageSpanResult)['imageStyle'] != 'undefined') { + let span = item as RichEditorImageSpanResult; + if (span.spanPosition.spanRange) { + let end = span.spanPosition.spanRange[1]; + if (end > length) { + length = end; + } + } + } else { + let span = item as RichEditorTextSpanResult + if (span.spanPosition.spanRange) { + let end = span.spanPosition.spanRange[1]; + if (end > length) { + length = end; + } + } + } + }) + return length + } + + getMessageText(): string { + let text = ''; + let results = this.controller?.getSpans(); + results?.forEach((item) => { + if (typeof (item as RichEditorImageSpanResult)['imageStyle'] != 'undefined') { + let resourcePath = (item as RichEditorImageSpanResult).valueResourceStr; + if (resourcePath != null && resourcePath.toString().length > 0) { + let path = resourcePath.toString(); + let splits = path.split("/") + let fileName = splits[splits.length - 1]; + let emoji = NEEmojiManager.instance.getEmojiByName(String(fileName)); + if (emoji?.tag != null) { + text += emoji.tag; + } + } + } else { + text += (item as RichEditorTextSpanResult).value; + } + }) + return text + } + + loadChatData() { + this.chatUserInfo.setConversationId(this.conversationId) + this.chatViewModel.init(this.conversationId, this.chatUserInfo); + this.chatViewModel.loadData(); + } + + async showImageDetail(msg?: NIMMessageInfo, onlyMsg?: boolean) { + try { + const imageModel = + onlyMsg ? await getMessageImageUrl(msg, this.chatUserInfo) : await getMessageImageUrls(msg, this.chatUserInfo) + this.imagesIndexModel = imageModel + this.imageViewerDialog.open() + } catch (err) { + console.error(err) + } + } + + showVideoDetail(msg: NIMMessageInfo) { + AudioPlayerManager.instance.stopPlayAll() + this.videoFileUrl = getMessageVideoUrl(msg, this.chatUserInfo) + if (this.videoFileUrl == undefined) { + NECommonUtils.showToast($r('app.string.chat_msg_download_tips')) + return + } + this.videoRatio = getMessageVideoRatio(msg) + if (this.videoFileUrl) { + this.videoViewerDialog.open() + } + } + + showLocationDetail(msg: NIMMessageInfo) { + let attachment = msg.message.attachment as V2NIMMessageLocationAttachment + + let queryLocationOptions: sceneMap.LocationQueryOptions = { + location: { + latitude: attachment.latitude, + longitude: attachment.longitude + }, + name: attachment.address, + address: attachment.address, + }; + // 拉起地点详情页 + sceneMap.queryLocation(getContext(this) as common.UIAbilityContext, queryLocationOptions).then(() => { + console.info("netease QueryLocation", "Succeeded in querying location."); + }).catch((err: BusinessError) => { + console.error("netease QueryLocation", `Failed to query Location, code: ${err.code}, message: ${err.message}`); + }); + } + + @Builder + build() { + NavDestination() { + NavigationBackBuilder({ + title: this.chatUserInfo.conversationName, + rightButtonIcon: this.showMultiSelect ? undefined : $r('app.media.ic_public_more_dot'), + rightButtonTitle: this.showMultiSelect ? $r('app.string.chat_msg_dialog_cancel') : undefined, + top:this.statusBarHeight, + rightButtonAction: () => { + this.goToSettingPage(this.pathStack) + }, + leftButtonAction: () => { + this.pathStack.pop() + } + + }) + RelativeContainer() { + List({ scroller: this.listScroller }) { + LazyForEach(this.chatUserInfo.msgList, (msg: NIMMessageInfo) => { + ListItem() { + MessageComponent({ + message: msg, + chatInfo: this.chatUserInfo, + showSelect: this.showMultiSelect, + onMessageClick: { + onAvatarClick: ((msg: NIMMessageInfo | undefined) => { + if (this.showMultiSelect) { + return + } + if (msg != null) { + if (msg?.message.senderId == ChatKitClient.getLoginUserId()) { + this.pathStack.pushPath({ + name: 'MineInfoPage' + }) + } else { + this.pathStack.pushPath({ name: 'PersonInfoPage', param: msg?.message.senderId }) + } + } + }), + onItemLongClick: ((event: GestureEvent, msg: NIMMessageInfo | undefined) => { + if (this.showMultiSelect) { + return + } + this.operationMsg = msg + let opMenuWidth = computeOperateViewWidth(msg) + let opMenuHeight = computeOperateViewHeight(msg) + let marginSize = this.operationViewMargin + if (event.target.area.position.x !== undefined) { + let xPoint = Number(event.target.area.globalPosition.x) + + (Number(event.target.area.width) - opMenuWidth) / 2 + if (xPoint < marginSize) { + xPoint = marginSize + } + if (xPoint + opMenuWidth + marginSize > this.screenWidth) { + xPoint = this.screenWidth - opMenuWidth - marginSize + } + this.operationRect.x = xPoint; + } + if (event.target.area.position.y !== undefined) { + let yPoint = + Number(event.target.area.globalPosition.y) - this.navBarHeight + + Number(event.target.area.height) + if (yPoint + opMenuHeight + marginSize + this.bottomHeight > this.scrollHeight) { + yPoint = + yPoint - opMenuHeight - marginSize * 2 - Number(event.target.area.height); + } + if (yPoint < 0) { + yPoint = this.scrollHeight / 2; + + } + this.operationRect.y = yPoint + } + this.showOperationView = true + }), + onItemClick: (_event: ClickEvent, msg: NIMMessageInfo | undefined) => { + if (this.showMultiSelect) { + if (msg) { + if (!msg?.isSelectedMsg && !msg.isRevokeMsg) { + this.chatViewModel.addSelectMessage(msg) + } else { + this.chatViewModel.removeSelectMessage(msg) + } + } + return + } + this.showMessageDetail(msg) + + }, + onRevokeEditClick: (_event: ClickEvent, msg: NIMMessageInfo | undefined) => { + if (this.showMultiSelect) { + return + } + if (msg?.checkRevokeEdit()) { + this.clearInput(true) + if (msg.isReplyMsg && msg.replyMsg) { + this.loadReplyInfo(msg.replyMsg) + } + parseMessageText(msg.revokeInfo?.revokeMsgText)?.forEach((item: NEEmojiParseResult) => { + if (item.text) { + this.controller.addTextSpan(item.text) + } else if (item.emoji) { + this.controller.addImageSpan($rawfile(`emoji/${item.emoji.file}`), + { + imageStyle: { size: [16, 16] } + }) + } + }) + } else if (msg?.revokeInfo !== undefined) { + NECommonUtils.showToast($r('app.string.chat_revoke_edit_error_tips')) + } + }, + onMultiSelect: (select: boolean, msg: NIMMessageInfo | undefined) => { + if (msg) { + if (select) { + this.chatViewModel.addSelectMessage(msg) + } else { + this.chatViewModel.removeSelectMessage(msg) + } + this.operationMsg = undefined + } + }, + onReplyClick: (_event: ClickEvent, msg: NIMMessageInfo | undefined) => { + if (msg) { + if (this.chatUserInfo.msgMap.has(msg.getMessageClientId())) { + let index = this.chatUserInfo.searchPosition(msg.getMessageClientId()) + this.listScroller.scrollToIndex(index) + } else { + this.showMessageDetail(msg, true) + } + } + }, + onSendFailClick: (_event: ClickEvent, msg: NIMMessageInfo | undefined) => { + if (this.showMultiSelect) { + return + } + if (msg) { + this.chatViewModel.resendMessage(msg) + } + }, + onAvatarLongPress: () => { + + }, + onReadReceiptClick: (_event: ClickEvent) => { + + } + }, + }) + } + }, (item: NIMMessageInfo) => item.message.messageClientId) + } + .id("chatPageListView") + .cachedCount(20) + .maintainVisibleContentPosition(true) + .padding({ bottom: 20 }) + .onScrollIndex((start: number, end: number) => { + // Listen to the first index of the current list. + if (!this.toScroll) { + if (start >= 0 && start < 3 + && this.listScrollStartPosition > start && this.chatViewModel.canLoadMore()) { + this.chatViewModel.getMoreMessageList() + } else if (this.listScrollEndPosition < end && this.chatViewModel.canLoadNext(end)) { + this.chatViewModel.getNewMessageList() + } + } + this.listScrollEndPosition = end; + this.listScrollStartPosition = start; + }) + .onScrollStop(() => { + console.debug('netease to scroll stop:', this.toScroll) + if (this.toScroll) { + this.toScroll = false + } + }) + .alignRules({ + left: { anchor: "__container__", align: HorizontalAlign.Start }, + right: { anchor: "__container__", align: HorizontalAlign.End }, + top: { anchor: "__container__", align: VerticalAlign.Top }, + }) + .height(this.scrollHeight - this.bottomMargin) + .onScrollStart(() => { + this.showOperationView = false + }) + .onTouch((event) => { + if (event.type == TouchType.Down) { + this.showOperationView = false + this.getUIContext().getFocusController().clearFocus(); + this.scrollHeight = this.defaultInputViewHeight; + this.expandHeight = 0; + this.inputStyle = InputStyleType.None + } + }) + + if (this.chatViewModel.networkBroken) { + NetworkBrokenBuilder() + } + + Column() + .height(this.bottomHeight) + .backgroundColor(Color.Transparent) + .backgroundColor($r('app.color.chat_input_background')) + .id("chat_input") + .alignRules({ + left: { anchor: "__container__", align: HorizontalAlign.Start }, + right: { anchor: "__container__", align: HorizontalAlign.End }, + top: { anchor: "chatPageListView", align: VerticalAlign.Bottom }, + }) + + if (this.hideInput === false && !this.showMultiSelect) { + NEChatInputView({ + controller: this.controller, + placeHolder: (this.chatUserInfo.conversationName ?? '').length > 15 ? + this.chatUserInfo.conversationName?.substring(0, 15) + '...' : this.chatUserInfo.conversationName, + replyMsg: this.replyMsg, + chatInfo: this.chatUserInfo, + onDidClickCloseReply: () => { + this.clearInput(false) + }, + onDidClickImage: () => { + this.showOperationView = false + MediaUtils.showImageVideoPicker().then((result) => { + if (result.errorMsg == null && result.uri) { + if (result.type === photoAccessHelper.PhotoType.IMAGE) { + this.chatViewModel.sendImageMessage(result.uri); + } else if (result.type === photoAccessHelper.PhotoType.VIDEO) { + this.chatViewModel.sendVideoMessage(result.uri, result.duration, result.width, result.height); + } + } + }) + }, + onDidClickAudio: () => { + this.showOperationView = false + let context = getContext(this) as common.UIAbilityContext + this.getUIContext().getFocusController().clearFocus() + PermissionsUtils.reqPermissionsFromUser(['ohos.permission.MICROPHONE'], context).then((result) => { + if (result.grantStatus == true) { + if (this.inputStyle == InputStyleType.Record) { + this.expandHeight = 0 + this.inputStyle = InputStyleType.None; + this.scrollHeight = this.screenHeight - this.expandHeight - this.bottomHeight + } else { + this.inputStyle = InputStyleType.Record + this.expandHeight = ChatConst.messageInputAreaHeight + this.scrollHeight = this.screenHeight - this.expandHeight - this.bottomHeight + } + } else { + NECommonUtils.showToast($r('app.string.chat_permission_deny_tips')) + } + }) + + }, + onDidClickEmoji: () => { + this.showOperationView = false + if (this.inputStyle == InputStyleType.Emoji) { + this.expandHeight = 0 + this.inputStyle = InputStyleType.None; + this.scrollHeight = this.screenHeight - this.expandHeight - this.bottomHeight + } else { + this.inputStyle = InputStyleType.Emoji + this.expandHeight = ChatConst.messageInputAreaHeight + this.scrollHeight = this.screenHeight - this.expandHeight - this.bottomHeight + } + }, + onDidClickMore: () => { + this.showOperationView = false + if (this.inputStyle == InputStyleType.More) { + this.expandHeight = 0 + this.inputStyle = InputStyleType.None; + this.scrollHeight = this.screenHeight - this.expandHeight - this.bottomHeight + } else { + this.inputStyle = InputStyleType.More + this.expandHeight = ChatConst.messageInputAreaHeight + this.scrollHeight = this.screenHeight - this.expandHeight - this.bottomHeight + } + }, + onSendTextMessage: () => { + this.showOperationView = false + let text = this.getMessageText().trimEnd() + if (text.length <= 0) { + NECommonUtils.showToast($r('app.string.null_message_not_support')) + return + } + this.chatViewModel.sendTextMessage(text, this.replyMsg) + this.clearInput(true) + }, + inputStyle: this.inputStyle + }).alignRules({ + left: { anchor: "chat_input", align: HorizontalAlign.Start }, + right: { anchor: "chat_input", align: HorizontalAlign.End }, + bottom: { anchor: "chat_input", align: VerticalAlign.Bottom }, + top: { anchor: "chat_input", align: VerticalAlign.Top }, + }) + + .backgroundColor($r('app.color.chat_input_background')) + } else if (this.showMultiSelect) { + ChatMultiSelectView({ + isEnable: this.multiSelectCount > 0, + onMultiForward: () =>{ + if (ChatKitClient.connectBroken()) { + NECommonUtils.showToast($r('app.string.chat_network_error_tips')) + } else { + this.multiForwardMessage() + } + }, + onSingleForward: () => { + if (ChatKitClient.connectBroken()) { + NECommonUtils.showToast($r('app.string.chat_network_error_tips')) + } else { + this.singleForwardMessage() + } + }, + onMultiDelete: () => { + let selectMsg = this.chatViewModel.getSelectMessageList() + if (selectMsg.length > ChatConst.messageDeleteLimit) { + NECommonUtils.showToast($r('app.string.chat_multi_delete_limit_tips', ChatConst.messageDeleteLimit)) + } else { + this.showDialogToDelete(selectMsg) + } + }, + }).width('100%').height(this.bottomHeight) + .alignRules({ + left: { anchor: "chat_input", align: HorizontalAlign.Start }, + right: { anchor: "chat_input", align: HorizontalAlign.End }, + bottom: { anchor: "chat_input", align: VerticalAlign.Bottom }, + top: { anchor: "chat_input", align: VerticalAlign.Top }, + }).backgroundColor($r('app.color.chat_input_background')) + } + + Column() { + if (this.inputStyle === InputStyleType.Record) { + NEAudioRecordView({ + onRecordAudio: (filepath, duration) => { + this.chatViewModel.sendAudioMessage(filepath, duration) + }, + onRecordStart: () => { + this.hideInput = true + }, + onRecordEnd: () => { + this.hideInput = false + } + }) + .width('100%') + .height(150) + .alignRules({ + left: { anchor: "__container__", align: HorizontalAlign.Start }, + right: { anchor: "__container__", align: HorizontalAlign.End }, + top: { anchor: "__container__", align: VerticalAlign.Top }, + }) + } else if (this.inputStyle === InputStyleType.More) { + NEChatMoreOperation({ + dataList: this.operationMoreDataList, onDidClick: (data) => { + let context = getContext(this) as common.UIAbilityContext; + if (data.type == NEChatMoreOperationType.Video) { + PermissionsUtils.reqPermissionsFromUser(['ohos.permission.CAMERA'], context).then((result) => { + if (result.grantStatus == true) { + this.selectVideoView.open() + } else { + NECommonUtils.showToast($r('app.string.chat_permission_deny_tips')) + } + }) + } else if (data.type == NEChatMoreOperationType.Image) { + this.showOperationView = false + MediaUtils.showImageVideoPicker().then((result) => { + if (result.errorMsg == null && result.uri) { + if (result.type === photoAccessHelper.PhotoType.IMAGE) { + this.chatViewModel.sendImageMessage(result.uri); + } else if (result.type === photoAccessHelper.PhotoType.VIDEO) { + this.chatViewModel.sendVideoMessage(result.uri, result.duration, result.width, result.height); + } + } + }) + + } + else if (data.type == NEChatMoreOperationType.Reply) { + this.pathStack.pushPathByName( + 'QuckMessagePage', + {}, + (popInfo: PopInfo) => { // 接收B返回的参数 + const result = popInfo.result as string; + this.setInputContent(result); + // console.log(`B页面返回数据:${result}`); + } + ) + } + else if (data.type == NEChatMoreOperationType.Teach) { + this.teachDialog.open() + } + else if (data.type == NEChatMoreOperationType.Shopping) { + this.waDialog.open() + } + else if (data.type == NEChatMoreOperationType.Outpatient) { + if(this.havestopout) + { + this.inputPlaceholder='您是否发送您的出/停诊公告?' + this.outpatient.open() + } + else + { + this.inputPlaceholder='您未添加出/停诊信息,是否添加?' + this.outpatient.open() + } + + } + } + }).padding({ top: 10 }) + .width('100%') + .height(250) + .backgroundColor(Color.White) + .alignRules({ + left: { anchor: "__container__", align: HorizontalAlign.Start }, + right: { anchor: "__container__", align: HorizontalAlign.End }, + top: { anchor: "__container__", align: VerticalAlign.Top }, + }) + } else if (this.inputStyle === InputStyleType.Emoji) { + NEChatEmojiView({ + onDidClick: (emoji) => { + if (emoji.type === NIMEmoticonType.file) { + this.controller.addImageSpan($rawfile(`emoji/${emoji.file}`), { imageStyle: { size: [16, 16] } }) + } else if (emoji.type === NIMEmoticonType.delete) { + let currentLength = this.getInputContentLength() + if (currentLength > 0) { + this.controller.deleteSpans({ start: currentLength - 1, end: currentLength }) + } + } + }, + onEmojiSendMessage: () => { + let text = this.getMessageText().trimEnd() + if (text.length <= 0) { + NECommonUtils.showToast($r('app.string.null_message_not_support')) + return + } + this.chatViewModel.sendTextMessage(text, this.replyMsg) + this.clearInput(true) + } + }).padding({ top: 0 }) + .width('100%') + .height(170) + .alignRules({ + left: { anchor: "__container__", align: HorizontalAlign.Start }, + right: { anchor: "__container__", align: HorizontalAlign.End }, + top: { anchor: "__container__", align: VerticalAlign.Top } + }) + } + } + .height(this.expandHeight) + .width('100%') + .alignRules({ + left: { anchor: "__container__", align: HorizontalAlign.Start }, + right: { anchor: "__container__", align: HorizontalAlign.End }, + top: { anchor: "chat_input", align: VerticalAlign.Bottom }, + }) + .id("input_expand_back_container") + .backgroundColor($r('app.color.chat_input_background')) + + if (this.showOperationView) { + MessageOperationView({ + operateMsg: this.operationMsg, + didClickItem: (item: MessageOperationItem) => { + this.showOperationView = false + if (this.operationMsg == undefined) { + return; + } + if (item.operationType == MessageOperationType.Copy) { + const pasteboardData = + pasteboard.createData(pasteboard.MIMETYPE_TEXT_PLAIN, this.operationMsg.message.text) + pasteboard.getSystemPasteboard().setDataSync(pasteboardData) + NECommonUtils.showToast($r('app.string.chat_message_copy_success_tips')) + } else if (item.operationType == MessageOperationType.Delete) { + // this.showDialogToDelete([this.operationMsg]) + this.chatViewModel.deleteMessageList([this.operationMsg]) + this.showMultiSelect = false + } else if (item.operationType == MessageOperationType.Undo) { + this.showDialogToRevoke(this.operationMsg) + } else if (item.operationType == MessageOperationType.Forward) { + // 转发 + this.forwardMessageAction = (selectedList: ConversationSelectModel[]) => { + if (this.operationMsg?.message) { + this.forwardMessages = [this.operationMsg.message] + this.forwardConversations = selectedList + this.currentConversationName = this.chatUserInfo.getConversationName() + this.forwardMessageDialog.open() + } + } + this.forwardType = $r('app.string.chat_operation_forward') + this.pathStack.pushPath({ + name: 'ConversationSelectPage', + param: new ConversationSelectParam([], conversationSelectLimitCount, this.forwardMessageAction) + }) + } else if (item.operationType == MessageOperationType.Collection) { + // 收藏 + this.chatViewModel.collectionMessage(this.operationMsg) + } else if (item.operationType == MessageOperationType.Pin) { + this.chatViewModel.pinMessage(this.operationMsg) + } else if (item.operationType == MessageOperationType.Unpin) { + this.chatViewModel.unpinMessage(this.operationMsg) + } else if (item.operationType == MessageOperationType.Select) { + this.chatViewModel.clearSelectMessage() + this.chatViewModel.addSelectMessage(this.operationMsg) + this.showMultiSelect = true + } else if (item.operationType == MessageOperationType.Reply) { + this.loadReplyInfo(this.operationMsg) + } + } + }) + .position({ x: this.operationRect.x, y: this.operationRect.y }) + .borderRadius(8) + .shadow(ShadowStyle.OUTER_DEFAULT_MD) + + } + } + .margin({ bottom: this.bottomMargin }) + + .expandSafeArea([SafeAreaType.KEYBOARD]) + .zIndex(1) + } + + .hideTitleBar(true) + .onReady((context: NavDestinationContext) => { + this.pathStack = context.pathStack + let param = this.pathStack.getParamByName("ChatP2PPage") as string[]; + if (param.length > 0) { + this.conversationId = param[0]; + this.loadChatData(); + } else { + this.pathStack.removeByName("ChatP2PPage") + } + }).onHidden(() => { + AudioPlayerManager.instance.stopPlayAll() + }) + } + + loadReplyInfo(msg: NIMMessageInfo) { + this.bottomHeight = this.bottomWithReplyHeight + this.replyMsg = msg + this.getUIContext().getFocusController().requestFocus("chat_edit_input") + } + + clearInput(clearInput?: boolean) { + if (clearInput) { + this.controller.deleteSpans() + } + this.replyMsg = undefined + this.bottomHeight = 105 + this.computeScrollHeight() + } + + /** + * 【逐条转发】将多个消息逐条转发到多个会话中,并将留言发送到多个会话中 + */ + singleForwardMessage() { + // 校验网络 + if (ErrorUtils.checkNetworkAndToast()) { + this.forwardType = $r('app.string.chat_operation_single_forward') + // 校验转发条数 + if (this.chatViewModel.selectMsgMap.size > singleMessageLimitCount) { + let resourceManager = getContext(this).resourceManager + NECommonUtils.showToast($r("app.string.chat_forward_limit", resourceManager.getStringSync(this.forwardType.id), + singleMessageLimitCount)) + return + } + + // 不可合并转发的消息列表 + let invalidMessages: NIMMessageInfo[] = [] + for (const message of this.chatViewModel.selectMsgMap.values()) { + // 发送失败的消息不可转发 + // 语音消息不可转发 + // 话单消息不可转发 + if (message.message.sendingState === V2NIMMessageSendingState.V2NIM_MESSAGE_SENDING_STATE_FAILED || + message.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_AUDIO || + message.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_CALL) { + invalidMessages.push(message) + continue + } + } + + this.forwardMessageAction = async (selectedList: ConversationSelectModel[]) => { + let selectMessage = this.chatViewModel.getSelectMessageList().map(msg => msg.message) + selectMessage = selectMessage.sort((m1, m2) => { + if (m1.createTime < m2.createTime) { + return -1 + } + if (m1.createTime > m2.createTime) { + return 1 + } + return 0 + }) + this.forwardMessages = selectMessage + this.forwardConversations = selectedList + this.currentConversationName = this.chatUserInfo.getConversationName() + this.forwardMessageDialog.open() + } + + // 存在不可转发的消息:提示 + 取消勾选 + if (invalidMessages.length > 0) { + this.invalidForwardFailureDialog?.open() + this.invalidForwardDialogSureAction = () => { + for (const invalidMessage of invalidMessages) { + this.chatViewModel.removeSelectMessage(invalidMessage) + invalidMessage.isSelectedMsg = false + } + if (this.chatViewModel.getSelectMessageSize() > 0) { + this.pathStack.pushPath({ + name: 'ConversationSelectPage', + param: new ConversationSelectParam([], conversationSelectLimitCount, this.forwardMessageAction) + }) + } + } + } else { + if (this.chatViewModel.getSelectMessageSize() > 0) { + this.pathStack.pushPath({ + name: 'ConversationSelectPage', + param: new ConversationSelectParam([], conversationSelectLimitCount, this.forwardMessageAction) + }) + } + } + } + } + + /** + * 【合并转发】将多个消息合并为一条自定义消息,转发到多个会话中,并将留言发送到多个会话中 + */ + multiForwardMessage() { + // 校验网络 + if (ErrorUtils.checkNetworkAndToast()) { + this.forwardType = $r('app.string.chat_operation_multi_forward') + // 校验转发条数 + if (this.chatViewModel.selectMsgMap.size > mergedMessageLimitCount) { + let resourceManager = getContext(this).resourceManager + NECommonUtils.showToast($r("app.string.chat_forward_limit", resourceManager.getStringSync(this.forwardType.id), + mergedMessageLimitCount)) + return + } + + // 计算层数(深度) depth + let depth = 0 + // 不可合并转发的消息列表(1.发送失败的消息;2.转发层数超过 mergedMessageMaxDepth 的消息) + const invalidMessages: NIMMessageInfo[] = [] + let invalidFail: boolean = false + let invalidDepth: boolean = false + for (const message of this.chatViewModel.selectMsgMap.values()) { + // 发送失败的消息不可转发 + if (message.message.sendingState === V2NIMMessageSendingState.V2NIM_MESSAGE_SENDING_STATE_FAILED) { + invalidMessages.push(message) + invalidFail = true + continue + } + + // 解析消息中的 depth + if (message.message.attachment) { + let data = CustomMessageUtils.dataOfCustomMessage(message.message.attachment) + if (data) { + let dep = data["depth"] as number + if (dep >= mergedMessageMaxDepth) { + invalidMessages.push(message) + invalidDepth = true + } else if (dep >= depth) { + depth = dep + } + } + } + } + + // 当前合并转发消息深度 + 1 + depth += 1 + + this.forwardMessageAction = async (selectedList: ConversationSelectModel[]) => { + let forwardMessages = + await this.chatViewModel.mergeForwardMessage(this.chatViewModel.getSelectMessageList(), depth) + if (forwardMessages) { + this.forwardMessages = [forwardMessages] + } + this.forwardConversations = selectedList + this.currentConversationName = this.chatUserInfo.getConversationName() + this.forwardMessageDialog.open() + } + + // 存在不可转发的消息:提示 + 取消勾选 + if (invalidMessages.length > 0) { + if (invalidFail) { + this.invalidForwardFailureDialog?.open() + } else if (invalidDepth) { + this.invalidForwardDepthDialog?.open() + } + this.invalidForwardDialogSureAction = () => { + for (const invalidMessage of invalidMessages) { + this.chatViewModel.removeSelectMessage(invalidMessage) + invalidMessage.isSelectedMsg = false + } + if (this.chatViewModel.getSelectMessageSize() > 0) { + this.pathStack.pushPath({ + name: 'ConversationSelectPage', + param: new ConversationSelectParam([], conversationSelectLimitCount, this.forwardMessageAction) + }) + } + } + } else { + if (this.chatViewModel.getSelectMessageSize() > 0) { + this.pathStack.pushPath({ + name: 'ConversationSelectPage', + param: new ConversationSelectParam([], conversationSelectLimitCount, this.forwardMessageAction) + }) + } + } + } + } + + /** + * 查看消息详情,点击消息体查看或者点击被回复内容查看 + * @param msg 点击的消息 + * @param onlyShow 是否为只展示该消息,如果是则文本消息会直接弹窗展示,图片消息则只查看当前消息 + */ + showMessageDetail(msg: NIMMessageInfo | undefined, onlyShow?: boolean) { + if (msg) { + if (onlyShow && msg.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_TEXT) { + let textMessageDetailDialog: CustomDialogController = new CustomDialogController({ + builder: TextMessageDetailDialog({ + message: msg + }), + cornerRadius: 0, + alignment: DialogAlignment.Center, + backgroundColor: Color.White, + height: '100%', + width: '100%', + customStyle: true + }) + textMessageDetailDialog.open() + } + if (msg?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_IMAGE) { + this.showImageDetail(msg, onlyShow) + } else if (msg?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_FILE) { + downLoadAndOpenFile(msg, getContext(this), this.chatUserInfo) + } else if (msg?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_VIDEO) { + this.showVideoDetail(msg) + } else if (msg?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_LOCATION) { + this.showLocationDetail(msg) + } else if (msg?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_AUDIO) { + if (onlyShow) { + this.playAudioMessage(msg) + } + } else if (msg?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_CUSTOM) { + const attachment = msg.message.attachment + if (attachment) { + const type = CustomMessageUtils.typeOfCustomMessage(attachment) + if (type === mergedMessageCustomType) { + let data = CustomMessageUtils.dataOfCustomMessage(attachment) + if (data as MergedMessageAttachment) { + this.pathStack.pushPath({ + name: 'MergeMessageDetailPage', + param: data as MergedMessageAttachment + }) + } + } + } + } + } + } + + playAudioMessage(msg: NIMMessageInfo) { + if (msg.message.attachment) { + let audioManager = AudioPlayerManager.instance + audioManager.stopPlayAll() + audioManager.avPlayerLive((msg.message.attachment as V2NIMMessageAudioAttachment).url ?? '') + } + } + + showDialogToDelete(messages: NIMMessageInfo[]) { + AlertDialog.show( + { + title: $r('app.string.chat_msg_delete_dialog_title'), + message: $r('app.string.chat_msg_delete_dialog_desc'), + autoCancel: true, + alignment: DialogAlignment.Bottom, + gridCount: 4, + offset: { dx: 0, dy: -20 }, + primaryButton: { + value: $r('app.string.chat_msg_dialog_cancel'), + action: () => { + } + }, + secondaryButton: { + enabled: true, + defaultFocus: true, + style: DialogButtonStyle.HIGHLIGHT, + value: $r('app.string.chat_msg_dialog_sure'), + action: () => { + this.chatViewModel.deleteMessageList(messages) + this.showMultiSelect = false + } + } + } + ) + } + + showDialogToRevoke(message: NIMMessageInfo) { + AlertDialog.show( + { + title: $r('app.string.chat_msg_revoke_dialog_title'), + message: $r('app.string.chat_msg_revoke_dialog_desc'), + autoCancel: true, + alignment: DialogAlignment.Bottom, + gridCount: 4, + offset: { dx: 0, dy: -20 }, + primaryButton: { + value: $r('app.string.chat_msg_dialog_cancel'), + action: () => { + console.info('Callback when the first button is clicked') + } + }, + secondaryButton: { + enabled: true, + defaultFocus: true, + style: DialogButtonStyle.HIGHLIGHT, + value: $r('app.string.chat_msg_dialog_sure'), + action: () => { + console.info('Callback when the second button is clicked') + this.chatViewModel.revokeMessage(message) + } + } + } + ) + } + + goToSettingPage(pathStack: NavPathStack) { + if (this.showMultiSelect) { + this.chatViewModel.clearSelectMessage() + this.showMultiSelect = false + } else { + pathStack.pushPath({ + name: 'UserSettingPage', + param: this.chatViewModel.conversationId + }) + } + this.controller.stopEditing() + } + + onPageHide(): void { + this.chatViewModel.clearUnreadCount() + } + + aboutToDisappear(): void { + this.chatViewModel.clearUnreadCount() + this.chatViewModel.onDestroy() + AudioPlayerManager.instance.stopPlayAll() + } + + setInputContent(content: string) { + // 设置输入框内容 + this.controller?.deleteSpans(); + this.controller?.addTextSpan(content); + } +} + +// 跳转页面入口函数 +@Builder +export function ChatP2PPageBuilder() { + ChatP2PPage() +} + +export interface patientDetailExtraData{ + patientUuid:string +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/pages/ChatReadReceiptPage.ets b/chatkit_ui/src/main/ets/pages/ChatReadReceiptPage.ets new file mode 100644 index 0000000..68a0f9d --- /dev/null +++ b/chatkit_ui/src/main/ets/pages/ChatReadReceiptPage.ets @@ -0,0 +1,164 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { ChatKitClient, TeamMemberWithUser } from '@nimkit/chatkit' +import { ChatReadReceiptViewModel } from '../viewmodel/ChatReadReceiptViewModel' +import { AvatarColorUntil, AvatarItem, CommonAvatar, CommonEmptyResult, NavigationBackBuilder } from '@nimkit/common' +import { V2NIMMessage } from '@nimsdk/base' + +@ComponentV2 +export struct ChatReadReceiptPage { + pathStack: NavPathStack = new NavPathStack() + //群Id + teamId?: string + //消息 + message?: V2NIMMessage + @Local viewModel: ChatReadReceiptViewModel = new ChatReadReceiptViewModel() + + build() { + NavDestination() { + NavigationBackBuilder({ + title: $r('app.string.chat_read_receipt_title'), + backgroundColor: '#ffffffff', + leftButtonAction: () => { + this.pathStack.pop() + } + }) + if (this.viewModel.readReceiptDetail !== null) { + Tabs({ + barPosition: BarPosition.Start + }) { + + TabContent() { + if (this.viewModel.readReceiptDetail.readAccountList.length <= 0) { + CommonEmptyResult({ + tips: $r('app.string.chat_read_receipt_all_unread') + }) + } else { + List() { + ForEach(this.viewModel.readMemberList, (member: TeamMemberWithUser) => { + ListItem() { + Row() { + CommonAvatar({ + item: new AvatarItem( + member.getAvatar(), + member.getAvatarName(), + AvatarColorUntil.getBackgroundColorById(member.getAccId()) + ) + }) + .width(42) + .height(42) + .margin({ + right: 14 + }) + + Text(member.getNickname()) + .fontColor('#ff333333') + .fontSize(16) + .maxLines(1) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .ellipsisMode(EllipsisMode.END) + .width(280) + } + .padding({ + left: 20, + right: 20, + top: 10, + bottom: 10 + }) + .width('100%') + } + }) + } + .listDirection(Axis.Vertical) + .scrollBar(BarState.Off) + .width('100%') + .height('100%') + .backgroundColor('#ffFFFFFF') + } + + } + .tabBar($r('app.string.chat_read_receipt_read', + this.viewModel.readReceiptDetail.readReceipt.readCount)) + + TabContent() { + if (this.viewModel.readReceiptDetail.unreadAccountList.length <= 0) { + CommonEmptyResult({ + tips: $r('app.string.chat_read_receipt_all_read') + }).margin({ + top: 80 + }) + } else { + List() { + ForEach(this.viewModel.unreadMemberList, (member: TeamMemberWithUser) => { + ListItem() { + Row() { + CommonAvatar({ + item: new AvatarItem( + member.getAvatar(), + member.getAvatarName(), + AvatarColorUntil.getBackgroundColorById(member.getAccId()) + ) + }) + .width(42) + .height(42) + .margin({ + right: 14 + }) + + Text(member.getNickname()) + .fontColor('#ff333333') + .fontSize(16) + .maxLines(1) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .ellipsisMode(EllipsisMode.END) + .width(280) + } + .padding({ + left: 20, + right: 20, + top: 10, + bottom: 10 + }) + } + }) + } + .listDirection(Axis.Vertical) + .scrollBar(BarState.Off) + .width('100%') + .height('100%') + .backgroundColor('#ffFFFFFF') + } + + }.tabBar($r('app.string.chat_read_receipt_unread', this.viewModel.readReceiptDetail.readReceipt.unreadCount)) + .onAttach(() => { + if (this.viewModel.readReceiptDetail) { + this.viewModel.getMemberList(this.viewModel.readReceiptDetail.unreadAccountList, false) + } + + }) + + } + } + + } + .hideTitleBar(true) + .backgroundColor(Color.White) + .onReady((context: NavDestinationContext) => { + this.pathStack = context.pathStack + this.message = context.pathStack.getParamByName('ChatReadReceiptPage')[0] as V2NIMMessage + this.teamId = ChatKitClient.nim.conversationIdUtil.parseConversationTargetId(this.message.conversationId) + this.viewModel.init(this.message) + this.viewModel.getMessageReadReceipt() + }) + } +} + +@Builder +export function ChatReadReceiptPageBuilder() { + ChatReadReceiptPage() +} + diff --git a/chatkit_ui/src/main/ets/pages/ChatTeamPage.ets b/chatkit_ui/src/main/ets/pages/ChatTeamPage.ets new file mode 100644 index 0000000..00ea9d3 --- /dev/null +++ b/chatkit_ui/src/main/ets/pages/ChatTeamPage.ets @@ -0,0 +1,1432 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { ChatTeamInfo } from '../model/ChatTeamInfo'; +import { NIMMessageInfo } from '../model/NIMMessageInfo'; +import { MessageComponent } from '../view/MessageComponent'; +import { ChatTeamViewModel } from '../viewmodel/ChatTeamViewModel'; +import { AitEditorSpan, InputStyleType, NEChatInputView } from '../view/ChatInputView'; +import { NEChatEmojiView } from '../view/NEChatEmojiView'; +import { NEEmojiManager, NEEmojiParseResult, NIMEmoticonType } from '../manager/NEEmojiManager'; +import { NEChatMoreOperation } from '../view/ChatMoreOperationLayout'; +import { NEChatMoreOperationData, NEChatMoreOperationType } from '../model/NEChatMoreOperationData'; +import { NEAudioRecordView } from '../view/NEAudioRecordView'; +import { + DoubleAlertDialog, + ImagesIndexModel, + ImageViewDialog, + MediaUtils, + NavigationBackBuilder, + NECommonUtils, + NetworkBrokenBuilder, + PermissionsUtils, + VideoViewerDialog +} from '@nimkit/common'; +import { NECameraSelectView } from '../view/NECameraSelectView'; +import { common } from '@kit.AbilityKit'; +import { cameraPicker } from '@kit.CameraKit'; +import { LengthMetrics, window } from '@kit.ArkUI'; +import { NERectData } from '../model/NERectData'; +import { MessageOperationView } from '../view/MessageOperationView'; +import { MessageOperationItem, MessageOperationType } from '../model/MessageOperationItem'; +import { BusinessError, pasteboard } from '@kit.BasicServicesKit'; +import { DeviceUtils } from '../common/DeviceUtils'; +import { + V2NIMMessage, + V2NIMMessageAudioAttachment, + V2NIMMessageLocationAttachment, + V2NIMMessageSendingState, + V2NIMMessageType +} from '@nimsdk/base'; +import { ChatConst } from '../constants/ChatConst'; +import { + ChatKitClient, + ConversationRepo, + conversationSelectLimitCount, + ConversationSelectParam, + CustomMessageUtils, + ErrorUtils, + MergedMessageAttachment, + mergedMessageCustomType, + mergedMessageLimitCount, + mergedMessageMaxDepth, + singleMessageLimitCount, + TeamMemberCache, + TeamSettingParam +} from '@nimkit/chatkit'; +import { TeamExitDialogParam, TeamExitWarningDialog } from '../view/TeamExitWarningDialog'; +import { AudioPlayerManager } from '../manager/AudioPlayerManager'; +import { ConversationSelectModel } from '@nimkit/chatkit/src/main/ets/model/ConversationSelectModel'; +import { ForwardMessageDialog } from '../view/ForwardMessageDialog'; +import { photoAccessHelper } from '@kit.MediaLibraryKit'; +import { + downLoadAndOpenFile, + getAitNodes, + getMessageImageUrl, + getMessageImageUrls, + getMessageVideoRatio, + getMessageVideoUrl, + parseMessageText +} from '../common/MessageHelper'; +import { computeOperateViewHeight, computeOperateViewWidth, setupMoreOperationData } from '../common/ChatUtils'; +import { sceneMap } from '@kit.MapKit'; +import { ChatMultiSelectView } from '../view/ChatMultiSelectView'; +import { AitManager } from '../manager/ait/AitManager'; +import { ChatAitNode } from '../model/ChatAitNode'; +import { TextMessageDetailDialog } from '../view/TextMessageDetailDialog'; + +@ComponentV2 +export struct ChatTeamPage { + pathStack: NavPathStack = new NavPathStack() + @Local chatTeamInfo: ChatTeamInfo = new ChatTeamInfo(''); + chatViewModel: ChatTeamViewModel = new ChatTeamViewModel(); + // 底部扩展区域高度,默认为0 + @Local expandHeight: number = 0; + @Local inputStyle: InputStyleType = InputStyleType.None; + operationMoreDataList: Array = Array(); + @Local showMultiSelect: boolean = false; + @Local multiSelectCount: number = 0; + @Local hideInput: boolean = false; + @Local scrollHeight: number = 0; + @Local showOperationView: boolean = false; + conversationId: string = ''; + // 长按操作弹窗的边距值 + operationViewMargin: number = 12; + defaultInputViewHeight: number = 0; + // 长按操作选中的消息 + @Local operationMsg: NIMMessageInfo | undefined = undefined; + @Local replyMsg: NIMMessageInfo | undefined = undefined; + textMessageDetailDialog: CustomDialogController | undefined = undefined; + operationRect: NERectData = new NERectData(); + screenHeight: number = 0; + screenWidth: number = 0; + keyboardHeight: number = 0 + //导航栏高度,用于计算弹窗位置 + navBarHeight: number = 80; + // 底部输入框以及固定按钮操作栏高度 + @Local bottomHeight: number = 105; + bottomMargin: number = 100; + bottomWithReplyHeight: number = 135; + controller: RichEditorController = new RichEditorController() + //@所在的span + builderSpans: AitEditorSpan[] = []; + // 接受消息标记 + msgSize: number = 0; + // 列表滚动位置 + listScrollStartPosition: number = 0; + listScrollEndPosition: number = 0; + //首次加载数据滚动到底部 + firstLoadData: boolean = true; + listScroller: Scroller = new Scroller(); + toScroll: boolean = false + selectVideoView: CustomDialogController = new CustomDialogController({ + builder: NECameraSelectView({ + onTakePhotoFromCamera: () => { + const context: common.UIAbilityContext = getContext(this) as common.UIAbilityContext; + MediaUtils.showCameraPicker(context, cameraPicker.PickerMediaType.PHOTO).then((result) => { + if (result.uri) { + if (result.type === photoAccessHelper.PhotoType.IMAGE) { + this.chatViewModel.sendImageMessage(result.uri) + } else if (result.type === photoAccessHelper.PhotoType.VIDEO) { + this.chatViewModel.sendVideoMessage(result.uri, result.duration, result.width, result.height) + } + } + }); + }, + onTakeVideoFromCamera: () => { + const context: common.UIAbilityContext = getContext(this) as common.UIAbilityContext; + MediaUtils.showCameraPicker(context, cameraPicker.PickerMediaType.VIDEO).then(async (result) => { + if (result.uri) { + if (result.type === photoAccessHelper.PhotoType.IMAGE) { + this.chatViewModel.sendImageMessage(result.uri) + } else if (result.type === photoAccessHelper.PhotoType.VIDEO) { + this.chatViewModel.sendVideoMessage(result.uri, result.duration, result.width, result.height) + } + } + }); + } + }), + cornerRadius: 0, + alignment: DialogAlignment.Bottom, + backgroundColor: Color.Transparent, + backgroundBlurStyle: BlurStyle.NONE, + height: 140, + }) + @Local imagesIndexModel?: ImagesIndexModel + @Local currentImageIndex: number = 0 + imageViewerDialog: CustomDialogController = new CustomDialogController({ + builder: ImageViewDialog({ + imagesIndexModel: this.imagesIndexModel + }), + cornerRadius: 0, + alignment: DialogAlignment.Center, + backgroundColor: Color.Black, + backgroundBlurStyle: BlurStyle.NONE, + height: '100%', + width: '100%', + customStyle: true, + }) + @Local videoFileUrl?: string + @Local videoRatio?: number + videoViewerDialog: CustomDialogController = new CustomDialogController({ + builder: VideoViewerDialog({ + videoUrl: this.videoFileUrl, + videoRatio: this.videoRatio + }), + cornerRadius: 0, + alignment: DialogAlignment.Center, + backgroundColor: Color.Black, + backgroundBlurStyle: BlurStyle.NONE, + height: '100%', + width: '100%', + customStyle: true + }) + forwardMessages: V2NIMMessage[] = [] + forwardConversations: ConversationSelectModel[] = [] + currentConversationName?: string + forwardType?: ResourceStr = $r('app.string.chat_operation_forward') + forwardMessageDialog = new CustomDialogController({ + builder: ForwardMessageDialog({ + conversationList: this.forwardConversations, + currentConversationName: this.currentConversationName, + forwardType: this.forwardType, + sendForwardMsg: (text: string | undefined) => { + if (ErrorUtils.checkNetworkAndToast()) { + this.chatViewModel.forwardMessage(this.forwardMessages, this.forwardConversations, text) + this.showMultiSelect = false + } + } + }), + cornerRadius: 14, + backgroundColor: Color.White, + height: 250, + width: 276, + }) + invalidForwardDialogSureAction?: () => void + invalidForwardFailureDialog?: CustomDialogController = new CustomDialogController({ + builder: DoubleAlertDialog({ + title: $r('app.string.exception_description'), + message: $r("app.string.multiForward_exist_invalid_fail"), + sureAction: this.invalidForwardDialogSureAction + }), + cornerRadius: 14, + backgroundColor: Color.White, + height: 140, + width: 270, + }) + invalidForwardDepthDialog?: CustomDialogController = new CustomDialogController({ + builder: DoubleAlertDialog({ + title: $r('app.string.exception_description'), + message: $r('app.string.multiForward_exist_invalid_depth'), + sureAction: this.invalidForwardDialogSureAction + }), + cornerRadius: 14, + backgroundColor: Color.White, + height: 140, + width: 270, + }) + aitManager: AitManager = new AitManager() + forwardMessageAction = (selectedList: ConversationSelectModel[]) => { + if (this.operationMsg?.message) { + this.forwardMessages = [this.operationMsg.message] + this.forwardConversations = selectedList + this.currentConversationName = this.chatTeamInfo.team?.name + this.forwardMessageDialog.open() + } + } + + @Monitor("chatTeamInfo.isReceiveMsg") + onReceiveMsg() { + if (this.firstLoadData || this.chatTeamInfo.isReceiveMsg) { + this.listScroller.scrollEdge(Edge.Bottom) + this.chatTeamInfo.setReceiveMsg(false) + this.firstLoadData = false; + } + } + + @Monitor("chatViewModel.needScrollToBottom") + onNeedScrollToBottom() { + if (this.chatViewModel.needScrollToBottom && + this.listScrollEndPosition >= this.chatTeamInfo.msgList.totalCount() - 2) { + this.listScroller.scrollEdge(Edge.Bottom) + this.chatViewModel.needScrollToBottom = false; + } + } + + @Monitor("chatTeamInfo.team") + onGetTeamInfo() { + let team = this.chatTeamInfo.team + if (team && !team.isValidTeam) { + TeamExitWarningDialog.show(this.getUIContext(), new TeamExitDialogParam( + () => { + ConversationRepo.deleteConversation(this.conversationId, true) + TeamExitWarningDialog.close(this.getUIContext()) + this.pathStack.clear() + } + )) + } + } + + @Monitor("chatTeamInfo.scrollIndex") + onScrollIndex() { + if (this.chatTeamInfo.scrollIndex > -1) { + let height = DeviceUtils.windowPXHeight / 2 + this.toScroll = true + this.listScroller.scrollToIndex(this.chatTeamInfo.scrollIndex, false, undefined, { + 'extraOffset': new LengthMetrics(-height, 0) + }) + this.chatViewModel.setAnchorMessage(undefined) + this.chatTeamInfo.setScrollIndex(-1) + } + } + + @Monitor("chatViewModel.anchorMsg") + onAnchorMsg() { + if (this.chatViewModel.anchorMsg) { + if (this.chatTeamInfo.msgMap.has(this.chatViewModel.anchorMsg.getMessageClientId())) { + let position = this.chatTeamInfo.searchPosition(this.chatViewModel.anchorMsg.getMessageClientId()) + this.toScroll = true + this.listScroller.scrollToIndex(position) + this.chatViewModel.setAnchorMessage(undefined) + } else { + this.chatViewModel.loadAnchorMsg(this.chatViewModel.anchorMsg) + } + } + } + + @Monitor("chatViewModel.isMuteModel") + onMuteModel() { + if (this.chatViewModel.isMuteModel) { + this.clearInput(true) + } + } + + @Monitor("chatViewModel.selectMsgCount") + onSelectMsg() { + this.multiSelectCount = this.chatViewModel.getSelectMessageSize() + } + + @Monitor("expandHeight") + onExpandInputView() { + if (this.expandHeight > 10) { + // 如果是定位消息状态,收到键盘展开重新切换最新消息 + if (this.chatViewModel.hasNew) { + this.chatViewModel.reloadMessageList() + } else { + this.listScroller.scrollEdge(Edge.Bottom) + } + } + + } + + aboutToAppear(): void { + NEEmojiManager.instance.setup() + DeviceUtils.rootDirPath = getContext(this).filesDir + this.operationMoreDataList = setupMoreOperationData() + window.getLastWindow(getContext(this)).then(currentWindow => { + let property = currentWindow.getWindowProperties(); + // 初始化窗口高度 + let avoidArea = currentWindow.getWindowAvoidArea(window.AvoidAreaType.TYPE_KEYBOARD); + this.screenHeight = px2vp(property.windowRect.height); + this.screenWidth = px2vp(property.windowRect.width); + DeviceUtils.windowPXWidth = property.windowRect.width; + DeviceUtils.windowPXHeight = property.windowRect.height; + this.scrollHeight = + px2vp(property.windowRect.height - avoidArea.bottomRect.height) - this.bottomHeight; + this.defaultInputViewHeight = this.scrollHeight; + // 监听软键盘的隐藏和显示 + currentWindow.on('avoidAreaChange', data => { + if (data.type == window.AvoidAreaType.TYPE_KEYBOARD) { + this.showOperationView = false + this.keyboardHeight = px2vp(data.area.bottomRect.height); + // 如果是定位消息状态,收到键盘展开重新切换最新消息 + if (this.keyboardHeight > 10 && this.chatViewModel.hasNew) { + this.chatViewModel.reloadMessageList() + } + this.computeScrollHeight() + return; + } + }) + }) + } + + computeScrollHeight() { + if ((this.inputStyle === InputStyleType.Emoji || this.inputStyle === InputStyleType.Record || + this.inputStyle === InputStyleType.More) && this.keyboardHeight <= 0) { + this.scrollHeight = this.screenHeight - this.keyboardHeight - this.bottomHeight - this.expandHeight + } else { + this.scrollHeight = this.screenHeight - this.keyboardHeight - this.bottomHeight + if (this.keyboardHeight > 10) { + this.expandHeight = 0 + this.inputStyle = InputStyleType.None; + this.listScroller.scrollEdge(Edge.Bottom) + } + } + } + + /** + * 是否是@的span + * @param span + * @returns + */ + isAitEditorSpan(span: RichEditorImageSpanResult | RichEditorTextSpanResult): boolean { + return !(span as RichEditorTextSpanResult).value && + !(span as RichEditorImageSpanResult).valueResourceStr?.toString().replaceAll(' ', ''); + } + + /** + * 获取输入数据 + * @returns + */ + getMessageText(): string { + let text = ''; + let builderSpanIndex = 0; + if (this.controller) { + this.controller.getSpans().forEach((span) => { + const textSpan = span as RichEditorTextSpanResult; + const imageSpan = span as RichEditorImageSpanResult; + if (textSpan.value) { + text += textSpan.value; + } else if (this.isAitEditorSpan(span) && builderSpanIndex < this.builderSpans.length) { + let aitSpan: AitEditorSpan = this.builderSpans[builderSpanIndex] + let contentText = aitSpan.value + this.aitManager.addAitWithText(aitSpan.accountId, contentText, text.length) + text += contentText + builderSpanIndex += 1; + } else { + let resourcePath = imageSpan.valueResourceStr; + if (resourcePath != null && resourcePath.toString().length > 0) { + let path = resourcePath.toString(); + let splits = path.split("/") + let fileName = splits[splits.length - 1]; + let emoji = NEEmojiManager.instance.getEmojiByName(String(fileName)); + if (emoji?.tag != null) { + text += emoji.tag; + } + } + } + }); + } + + return text + } + + getInputContentLength(): number { + let length = 0 + this.controller.getSpans().forEach((item) => { + if (typeof (item as RichEditorImageSpanResult)['imageStyle'] != 'undefined') { + let span = item as RichEditorImageSpanResult; + if (span.spanPosition.spanRange) { + let end = span.spanPosition.spanRange[1]; + if (end > length) { + length = end; + } + } + } else { + let span = item as RichEditorTextSpanResult + if (span.spanPosition.spanRange) { + let end = span.spanPosition.spanRange[1]; + if (end > length) { + length = end; + } + } + } + }) + return length + } + + async requestChatData() { + this.chatTeamInfo.setConversationId(this.conversationId) + this.chatViewModel.init(this.conversationId as string, this.chatTeamInfo); + this.chatViewModel.loadData() + this.chatViewModel.setTeamExitListener(() => { + TeamExitWarningDialog.show(this.getUIContext(), new TeamExitDialogParam( + () => { + this.pathStack.clear() + TeamExitWarningDialog.close(this.getUIContext()) + } + )) + }) + } + + async showImageDetail(msg?: NIMMessageInfo, onlyMsg?: boolean) { + try { + const imageModel = + onlyMsg ? await getMessageImageUrl(msg, this.chatTeamInfo) : await getMessageImageUrls(msg, this.chatTeamInfo) + this.imagesIndexModel = imageModel + this.imageViewerDialog.open() + } catch (err) { + console.error(err) + } + } + + showVideoDetail(msg: NIMMessageInfo) { + AudioPlayerManager.instance.stopPlayAll() + this.videoFileUrl = getMessageVideoUrl(msg, this.chatTeamInfo) + if (this.videoFileUrl == undefined) { + NECommonUtils.showToast($r('app.string.chat_msg_download_tips')) + return + } + this.videoRatio = getMessageVideoRatio(msg) + if (this.videoFileUrl) { + this.videoViewerDialog.open() + } + } + + @Builder + AtSpan(nickname: string) { + Text(nickname) + .fontColor('#FF337EFF'); + } + + /** + * 通过ID来添加@成员 + * @param senderId + */ + async addAitUserById(senderId: string) { + //输入框添加@信息 + let sendMember = await TeamMemberCache.getInstance().getMemberById(senderId) + if (sendMember && this.controller) { + const controller = this.controller; + let aitValue = '@' + sendMember.getAitName() + ' ' + const offset = controller.getCaretOffset() + controller.addBuilderSpan(() => this.AtSpan(aitValue), { + offset: offset + }); + let aitSpan: AitEditorSpan = { + spanIndex: offset, + accountId: senderId, + value: aitValue, + } + this.builderSpans.push(...[aitSpan]) + } + } + + showLocationDetail(msg: NIMMessageInfo) { + let attachment = msg.message.attachment as V2NIMMessageLocationAttachment + + let queryLocationOptions: sceneMap.LocationQueryOptions = { + location: { + latitude: attachment.latitude, + longitude: attachment.longitude + }, + name: attachment.address, + address: attachment.address, + }; + // 拉起地点详情页 + sceneMap.queryLocation(getContext(this) as common.UIAbilityContext, queryLocationOptions).then(() => { + console.info("netease QueryLocation", "Succeeded in querying location."); + }).catch((err: BusinessError) => { + console.error("netease QueryLocation", `Failed to query Location, code: ${err.code}, message: ${err.message}`); + }); + } + + @Builder + build() { + NavDestination() { + NavigationBackBuilder({ + title: this.chatTeamInfo.conversationName, + leftButtonAction: () => { + this.pathStack.pop() + }, + rightButtonIcon: this.showMultiSelect ? undefined : $r('app.media.ic_public_more_dot'), + rightButtonTitle: this.showMultiSelect ? $r('app.string.chat_msg_dialog_cancel') : undefined, + + rightButtonAction: () => { + this.goToTeamSettingPage(this.pathStack) + } + }) + + RelativeContainer() { + List({ scroller: this.listScroller }) { + LazyForEach(this.chatTeamInfo.msgList, (msg: NIMMessageInfo) => { + ListItem() { + MessageComponent({ + message: msg, + chatInfo: this.chatTeamInfo, + showSelect: this.showMultiSelect, + onMessageClick: { + onAvatarClick: (msg: NIMMessageInfo | undefined) => { + if (this.showMultiSelect) { + return + } + if (msg != null) { + if (msg?.message.senderId == ChatKitClient.getLoginUserId()) { + this.pathStack.pushPath({ + name: 'MineInfoPage' + }) + } else { + this.pathStack.pushPath({ name: 'PersonInfoPage', param: msg?.message.senderId }) + } + } + }, + onAvatarLongPress: (msg: NIMMessageInfo | undefined) => { + if (this.showMultiSelect) { + return + } + if (msg != null) { + if (msg?.message.senderId && msg?.message.senderId !== ChatKitClient.getLoginUserId()) { + this.addAitUserById(msg.message.senderId) + } + } + }, + onItemLongClick: (event: GestureEvent, msg: NIMMessageInfo | undefined) => { + if (this.showMultiSelect) { + return + } + this.operationMsg = msg + let opMenuWidth = computeOperateViewWidth(msg) + let opMenuHeight = computeOperateViewHeight(msg) + let marginSize = this.operationViewMargin + if (event.target.area.position.x !== undefined) { + let xPoint = Number(event.target.area.globalPosition.x) + + (Number(event.target.area.width) - opMenuWidth) / 2 + if (xPoint < marginSize) { + xPoint = marginSize + } + if (xPoint + opMenuWidth + marginSize > this.screenWidth) { + xPoint = this.screenWidth - opMenuWidth - marginSize + } + this.operationRect.x = xPoint; + } + if (event.target.area.position.y !== undefined) { + let yPoint = + Number(event.target.area.globalPosition.y) - this.navBarHeight + + Number(event.target.area.height) + if (yPoint + opMenuHeight + marginSize + this.bottomHeight > this.scrollHeight) { + yPoint = + yPoint - opMenuHeight - marginSize * 2 - Number(event.target.area.height); + } + if (yPoint < 0) { + yPoint = this.scrollHeight / 2; + + } + this.operationRect.y = yPoint + } + this.showOperationView = true + }, + onItemClick: (event: ClickEvent, msg: NIMMessageInfo | undefined) => { + if (this.showMultiSelect) { + if (msg && !msg.isRevokeMsg) { + if (!msg?.isSelectedMsg) { + this.chatViewModel.addSelectMessage(msg) + } else { + this.chatViewModel.removeSelectMessage(msg) + } + } + return + } + this.showMessageDetail(msg) + }, + onRevokeEditClick: (_event: ClickEvent, msg: NIMMessageInfo | undefined) => { + if (msg?.checkRevokeEdit()) { + const controller = this.controller + if (msg.isReplyMsg && msg.replyMsg) { + this.controller.deleteSpans() + this.loadReplyInfo(msg.replyMsg, false) + } else { + this.clearInput(true) + } + this.builderSpans.splice(0, this.builderSpans.length) + parseMessageText(msg.revokeInfo?.revokeMsgText)?.forEach((item: NEEmojiParseResult) => { + let spanIndex = 0 + if (item.text) { + getAitNodes(item.startIndex, item.text, msg.message.serverExtension) + .forEach((node: ChatAitNode) => { + if (node.segment) { + controller.addBuilderSpan(() => this.AtSpan(node.text)); + let aitSpan: AitEditorSpan = { + spanIndex: spanIndex, + accountId: node.account ?? '', + value: node.text, + } + this.builderSpans.push(...[aitSpan]) + spanIndex++ + } else { + controller.addTextSpan(node.text) + spanIndex = spanIndex + node.text.length + } + }) + } else if (item.emoji) { + controller.addImageSpan($rawfile(`emoji/${item.emoji.file}`), + { + imageStyle: { size: [16, 16] } + }) + spanIndex++ + } + }) + + } else if (msg?.revokeInfo !== undefined) { + NECommonUtils.showToast($r('app.string.chat_revoke_edit_error_tips')) + } + }, + onReadReceiptClick: (_event: ClickEvent, msg: NIMMessageInfo | undefined) => { + if (ErrorUtils.checkNetworkAndToast()) { + this.pathStack.pushPath({ name: 'ChatReadReceiptPage', param: msg?.message }) + } + }, + onMultiSelect: (select: boolean, msg: NIMMessageInfo | undefined) => { + if (msg) { + if (select) { + this.chatViewModel.addSelectMessage(msg) + } else { + this.chatViewModel.removeSelectMessage(msg) + } + this.operationMsg = undefined + } + }, + onReplyClick: (event: ClickEvent, msg: NIMMessageInfo | undefined) => { + if (msg) { + if (this.chatTeamInfo.msgMap.has(msg.getMessageClientId())) { + let index = this.chatTeamInfo.searchPosition(msg.getMessageClientId()) + this.listScroller.scrollToIndex(index) + } else { + this.showMessageDetail(msg, true) + } + } + }, + onSendFailClick: (_event: ClickEvent, msg: NIMMessageInfo | undefined) => { + if (this.showMultiSelect) { + return + } + if (msg) { + this.chatViewModel.resendMessage(msg) + } + }, + } + }) + } + }, (item: NIMMessageInfo, index: number) => { + try { + return item.message.messageClientId + }catch (e) { + return index.toString() + } + }) + } + .id("chatPageListView") + .cachedCount(20) + .padding({ bottom: 10 }) + .maintainVisibleContentPosition(true) + .onScrollIndex((start: number, end: number) => { + if (!this.toScroll) { + if (start >= 0 && start < 3 + && this.listScrollStartPosition > start && this.chatViewModel.canLoadMore()) { + this.chatViewModel.getMoreMessageList() + } else if (this.listScrollEndPosition < end && this.chatViewModel.canLoadNext(end)) { + this.chatViewModel.getNewMessageList() + } + } + this.listScrollEndPosition = end; + this.listScrollStartPosition = start; + }) + .onScrollStop(() => { + console.debug('netease to scroll stop:', this.toScroll) + if (this.toScroll) { + this.toScroll = false + } + }) + .alignRules({ + left: { anchor: "__container__", align: HorizontalAlign.Start }, + right: { anchor: "__container__", align: HorizontalAlign.End }, + top: { anchor: "__container__", align: VerticalAlign.Top }, + }) + .height(this.scrollHeight - this.bottomMargin) + .onScrollStart(() => { + this.showOperationView = false + }) + .onTouch((event) => { + if (event.type == TouchType.Down) { + this.showOperationView = false + this.getUIContext().getFocusController().clearFocus(); + this.scrollHeight = this.defaultInputViewHeight; + this.expandHeight = 0; + this.inputStyle = InputStyleType.None + } + }) + + if (this.chatViewModel.networkBroken) { + NetworkBrokenBuilder() + } + + Column() + .height(this.bottomHeight) + .backgroundColor(Color.Transparent) + .backgroundColor($r('app.color.chat_input_background')) + .id("chat_input") + .alignRules({ + left: { anchor: "__container__", align: HorizontalAlign.Start }, + right: { anchor: "__container__", align: HorizontalAlign.End }, + top: { anchor: "chatPageListView", align: VerticalAlign.Bottom }, + }) + + if (this.hideInput === false && !this.showMultiSelect) { + NEChatInputView({ + aitManager: this.aitManager, + controller: this.controller, + builderSpans: this.builderSpans, + placeHolder: (this.chatTeamInfo.conversationName ?? '').length > 15 ? + this.chatTeamInfo.conversationName?.substring(0, 15) + '...' : this.chatTeamInfo.conversationName, + replyMsg: this.replyMsg, + chatInfo: this.chatTeamInfo, + onDidClickCloseReply: () => { + this.clearInput(false) + }, + onDidClickImage: () => { + this.showOperationView = false + MediaUtils.showImageVideoPicker().then((result) => { + if (result.errorMsg == null && result.uri) { + if (result.type === photoAccessHelper.PhotoType.IMAGE) { + this.chatViewModel.sendImageMessage(result.uri); + } else if (result.type === photoAccessHelper.PhotoType.VIDEO) { + this.chatViewModel.sendVideoMessage(result.uri, result.duration, result.width, result.height); + } + } + }) + }, + onDidClickAudio: () => { + let context = getContext(this) as common.UIAbilityContext + this.showOperationView = false + this.getUIContext().getFocusController().clearFocus() + PermissionsUtils.reqPermissionsFromUser(['ohos.permission.MICROPHONE'], context).then((result) => { + if (result.grantStatus == true) { + if (this.inputStyle == InputStyleType.Record) { + this.expandHeight = 0 + this.inputStyle = InputStyleType.None; + this.scrollHeight = this.screenHeight - this.expandHeight - this.bottomHeight + } else { + this.inputStyle = InputStyleType.Record + this.expandHeight = ChatConst.messageInputAreaHeight + this.scrollHeight = this.screenHeight - this.expandHeight - this.bottomHeight + } + + } else { + NECommonUtils.showToast($r('app.string.chat_permission_deny_tips')) + } + }) + + }, + onDidClickEmoji: () => { + this.showOperationView = false + if (this.inputStyle == InputStyleType.Emoji) { + this.expandHeight = 0 + this.inputStyle = InputStyleType.None; + this.scrollHeight = this.screenHeight - this.expandHeight - this.bottomHeight + } else { + this.inputStyle = InputStyleType.Emoji + this.expandHeight = ChatConst.messageInputAreaHeight + this.scrollHeight = this.screenHeight - this.expandHeight - this.bottomHeight + } + }, + onDidClickMore: () => { + this.showOperationView = false + if (this.inputStyle == InputStyleType.More) { + this.expandHeight = 0 + this.inputStyle = InputStyleType.None; + this.scrollHeight = this.screenHeight - this.expandHeight - this.bottomHeight + } else { + this.inputStyle = InputStyleType.More + this.expandHeight = ChatConst.messageInputAreaHeight + this.scrollHeight = this.screenHeight - this.expandHeight - this.bottomHeight + } + }, + onSendTextMessage: () => { + const text = this.getMessageText() + let textSend = text.trimEnd() + this.showOperationView = false + if (textSend.length <= 0) { + NECommonUtils.showToast($r('app.string.null_message_not_support')) + return + } + if (text.length - textSend.length <= 1) { + textSend = text + } + this.chatViewModel.sendTextMessage(textSend, this.replyMsg, this.aitManager.aitModel, + this.aitManager.getPushList()) + this.clearInput(true) + this.aitManager.cleanAit() + this.builderSpans.splice(0, this.builderSpans.length) + }, + inputStyle: this.inputStyle, + mute: this.chatViewModel.isMuteModel, + teamId: this.chatTeamInfo.team?.teamId, + team: this.chatTeamInfo.team + }).alignRules({ + left: { anchor: "chat_input", align: HorizontalAlign.Start }, + right: { anchor: "chat_input", align: HorizontalAlign.End }, + bottom: { anchor: "chat_input", align: VerticalAlign.Bottom }, + top: { anchor: "chat_input", align: VerticalAlign.Top }, + }).backgroundColor(this.chatViewModel.isMuteModel ? '#ffE9EFF5' : $r('app.color.chat_input_background')) + } else if (this.showMultiSelect) { + ChatMultiSelectView({ + isEnable: this.multiSelectCount > 0, + onMultiForward: () => { + if (ChatKitClient.connectBroken()) { + NECommonUtils.showToast($r('app.string.chat_network_error_tips')) + } else { + this.multiForwardMessage() + } + }, + onSingleForward: () => { + if (ChatKitClient.connectBroken()) { + NECommonUtils.showToast($r('app.string.chat_network_error_tips')) + } else { + this.singleForwardMessage() + } + }, + onMultiDelete: () => { + let selectMsg = this.chatViewModel.getSelectMessageList() + if (selectMsg.length > ChatConst.messageDeleteLimit) { + NECommonUtils.showToast($r('app.string.chat_multi_delete_limit_tips', ChatConst.messageDeleteLimit)) + } else { + this.showDialogToDelete(selectMsg) + } + }, + }).width('100%').height(this.bottomHeight) + .alignRules({ + left: { anchor: "chat_input", align: HorizontalAlign.Start }, + right: { anchor: "chat_input", align: HorizontalAlign.End }, + bottom: { anchor: "chat_input", align: VerticalAlign.Bottom }, + top: { anchor: "chat_input", align: VerticalAlign.Top }, + }).backgroundColor($r('app.color.chat_input_background')) + } + + Column() { + if (this.inputStyle === InputStyleType.Record) { + NEAudioRecordView({ + onRecordAudio: (filepath, duration) => { + console.log("net ease record audio " + filepath); + this.chatViewModel.sendAudioMessage(filepath, duration) + + }, + onRecordStart: () => { + this.hideInput = true + }, + onRecordEnd: () => { + this.hideInput = false + } + }) + .width('100%') + .height(150) + .alignRules({ + left: { anchor: "__container__", align: HorizontalAlign.Start }, + right: { anchor: "__container__", align: HorizontalAlign.End }, + top: { anchor: "__container__", align: VerticalAlign.Top }, + }) + } else if (this.inputStyle === InputStyleType.More) { + NEChatMoreOperation({ + dataList: this.operationMoreDataList, onDidClick: (data) => { + let context = getContext(this) as common.UIAbilityContext; + if (data.type == NEChatMoreOperationType.Video) { + PermissionsUtils.reqPermissionsFromUser(['ohos.permission.CAMERA'], context).then((result) => { + if (result.grantStatus == true) { + this.selectVideoView.open() + } else { + NECommonUtils.showToast($r('app.string.chat_permission_deny_tips')) + } + }) + } else if (data.type == NEChatMoreOperationType.File) { + console.log("net ease click file") + MediaUtils.showFilePicker().then((result) => { + if (result.errorMsg == null && result.uri) { + this.chatViewModel.sendFileMessage(result.uri); + } + }) + } else if (data.type == NEChatMoreOperationType.Location) { + PermissionsUtils.reqPermissionsFromUser(['ohos.permission.LOCATION', + 'ohos.permission.APPROXIMATELY_LOCATION'], context).then((result) => { + if (result.grantStatus == true) { + let locationChoosingOptions: sceneMap.LocationChoosingOptions = { + // 展示搜索控件 + searchEnabled: true, + // 展示附近Poi + showNearbyPoi: true + }; + // 拉起地点选取页 + sceneMap.chooseLocation(getContext(this) as common.UIAbilityContext, locationChoosingOptions) + .then((data) => { + this.chatViewModel.sendLocationMessage(data) + console.info("ChooseLocation", "Succeeded in choosing location."); + }) + .catch((err: BusinessError) => { + console.error("ChooseLocation", + `Failed to choose location, code: ${err.code}, message: ${err.message}`); + // NECommonUtils.showToast(`code: ${err.code}, message: ${err.message}`) + }); + } else { + NECommonUtils.showToast($r('app.string.chat_permission_deny_tips')) + } + }) + } + + } + }).padding({ top: 10 }) + .width('100%') + .height(150) + .alignRules({ + left: { anchor: "__container__", align: HorizontalAlign.Start }, + right: { anchor: "__container__", align: HorizontalAlign.End }, + top: { anchor: "__container__", align: VerticalAlign.Top }, + }) + } else if (this.inputStyle === InputStyleType.Emoji) { + NEChatEmojiView({ + onDidClick: (emoji) => { + console.log("net ease click emoji", emoji); + if (emoji.type === NIMEmoticonType.file) { + this.controller.addImageSpan($rawfile(`emoji/${emoji.file}`), + { + offset: this.controller.getCaretOffset(), + imageStyle: { size: [16, 16] } + }) + } else if (emoji.type === NIMEmoticonType.delete) { + if (this.controller) { + let index = this.controller.getCaretOffset() + if (index > 0) { + this.controller.deleteSpans({ + start: index - 1, + end: index + }) + } + } + } + }, + onEmojiSendMessage: () => { + const text = this.getMessageText() + let textSend = text.trimEnd() + if (textSend.length <= 0) { + NECommonUtils.showToast($r('app.string.null_message_not_support')) + return + } + if (text.length - textSend.length <= 1) { + textSend = text + } + this.chatViewModel.sendTextMessage(textSend, this.replyMsg, this.aitManager.aitModel, + this.aitManager.getPushList()) + this.clearInput(true) + this.aitManager.cleanAit() + this.builderSpans.splice(0, this.builderSpans.length) + } + }).padding({ top: 0 }) + .width('100%') + .height(170) + .alignRules({ + left: { anchor: "__container__", align: HorizontalAlign.Start }, + right: { anchor: "__container__", align: HorizontalAlign.End }, + top: { anchor: "__container__", align: VerticalAlign.Top } + }) + } + } + .height(this.expandHeight) + .width('100%') + .alignRules({ + left: { anchor: "__container__", align: HorizontalAlign.Start }, + right: { anchor: "__container__", align: HorizontalAlign.End }, + top: { anchor: "chat_input", align: VerticalAlign.Bottom }, + }) + .id("input_expand_back_container") + .backgroundColor($r('app.color.chat_input_background')) + + if (this.showOperationView) { + MessageOperationView({ + operateMsg: this.operationMsg, + didClickItem: (item: MessageOperationItem) => { + console.log('net ease click operation item event') + this.showOperationView = false + if (this.operationMsg == undefined) { + return; + } + + if (item.operationType == MessageOperationType.Copy) { + const pasteboardData = + pasteboard.createData(pasteboard.MIMETYPE_TEXT_PLAIN, this.operationMsg.message.text) + pasteboard.getSystemPasteboard().setDataSync(pasteboardData) + NECommonUtils.showToast($r('app.string.chat_message_copy_success_tips')) + } else if (item.operationType == MessageOperationType.Delete) { + this.showDialogToDelete([this.operationMsg]) + } else if (item.operationType == MessageOperationType.Undo) { + this.showDialogToRevoke(this.operationMsg) + } else if (item.operationType == MessageOperationType.Forward) { + // 转发 + this.forwardMessageAction = (selectedList: ConversationSelectModel[]) => { + if (this.operationMsg?.message) { + this.forwardMessages = [this.operationMsg.message] + this.forwardConversations = selectedList + this.currentConversationName = this.chatTeamInfo.team?.name + this.forwardMessageDialog.open() + } + } + this.forwardType = $r('app.string.chat_operation_forward') + this.pathStack.pushPath({ + name: 'ConversationSelectPage', + param: new ConversationSelectParam([], conversationSelectLimitCount, this.forwardMessageAction) + }) + } else if (item.operationType == MessageOperationType.Collection) { + // 收藏 + this.chatViewModel.collectionMessage(this.operationMsg) + } else if (item.operationType == MessageOperationType.Pin) { + this.chatViewModel.pinMessage(this.operationMsg) + } else if (item.operationType == MessageOperationType.Unpin) { + this.chatViewModel.unpinMessage(this.operationMsg) + } else if (item.operationType == MessageOperationType.Select) { + this.chatViewModel.clearSelectMessage() + this.chatViewModel.addSelectMessage(this.operationMsg) + this.showMultiSelect = true + } else if (item.operationType == MessageOperationType.Reply) { + this.loadReplyInfo(this.operationMsg, true) + } + } + }) + .position({ x: this.operationRect.x, y: this.operationRect.y }) + .borderRadius(8) + .shadow(ShadowStyle.OUTER_DEFAULT_MD) + + } + }.margin({ bottom: this.bottomMargin }) + .expandSafeArea([SafeAreaType.KEYBOARD]) + .zIndex(1) + } + .hideTitleBar(true) + .onReady((context: NavDestinationContext) => { + this.pathStack = context.pathStack + let param = this.pathStack.getParamByName("ChatTeamPage") as string[]; + if (param.length > 0) { + this.conversationId = param[0]; + this.requestChatData(); + } else { + this.pathStack.removeByName("ChatTeamPage") + } + }) + .onHidden(() => { + AudioPlayerManager.instance.stopPlayAll() + }) + } + + clearInput(clearInput?: boolean) { + if (clearInput) { + this.controller.deleteSpans() + } + this.replyMsg = undefined + this.bottomHeight = 105 + this.computeScrollHeight() + } + + loadReplyInfo(msg: NIMMessageInfo, needAit: boolean) { + this.bottomHeight = 135 + this.replyMsg = msg + if (needAit && this.replyMsg.message.senderId !== ChatKitClient.getLoginUserId()) { + this.addAitUserById(this.replyMsg.message.senderId) + } + this.getUIContext().getFocusController().requestFocus("chat_edit_input") + } + + /** + * 【逐条转发】将多个消息逐条转发到多个会话中,并将留言发送到多个会话中 + */ + singleForwardMessage() { + // 校验网络 + if (ErrorUtils.checkNetworkAndToast()) { + this.forwardType = $r('app.string.chat_operation_single_forward') + // 校验转发条数 + if (this.chatViewModel.selectMsgMap.size > singleMessageLimitCount) { + let resourceManager = getContext(this).resourceManager + NECommonUtils.showToast($r("app.string.chat_forward_limit", resourceManager.getStringSync(this.forwardType.id), + singleMessageLimitCount)) + return + } + + // 不可合并转发的消息列表 + let invalidMessages: NIMMessageInfo[] = [] + for (const message of this.chatViewModel.selectMsgMap.values()) { + // 发送失败的消息不可转发 + // 语音消息不可转发 + // 话单消息不可转发 + if (message.message.sendingState === V2NIMMessageSendingState.V2NIM_MESSAGE_SENDING_STATE_FAILED || + message.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_AUDIO || + message.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_CALL) { + invalidMessages.push(message) + continue + } + } + + this.forwardMessageAction = async (selectedList: ConversationSelectModel[]) => { + let selectMessage = this.chatViewModel.getSelectMessageList().map(msg => msg.message) + selectMessage = selectMessage.sort((m1, m2) => { + if (m1.createTime < m2.createTime) { + return -1 + } + if (m1.createTime > m2.createTime) { + return 1 + } + return 0 + }) + this.forwardMessages = selectMessage + this.forwardConversations = selectedList + this.currentConversationName = this.chatTeamInfo.team?.name + this.forwardMessageDialog.open() + } + + // 存在不可转发的消息:提示 + 取消勾选 + if (invalidMessages.length > 0) { + this.invalidForwardFailureDialog?.open() + this.invalidForwardDialogSureAction = () => { + for (const invalidMessage of invalidMessages) { + this.chatViewModel.removeSelectMessage(invalidMessage) + invalidMessage.isSelectedMsg = false + } + if (this.chatViewModel.getSelectMessageSize() > 0) { + this.pathStack.pushPath({ + name: 'ConversationSelectPage', + param: new ConversationSelectParam([], conversationSelectLimitCount, this.forwardMessageAction) + }) + } + } + } else { + if (this.chatViewModel.getSelectMessageSize() > 0) { + this.pathStack.pushPath({ + name: 'ConversationSelectPage', + param: new ConversationSelectParam([], conversationSelectLimitCount, this.forwardMessageAction) + }) + } + } + } + } + + /** + * 【合并转发】将多个消息合并为一条自定义消息,转发到多个会话中,并将留言发送到多个会话中 + */ + multiForwardMessage() { + // 校验网络 + if (ErrorUtils.checkNetworkAndToast()) { + this.forwardType = $r('app.string.chat_operation_multi_forward') + // 校验转发条数 + if (this.chatViewModel.selectMsgMap.size > mergedMessageLimitCount) { + let resourceManager = getContext(this).resourceManager + NECommonUtils.showToast($r("app.string.chat_forward_limit", resourceManager.getStringSync(this.forwardType.id), + mergedMessageLimitCount)) + return + } + + // 计算层数(深度) depth + let depth = 0 + // 不可合并转发的消息列表(1.发送失败的消息;2.转发层数超过 mergedMessageMaxDepth 的消息) + const invalidMessages: NIMMessageInfo[] = [] + let invalidFail: boolean = false + let invalidDepth: boolean = false + for (const message of this.chatViewModel.selectMsgMap.values()) { + // 发送失败的消息不可转发 + if (message.message.sendingState === V2NIMMessageSendingState.V2NIM_MESSAGE_SENDING_STATE_FAILED) { + invalidMessages.push(message) + invalidFail = true + continue + } + + // 解析消息中的 depth + if (message.message.attachment) { + let data = CustomMessageUtils.dataOfCustomMessage(message.message.attachment) + if (data) { + let dep = data["depth"] as number + if (dep >= mergedMessageMaxDepth) { + invalidMessages.push(message) + invalidDepth = true + } else if (dep >= depth) { + depth = dep + } + } + } + } + + // 当前合并转发消息深度 + 1 + depth += 1 + + this.forwardMessageAction = async (selectedList: ConversationSelectModel[]) => { + let forwardMessages = + await this.chatViewModel.mergeForwardMessage(this.chatViewModel.getSelectMessageList(), depth) + if (forwardMessages) { + this.forwardMessages = [forwardMessages] + } + this.forwardConversations = selectedList + this.currentConversationName = this.chatTeamInfo.team?.name + this.forwardMessageDialog.open() + } + + // 存在不可转发的消息:提示 + 取消勾选 + if (invalidMessages.length > 0) { + if (invalidFail) { + this.invalidForwardFailureDialog?.open() + } else if (invalidDepth) { + this.invalidForwardDepthDialog?.open() + } + this.invalidForwardDialogSureAction = () => { + for (const invalidMessage of invalidMessages) { + this.chatViewModel.removeSelectMessage(invalidMessage) + invalidMessage.isSelectedMsg = false + } + if (this.chatViewModel.getSelectMessageSize() > 0) { + this.pathStack.pushPath({ + name: 'ConversationSelectPage', + param: new ConversationSelectParam([], conversationSelectLimitCount, this.forwardMessageAction) + }) + } + } + } else { + if (this.chatViewModel.getSelectMessageSize() > 0) { + this.pathStack.pushPath({ + name: 'ConversationSelectPage', + param: new ConversationSelectParam([], conversationSelectLimitCount, this.forwardMessageAction) + }) + } + } + } + } + + /** + * 查看消息详情,点击消息体查看或者点击被回复内容查看 + * @param msg 点击的消息 + * @param onlyShow 是否为只展示该消息,如果是则文本消息会直接弹窗展示,图片消息则只查看当前消息 + */ + + showMessageDetail(msg: NIMMessageInfo | undefined, onlyShow?: boolean) { + if (msg) { + if (onlyShow && msg.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_TEXT) { + this.textMessageDetailDialog = new CustomDialogController({ + builder: TextMessageDetailDialog({ + message: msg + }), + cornerRadius: 0, + alignment: DialogAlignment.Center, + backgroundColor: Color.White, + height: '100%', + width: '100%', + customStyle: true + }) + this.textMessageDetailDialog.open() + } + if (msg?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_IMAGE) { + this.showImageDetail(msg, onlyShow) + } else if (msg?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_FILE) { + downLoadAndOpenFile(msg, getContext(this), this.chatTeamInfo) + } else if (msg?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_VIDEO) { + this.showVideoDetail(msg) + } else if (msg?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_LOCATION) { + this.showLocationDetail(msg) + } else if (msg?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_AUDIO) { + if (onlyShow) { + this.playAudioMessage(msg) + } + } else if (msg?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_CUSTOM) { + const attachment = msg.message.attachment + if (attachment) { + const type = CustomMessageUtils.typeOfCustomMessage(attachment) + if (type === mergedMessageCustomType) { + let data = CustomMessageUtils.dataOfCustomMessage(attachment) + if (data as MergedMessageAttachment) { + this.pathStack.pushPath({ + name: 'MergeMessageDetailPage', + param: data as MergedMessageAttachment + }) + } + } + } + } + } + } + + playAudioMessage(msg: NIMMessageInfo) { + if (msg.message.attachment) { + let audioManager = AudioPlayerManager.instance + audioManager.stopPlayAll() + audioManager.avPlayerLive((msg.message.attachment as V2NIMMessageAudioAttachment).url ?? '') + } + } + + showDialogToDelete(messages: NIMMessageInfo[]) { + AlertDialog.show( + { + title: $r('app.string.chat_msg_delete_dialog_title'), + message: $r('app.string.chat_msg_delete_dialog_desc'), + autoCancel: true, + alignment: DialogAlignment.Bottom, + gridCount: 4, + offset: { dx: 0, dy: -20 }, + primaryButton: { + value: $r('app.string.chat_msg_dialog_cancel'), + action: () => { + } + }, + secondaryButton: { + enabled: true, + defaultFocus: true, + style: DialogButtonStyle.HIGHLIGHT, + value: $r('app.string.chat_msg_dialog_sure'), + action: () => { + this.chatViewModel.deleteMessageList(messages) + this.showMultiSelect = false + } + } + } + ) + } + + showDialogToRevoke(message: NIMMessageInfo) { + AlertDialog.show( + { + title: $r('app.string.chat_msg_revoke_dialog_title'), + message: $r('app.string.chat_msg_revoke_dialog_desc'), + autoCancel: true, + alignment: DialogAlignment.Bottom, + gridCount: 4, + offset: { dx: 0, dy: -20 }, + primaryButton: { + value: $r('app.string.chat_msg_dialog_cancel'), + action: () => { + console.info('Callback when the first button is clicked') + } + }, + secondaryButton: { + enabled: true, + defaultFocus: true, + style: DialogButtonStyle.HIGHLIGHT, + value: $r('app.string.chat_msg_dialog_sure'), + action: () => { + console.info('Callback when the second button is clicked') + this.chatViewModel.revokeMessage(message) + } + } + } + ) + } + + goToTeamSettingPage(pathStack: NavPathStack) { + if (this.showMultiSelect) { + this.chatViewModel.clearSelectMessage() + this.showMultiSelect = false + } else { + pathStack.pushPath({ + name: 'TeamSettingPage', + param: this.chatTeamInfo.team?.teamId + }) + } + this.controller.stopEditing() + } + + onPageHide(): void { + this.chatViewModel.clearUnreadCount() + } + + aboutToDisappear(): void { + this.chatViewModel.clearUnreadCount() + this.chatViewModel.onDestroy() + AudioPlayerManager.instance.stopPlayAll() + TeamMemberCache.getInstance().clear() + } +} + +// 跳转页面入口函数 +@Builder +export function ChatTeamPageBuilder() { + ChatTeamPage() +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/pages/MergeMessageDetailPage.ets b/chatkit_ui/src/main/ets/pages/MergeMessageDetailPage.ets new file mode 100644 index 0000000..9253926 --- /dev/null +++ b/chatkit_ui/src/main/ets/pages/MergeMessageDetailPage.ets @@ -0,0 +1,203 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { NIMMessageInfo } from '../model/NIMMessageInfo'; +import { MergeDetailMessageComponent } from '../view/MessageComponent'; +import { NEEmojiManager } from '../manager/NEEmojiManager'; +import { ImagesIndexModel, ImageViewDialog, NavigationBackBuilder, VideoViewerDialog } from '@nimkit/common'; +import { DeviceUtils } from '../common/DeviceUtils'; +import { + downLoadAndOpenFile, + getMessageImageUrls, + getMessageVideoRatio, + getMessageVideoUrl +} from '../common/MessageHelper'; +import { V2NIMMessageLocationAttachment, V2NIMMessageType } from '@nimsdk/base'; +import { CustomMessageUtils, MergedMessageAttachment, mergedMessageCustomType } from '@nimkit/chatkit'; +import { BusinessError } from '@kit.BasicServicesKit'; +import { AudioPlayerManager } from '../manager/AudioPlayerManager'; +import { common } from '@kit.AbilityKit'; +import { MergeMessageDetailViewModel } from '../viewmodel/MergeMessageDetailViewModel'; +import { MergeMessageInfo } from '../model/MergeMessageInfo'; +import { sceneMap } from '@kit.MapKit'; + +@ComponentV2 +export struct MergeMessageDetailPage { + pathStack: NavPathStack = new NavPathStack() + @Local mergeMessageInfo: MergeMessageInfo = new MergeMessageInfo(''); + viewModel: MergeMessageDetailViewModel = new MergeMessageDetailViewModel(); + conversationId: string = ''; + @Local imagesIndexModel?: ImagesIndexModel + @Local currentImageIndex: number = 0 + imageViewerDialog: CustomDialogController = new CustomDialogController({ + builder: ImageViewDialog({ + imagesIndexModel: this.imagesIndexModel + }), + cornerRadius: 0, + alignment: DialogAlignment.Center, + backgroundColor: Color.Black, + backgroundBlurStyle: BlurStyle.NONE, + height: '100%', + width: '100%', + customStyle: true, + }) + @Local videoFileUrl?: string + @Local videoRatio?: number + videoViewerDialog: CustomDialogController = new CustomDialogController({ + builder: VideoViewerDialog({ + videoUrl: this.videoFileUrl, + videoRatio: this.videoRatio + }), + cornerRadius: 0, + alignment: DialogAlignment.Center, + backgroundColor: Color.Black, + backgroundBlurStyle: BlurStyle.NONE, + height: '100%', + width: '100%', + customStyle: true + }) + private listScroller: Scroller = new Scroller() + + aboutToAppear(): void { + NEEmojiManager.instance.setup(); + DeviceUtils.rootDirPath = getContext(this).filesDir + } + + async requestData() { + let param = this.pathStack.getParamByName("MergeMessageDetailPage") as MergedMessageAttachment[]; + if (param.length > 0) { + this.viewModel.init(this.mergeMessageInfo) + this.viewModel.loadMergeMessage(this.pathStack, param[param.length - 1]) + } else { + this.pathStack.removeByName("MergeMessageDetailPage") + } + } + + async showImageDetail(msg?: NIMMessageInfo) { + try { + const imageModel = await getMessageImageUrls(msg, this.mergeMessageInfo) + this.imagesIndexModel = imageModel + this.imageViewerDialog.open() + } catch (err) { + console.log(err) + } + } + + showVideoDetail(msg: NIMMessageInfo) { + //点击视频消息前关闭所有音频 + AudioPlayerManager.instance.stopPlayAll() + this.videoFileUrl = getMessageVideoUrl(msg, this.mergeMessageInfo) + this.videoRatio = getMessageVideoRatio(msg) + if (this.videoFileUrl) { + this.videoViewerDialog.open() + } + } + + showLocationDetail(msg: NIMMessageInfo) { + let attachment = msg.message.attachment as V2NIMMessageLocationAttachment + + let queryLocationOptions: sceneMap.LocationQueryOptions = { + location: { + latitude: attachment.latitude, + longitude: attachment.longitude + }, + name: attachment.address, + address: attachment.address, + }; + // 拉起地点详情页 + sceneMap.queryLocation(getContext(this) as common.UIAbilityContext, queryLocationOptions).then(() => { + console.info("netease QueryLocation", "Succeeded in querying location."); + }).catch((err: BusinessError) => { + console.error("netease QueryLocation", `Failed to query Location, code: ${err.code}, message: ${err.message}`); + }); + } + + @Builder + build() { + NavDestination() { + NavigationBackBuilder({ + title: $r('app.string.chatHistoryBrief'), + backgroundColor: Color.White, + leftButtonAction: () => { + this.pathStack.pop() + }, + }) + + RelativeContainer() { + List({ space: 12, scroller: this.listScroller }) { + LazyForEach(this.mergeMessageInfo.msgList, (msg: NIMMessageInfo) => { + ListItem() { + MergeDetailMessageComponent({ + message: msg, + chatUserInfo: this.mergeMessageInfo, + onMessageClick: { + onAvatarClick: undefined, + onItemLongClick: undefined, + onItemClick: (event: ClickEvent, msg: NIMMessageInfo | undefined) => { + if (msg) { + if (msg?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_IMAGE) { + this.showImageDetail(msg) + } else if (msg?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_FILE) { + downLoadAndOpenFile(msg, getContext(this), this.mergeMessageInfo) + } else if (msg?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_VIDEO) { + this.showVideoDetail(msg) + } else if (msg?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_LOCATION) { + this.showLocationDetail(msg) + } else if (msg?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_CUSTOM) { + const attachment = msg.message.attachment + if (attachment) { + const type = CustomMessageUtils.typeOfCustomMessage(attachment) + if (type === mergedMessageCustomType) { + let data = CustomMessageUtils.dataOfCustomMessage(attachment) + if (data as MergedMessageAttachment) { + this.pathStack.pushPath({ + name: 'MergeMessageDetailPage', + param: data as MergedMessageAttachment + }) + } + } + } + } + } + } + } + }) + } + }, (item: NIMMessageInfo, index?: number) => item.message.messageClientId) + } + .id("mergeMessageDetailPageListView") + .cachedCount(20) + .padding({ bottom: 56 }) + .maintainVisibleContentPosition(true) + .alignRules({ + left: { anchor: "__container__", align: HorizontalAlign.Start }, + right: { anchor: "__container__", align: HorizontalAlign.End }, + top: { anchor: "__container__", align: VerticalAlign.Top }, + }) + .width('100%') + .height('100%') + } + } + .hideTitleBar(true) + .backgroundColor(Color.White) + .onReady((context: NavDestinationContext) => { + this.pathStack = context.pathStack + this.requestData() + }) + } + + aboutToDisappear(): void { + this.viewModel.onDestroy() + } +} + +// 跳转页面入口函数 +@Builder +export function MergeMessageDetailPageBuilder() { + MergeMessageDetailPage() +} + diff --git a/chatkit_ui/src/main/ets/pages/PinMessagePage.ets b/chatkit_ui/src/main/ets/pages/PinMessagePage.ets new file mode 100644 index 0000000..52afaa0 --- /dev/null +++ b/chatkit_ui/src/main/ets/pages/PinMessagePage.ets @@ -0,0 +1,420 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { ChatTeamInfo } from '../model/ChatTeamInfo'; +import { NIMMessageInfo } from '../model/NIMMessageInfo'; +import { PinMessageComponent } from '../view/PinMessageComponent'; +import { NEEmojiManager } from '../manager/NEEmojiManager'; +import { + CommonEmptyResult, + ImagesIndexModel, + ImageViewDialog, + NavigationBackBuilder, + NECommonUtils, + VideoViewerDialog +} from '@nimkit/common'; +import { DeviceUtils } from '../common/DeviceUtils'; +import { + downLoadAndOpenFile, + getMessageImageUrls, + getMessageVideoRatio, + getMessageVideoUrl +} from '../common/MessageHelper'; +import { V2NIMConversationType, V2NIMErrorCode, V2NIMMessageType } from '@nimsdk/base'; +import pasteboard from '@ohos.pasteboard'; +import { ChatKitClient } from '@nimkit/chatkit/src/main/ets/ChatKitClient'; +import { ChatRepo } from '@nimkit/chatkit/src/main/ets/repo/ChatRepo'; +import { TextMessageDetailDialog } from '../view/TextMessageDetailDialog'; +import { ConversationSelectParam } from '@nimkit/chatkit/src/main/ets/model/ConversationSelectParam'; +import { ConversationSelectModel } from '@nimkit/chatkit/src/main/ets/model/ConversationSelectModel'; +import { ForwardMessageDialog } from '../view/ForwardMessageDialog'; +import { ChatPinViewModel } from '../viewmodel/ChatPinViewModel'; +import { + conversationSelectLimitCount, + CustomMessageUtils, + ErrorUtils, + MergedMessageAttachment, + mergedMessageCustomType +} from '@nimkit/chatkit'; +import { BusinessError } from '@kit.BasicServicesKit'; +import { ChatBaseViewModel } from '../viewmodel/ChatBaseViewModel'; +import { AudioPlayerManager } from '../manager/AudioPlayerManager'; +import { common } from '@kit.AbilityKit'; +import { showLocationDetail } from '../common/ChatUtils'; + +@CustomDialog +export struct PinMoreActionDialog { + @BuilderParam message: NIMMessageInfo + @BuilderParam dialogHeight: number + @BuilderParam forwardMessageAction?: (message: NIMMessageInfo) => void + controller?: CustomDialogController + unpinMessage = async () => { + if (ErrorUtils.checkNetworkAndToast()) { + await ChatRepo.unpinMessage(this.message.message).catch((err: BusinessError) => { + if (err.code == V2NIMErrorCode.V2NIM_ERROR_CODE_PIN_NOT_EXIST) { + return + } + ErrorUtils.handleErrorToast(err.code) + }) + NECommonUtils.showToast($r('app.string.pin_list_unpin_success_tips')) + this.cancel() + } + } + copyMessage = () => { + const copyData = pasteboard.createData(pasteboard.MIMETYPE_TEXT_PLAIN, this.message.message.text) + pasteboard.getSystemPasteboard().setData(copyData).then(() => { + NECommonUtils.showToast($r('app.string.copy_success')) + this.cancel() + }) + } + forwardMessage = () => { + this.forwardMessageAction?.(this.message) + this.cancel() + } + cancel = () => { + this.controller?.close() + } + + build() { + Column() { + Column() { + Text($r("app.string.setting_unpin")) + .fontSize(14) + .fontColor("#333333") + .textAlign(TextAlign.Center) + .height(42) + .width('100%') + .onClick(this.unpinMessage) + + if (this.message.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_TEXT) { + Row() + .height(1) + .width('100%') + .backgroundColor("#EFF1F4") + + Text($r("app.string.chat_operation_copy")) + .fontSize(14) + .fontColor("#333333") + .textAlign(TextAlign.Center) + .height(42) + .width('100%') + .onClick(this.copyMessage) + } + + if (this.message.message.messageType !== V2NIMMessageType.V2NIM_MESSAGE_TYPE_AUDIO && + this.message.message.messageType !== V2NIMMessageType.V2NIM_MESSAGE_TYPE_CALL) { + Row() + .height(1) + .width('100%') + .backgroundColor("#EFF1F4") + + Text($r("app.string.chat_operation_forward")) + .fontSize(14) + .fontColor("#333333") + .textAlign(TextAlign.Center) + .height(42) + .width('100%') + .onClick(this.forwardMessage) + } + } + .height(this.dialogHeight) + .width('100%') + .backgroundColor(Color.White) + .borderRadius(12) + .margin({ left: 12, right: 12 }) + + Column() { + Text($r('app.string.mine_edit_cancel')) + .fontSize(14) + .fontColor("#333333") + .textAlign(TextAlign.Center) + .height(42) + .width('100%') + .onClick(this.cancel) + } + .height(42) + .width('100%') + .backgroundColor(Color.White) + .borderRadius(12) + .margin({ top: 10, left: 12, right: 12 }) + + } + .height(this.dialogHeight + 52) + .backgroundColor(Color.Transparent) + } +} + +@ComponentV2 +export struct PinMessagePage { + pathStack: NavPathStack = new NavPathStack() + @Local chatTeamInfo: ChatTeamInfo = new ChatTeamInfo(''); + viewModel: ChatPinViewModel = new ChatPinViewModel(); + conversationId: string = ''; + @Local imagesIndexModel?: ImagesIndexModel + @Local currentImageIndex: number = 0 + imageViewerDialog: CustomDialogController = new CustomDialogController({ + builder: ImageViewDialog({ + imagesIndexModel: this.imagesIndexModel + }), + cornerRadius: 0, + alignment: DialogAlignment.Center, + backgroundColor: Color.Black, + backgroundBlurStyle: BlurStyle.NONE, + height: '100%', + width: '100%', + customStyle: true, + }) + @Local videoFileUrl?: string + @Local videoRatio?: number + videoViewerDialog: CustomDialogController = new CustomDialogController({ + builder: VideoViewerDialog({ + videoUrl: this.videoFileUrl, + videoRatio: this.videoRatio + }), + cornerRadius: 0, + alignment: DialogAlignment.Center, + backgroundColor: Color.Black, + backgroundBlurStyle: BlurStyle.NONE, + height: '100%', + width: '100%', + customStyle: true + }) + @Local tapMessage?: NIMMessageInfo + @Local pinMoreActionDialogHeight: number = 42 + @Local forwardMessages: NIMMessageInfo[] = [] + @Local forwardConversations: ConversationSelectModel[] = [] + @Local currentConversationName?: string + forwardMessageDialog = new CustomDialogController({ + builder: ForwardMessageDialog({ + conversationList: this.forwardConversations, + currentConversationName: this.currentConversationName, + sendForwardMsg: (text: string | undefined) => { + this.viewModel.forwardMessage(this.forwardMessages, this.forwardConversations, text) + } + }), + cornerRadius: 14, + backgroundColor: Color.White, + height: 250, + width: 276, + }) + forwardMessageClick = () => { + if (ErrorUtils.checkNetworkAndToast()) { + this.pathStack.pushPath({ + name: 'ConversationSelectPage', + param: new ConversationSelectParam([], conversationSelectLimitCount, this.forwardMessageAction) + }) + } + } + pinMoreActionDialog: CustomDialogController = new CustomDialogController({ + builder: PinMoreActionDialog({ + message: this.tapMessage, + dialogHeight: this.pinMoreActionDialogHeight, + forwardMessageAction: this.forwardMessageClick + }), + cornerRadius: 0, + alignment: DialogAlignment.Bottom, + backgroundColor: Color.Transparent, + backgroundBlurStyle: BlurStyle.NONE, + }) + textMessageDetailDialog: CustomDialogController = new CustomDialogController({ + builder: TextMessageDetailDialog({ + message: this.tapMessage + }), + cornerRadius: 0, + alignment: DialogAlignment.Center, + backgroundColor: Color.White, + height: '100%', + width: '100%', + customStyle: true + }) + private listScroller: Scroller = new Scroller() + private scrollIndex: number = 0 + + @Monitor("viewModel.topInsert") + scrollToTop() { + if (this.scrollIndex === 0) { + this.listScroller.scrollToIndex(0) + } + this.viewModel.topInsert = false + } + + forwardMessageAction = (selectedList: ConversationSelectModel[]) => { + if (this.tapMessage?.message) { + this.forwardMessages = [this.tapMessage] + this.forwardConversations = selectedList + const conversationType = ChatKitClient.nim.conversationIdUtil.parseConversationType(this.conversationId) + if (conversationType === V2NIMConversationType.V2NIM_CONVERSATION_TYPE_P2P) { + const targetAccountId = ChatKitClient.nim.conversationIdUtil.parseConversationTargetId(this.conversationId) + this.currentConversationName = this.chatTeamInfo.getChatUserShowName(targetAccountId) + } else { + this.currentConversationName = this.chatTeamInfo.team?.name + } + this.forwardMessageDialog.open() + } + } + + getPinMoreActionDialogHeight(message?: NIMMessageInfo): number { + let height = 42 + if (message?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_TEXT) { + height += 43 + } + if (message?.message.messageType !== V2NIMMessageType.V2NIM_MESSAGE_TYPE_AUDIO) { + height += 43 + } + return height + } + + aboutToAppear(): void { + NEEmojiManager.instance.setup(); + DeviceUtils.rootDirPath = getContext(this).filesDir + } + + async requestChatData() { + this.chatTeamInfo.setConversationId(this.conversationId) + this.viewModel.init(this.conversationId as string, this.chatTeamInfo) + this.viewModel.getPinMessageList() + } + + async showImageDetail(msg?: NIMMessageInfo) { + try { + const imageModel = await getMessageImageUrls(msg, this.chatTeamInfo) + this.imagesIndexModel = imageModel + this.imageViewerDialog.open() + } catch (err) { + console.log(err) + } + } + + showVideoDetail(msg: NIMMessageInfo) { + //点击视频消息前关闭所有音频 + AudioPlayerManager.instance.stopPlayAll() + this.videoFileUrl = getMessageVideoUrl(msg, this.chatTeamInfo) + this.videoRatio = getMessageVideoRatio(msg) + if (this.videoFileUrl) { + this.videoViewerDialog.open() + } + } + + @Builder + build() { + NavDestination() { + NavigationBackBuilder({ + title: $r("app.string.setting_pin"), + backgroundColor: '#EFF1F4', + leftButtonAction: () => { + this.pathStack.pop() + }, + }) + if (this.viewModel.pinListEmpty) { + CommonEmptyResult({ + tips: $r('app.string.setting_pin_empty') + }) + .margin({ + top: 56 + 74, + }) + } + RelativeContainer() { + List({ space: 12, scroller: this.listScroller }) { + LazyForEach(this.chatTeamInfo.msgList, (msg: NIMMessageInfo) => { + ListItem() { + PinMessageComponent({ + message: msg, + chatUserInfo: this.chatTeamInfo, + onMessageClick: { + onAvatarClick: undefined, + onItemLongClick: undefined, + onItemClick: (_event: ClickEvent, msg: NIMMessageInfo | undefined) => { + this.tapMessage = msg + if (msg?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_IMAGE) { + this.showImageDetail(msg) + } else if (msg?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_FILE) { + downLoadAndOpenFile(msg, getContext(this), this.chatTeamInfo) + } else if (msg?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_VIDEO) { + this.showVideoDetail(msg) + } else if (msg?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_TEXT) { + this.textMessageDetailDialog.open() + } else if (msg?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_LOCATION) { + showLocationDetail(msg, getContext(this) as common.UIAbilityContext) + } else if (msg?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_CUSTOM) { + const attachment = msg.message.attachment + if (attachment) { + const type = CustomMessageUtils.typeOfCustomMessage(attachment) + if (type === mergedMessageCustomType) { + let data = CustomMessageUtils.dataOfCustomMessage(attachment) + if (data as MergedMessageAttachment) { + this.pathStack.pushPath({ + name: 'MergeMessageDetailPage', + param: data as MergedMessageAttachment + }) + } + } + } + } + } + }, + onMoreButtonClick: (_event: ClickEvent, msg: NIMMessageInfo | undefined) => { + this.tapMessage = msg + this.pinMoreActionDialogHeight = this.getPinMoreActionDialogHeight(msg) + this.pinMoreActionDialog.open() + }, + onPinItemClick: (_event: ClickEvent, msg: NIMMessageInfo | undefined) => { + if (msg) { + if (ChatBaseViewModel.currentViewModel) { + ChatBaseViewModel.currentViewModel.setAnchorMessage(msg) + } + if (msg.message.conversationType == V2NIMConversationType.V2NIM_CONVERSATION_TYPE_P2P) { + this.pathStack.popToName('ChatP2PPage') + } else if (msg.message.conversationType == V2NIMConversationType.V2NIM_CONVERSATION_TYPE_TEAM) { + this.pathStack.popToName('ChatTeamPage') + } + } + } + }) + } + }, (item: NIMMessageInfo) => item.message.messageClientId) + } + .id("pinPageListView") + .cachedCount(20) + .padding({ bottom: 56 }) + .maintainVisibleContentPosition(true) + .alignRules({ + left: { anchor: "__container__", align: HorizontalAlign.Start }, + right: { anchor: "__container__", align: HorizontalAlign.End }, + top: { anchor: "__container__", align: VerticalAlign.Top }, + }) + .width('100%') + .height('100%') + .onScrollIndex((start: number, _end: number) => { + this.scrollIndex = start + }) + } + } + .hideTitleBar(true) + .backgroundColor('#EFF1F4') + .onReady((context: NavDestinationContext) => { + this.pathStack = context.pathStack + let param = this.pathStack.getParamByName("PinMessagePage") as string[]; + if (param.length > 0) { + this.conversationId = param[0]; + this.requestChatData(); + } else { + this.pathStack.removeByName("PinMessagePage") + } + }) + } + + aboutToDisappear(): void { + this.viewModel.onDestroy() + } +} + +// 跳转页面入口函数 +@Builder +export function PinMessagePageBuilder() { + PinMessagePage() +} + diff --git a/chatkit_ui/src/main/ets/pages/QuickMessagePage.ets b/chatkit_ui/src/main/ets/pages/QuickMessagePage.ets new file mode 100644 index 0000000..1ce153b --- /dev/null +++ b/chatkit_ui/src/main/ets/pages/QuickMessagePage.ets @@ -0,0 +1,249 @@ +import { + NavigationBackBuilder, + + CommonEmptyResult +} from '@nimkit/common' +import { window } from '@kit.ArkUI'; +import { hdHttp, HdResponse,BasicConstant, authStore} from '@itcast/basic' +import { BusinessError } from '@kit.BasicServicesKit'; +import { promptAction,LengthMetrics } from '@kit.ArkUI' +import { PerfactInputSheet } from '@itcast/basic/src/main/ets/Views/PerfactInputSheet' +@ComponentV2 +export struct QuickMessagePage { + @Local delectuuid:string='' + @Local statusBarHeight:number=0 + pathStack: NavPathStack = new NavPathStack() + @Local replydata:QuickReplyData[]=[] + private InputSheet!:CustomDialogController; + dialog = new CustomDialogController({ + builder: DelectDialog( + { + CallBack:()=>{ + + this.deleteQuickReply(this.delectuuid) + + } + } + ), + cornerRadius: 4, + width: '70%', + }) + build() { + NavDestination() { + Column() { + NavigationBackBuilder({ + title:$r('app.string.reply'), + top:this.statusBarHeight, + leftButtonAction: () => { + this.pathStack.pop() + } + }) + Row(){ + Image($r('app.media.add_drawle')).width(30).height(30) + Text('添加快捷回复').margin({left:10}).fontSize(20).fontColor($r('app.color.common_gray_03')) + } + .width('100%') + .height(50) + .padding({left:10}) + .onClick(()=>{ + this.InputSheet.open() + }) + + Text('').height(5).width('100%') + .backgroundColor($r('app.color.common_gray_bg')) + if(this.replydata==null||this.replydata.length==0) + { + CommonEmptyResult({ + tips: $r('app.string.reply_empty') + }) + } + else + { + List() { + ForEach(this.replydata, (item: QuickReplyData) => { + ListItem() { + Text(item.replystr).fontSize(16).fontColor($r('app.color.common_gray_01')).padding(20).textAlign(TextAlign.Start).width('100%') + } + .onClick(()=>{ + this.pathStack.pop(item.replystr) + }) + .gesture( + LongPressGesture({ + duration: 1000, // 设置长按触发时间为1秒 + repeat: true // 允许连续触发回调 + }) + .onAction((event: GestureEvent) => { + this.delectuuid=item.uuid + this.dialog.open() + }) + ) + .width('100%') + + }) + } + .divider({ + strokeWidth: 1, // 线宽 + color: $r('app.color.common_gray_bg'), // 颜色 + }) + .margin({ left: 10, right: 10, top: 0 }) + } + + + } + .width('100%') + .height('100%') + } + .hideTitleBar(true) + .backgroundColor(Color.White) + .onReady((context: NavDestinationContext) => { + this.pathStack = context.pathStack + + }) + } + aboutToAppear(): void { + window.getLastWindow(getContext(this)).then(currentWindow => { + let avoidArea1 = currentWindow.getWindowAvoidArea(window.AvoidAreaType.TYPE_SYSTEM); + // 顶部状态栏高度 + this.statusBarHeight= px2vp(avoidArea1.topRect.height); + + }) + this.initInputDialog() + this.initList() + + } + initList() + { + hdHttp.post(BasicConstant.QuickReplyList, { + user_uuid: authStore.getUser().uuid, + } as extraData).then(async (res: HdResponse) => { + let json:QuickReplyBean = JSON.parse(res+'') as QuickReplyBean; + if(json.code == '1') { + this.replydata=json.data + } else { + + promptAction.showToast({ message: json.message, duration: 1000 }) + } + }).catch((err: BusinessError) => { + console.info(`Response fails: ${err}`); + }) + } + initInputDialog() { + this.InputSheet = new CustomDialogController({ + builder:PerfactInputSheet({ + controller:this.InputSheet, + inputTitle:'请输入快捷回复', + inputPlaceholder:'', + style:'1', + inputCallBack:(input: string,title:string)=>{ + + this.addQuickReply(input) + + } + }), + keyboardAvoidDistance: LengthMetrics.vp(0), // 设置弹窗底部与键盘顶部间距(单位:vp) + alignment: DialogAlignment.Center, + customStyle: true, + autoCancel: false, + backgroundColor: ('rgba(0,0,0,0.5)'), + height: '100%' + }) + } + addQuickReply(replystr:string) + { + hdHttp.post(BasicConstant.addQuickReply, { + user_uuid: authStore.getUser().uuid, + replystr:replystr + } as addextraData).then(async (res: HdResponse) => { + let json:QuickReplyBean = JSON.parse(res+'') as QuickReplyBean; + this.replydata=json.data + promptAction.showToast({ message: '添加成功', duration: 1000 }) + + }).catch((err: BusinessError) => { + console.info(`Response fails: ${err}`); + }) + } + + deleteQuickReply(uuid:string) + { + hdHttp.post(BasicConstant.deleteQuickReply, { + uuid: uuid, + } as delectextraData).then(async (res: HdResponse) => { + this.initList() + promptAction.showToast({ message: '删除成功', duration: 1000 }) + + }).catch((err: BusinessError) => { + console.info(`Response fails: ${err}`); + }) + } +} + +@CustomDialog +struct DelectDialog { + controller: CustomDialogController + CallBack: () => void = () => {}; + build() { + Column() { + Text('删除快捷回复') + .fontSize(17) + .fontColor('#444444') + .padding(15) + Text('').height(1).width('100%') + .backgroundColor($r('app.color.home_gray')) + Text('删除') + .fontSize(16).fontColor($r('app.color.common_gray_03')) + .padding(10).width('100%').textAlign(TextAlign.Start) + .onClick(() => { + + if (this.controller != undefined) { + this.controller.close() + this.CallBack(); + } + }) + Text('').height(1).width('100%') + .backgroundColor($r('app.color.home_gray')) + .margin({bottom:10}) + } + // .onClick(() => { + // + // if (this.controller != undefined) { + // this.controller.close() + // + // } + // }) + + .backgroundColor($r('app.color.white')) + + } +} + +// 跳转页面入口函数 +@Builder +export function QuickMessagePageBuilder() { + QuickMessagePage() +} + +interface extraData{ + user_uuid:string +} +interface delectextraData{ + uuid:string +} +interface addextraData{ + user_uuid:string, + replystr:string, +} + +interface QuickReplyBean { + code:string; + message:string; + data:QuickReplyData[]; + +} +interface QuickReplyData{ + createdate:string; + replystr:string; + user_uuid:string; + uuid:string; + sort:number; + +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/pages/TeamHistoryPage.ets b/chatkit_ui/src/main/ets/pages/TeamHistoryPage.ets new file mode 100644 index 0000000..ee3484e --- /dev/null +++ b/chatkit_ui/src/main/ets/pages/TeamHistoryPage.ets @@ -0,0 +1,166 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { ErrorUtils } from '@nimkit/chatkit'; +import { ChatBaseViewModel } from '../viewmodel/ChatBaseViewModel'; +import { + AvatarColorUntil, + AvatarItem, + CommonAvatar, + CommonEmptyResult, + CommonTextInput, + MatchSearchText, + NavigationBackBuilder, + TailString +} from '@nimkit/common'; +import { DateUtil } from '@nimkit/common/src/main/ets/utils/DateUtil'; +import { TeamHistoryModel, TeamHistoryViewModel } from '../viewmodel/TeamHistoryViewModel'; +import { V2NIMConversationType } from '@nimsdk/base'; +import { NIMMessageInfo } from '../model/NIMMessageInfo'; + +// 跳转页面入口函数 +@Builder +export function TeamHistoryPageBuilder() { + TeamHistoryPage() +} + +@ComponentV2 +export struct TeamHistoryPage { + pathStack: NavPathStack = new NavPathStack() + @Local viewModel?: TeamHistoryViewModel + @Local isEmpty: boolean = false + @Local searchText: string = "" + onSubmit = async (_enterKey: EnterKeyType, event: SubmitEvent) => { + this.searchText = event.text + if (ErrorUtils.checkNetworkAndToast()) { + if (this.searchText.length > 0) { + try { + await this.viewModel?.searchHistoryMessages(event.text) + this.isEmpty = (this.viewModel?.historyList.length ?? 0) <= 0 + } catch (err) { + console.error(err) + this.isEmpty = true + } + } + } + } + onTextChange = (value: string) => { + if (value.length === 0) { + this.viewModel?.clearHistoryMessages() + this.isEmpty = false + } + } + + requestData() { + const teamId = this.pathStack.getParamByName('TeamHistoryPage')[0] as string + this.viewModel = new TeamHistoryViewModel(teamId) + } + + build() { + NavDestination() { + Column() { + NavigationBackBuilder({ + title: $r('app.string.team_history_record'), + leftButtonAction: () => { + this.pathStack.pop() + } + }) + + CommonTextInput({ + placeHolderText: $r('app.string.team_history_record_tip'), + onSubmit: this.onSubmit.bind(this), + onTextChange: this.onTextChange, + keepEditableState: false + }) + .margin({ + top: 16 + }) + + if (this.isEmpty) { + CommonEmptyResult({ + emptyImage: $r('app.media.no_history'), + tips: $r('app.string.team_history_record_empty_tip') + }) + .margin({ + top: 74 + }) + } + + List() { + ForEach(this.viewModel?.historyList, (item: TeamHistoryModel) => { + ListItem() { + Row() { + CommonAvatar({ + item: new AvatarItem(item.teamMember?.getAvatar(), + TailString(item.teamMember?.getAvatarName()), + AvatarColorUntil.getBackgroundColorById(item.teamMember?.getAccId() ?? "")), + roundRadius: 18 + }) + .width(36) + .height(36) + .margin({ + left: 20 + }) + + Column() { + Text(item.teamMember?.getNickname()) + .fontColor('#333333') + + MatchSearchText({ + allText: item.message.text, + searchText: this.searchText, + normalFontColor: "#999999" + }) + .margin({ + top: 6 + }) + } + .layoutWeight(1) + .alignItems(HorizontalAlign.Start) + .margin({ + left: 12, + right: 12 + }) + + // 时间 + Text(DateUtil.formatTimestamp(item.message.createTime)) + .fontSize(12) + .fontColor('#999999') + .margin({ + right: 20 + }) + } + } + .height(62) + .onClick(() => { + if (ChatBaseViewModel.currentViewModel) { + let msgInfo = new NIMMessageInfo(item.message) + ChatBaseViewModel.currentViewModel.setAnchorMessage(msgInfo) + } + if (item.message.conversationType == V2NIMConversationType.V2NIM_CONVERSATION_TYPE_P2P) { + this.pathStack.popToName('ChatP2PPage') + } else if (item.message.conversationType == V2NIMConversationType.V2NIM_CONVERSATION_TYPE_TEAM) { + this.pathStack.popToName('ChatTeamPage') + } + }) + }) + } + .divider({ + strokeWidth: 1, + color: "0xDBE0E8", + startMargin: 20 + }) + } + } + .hideTitleBar(true) + .backgroundColor(Color.White) + .onReady((context: NavDestinationContext) => { + this.pathStack = context.pathStack + this.requestData() + }) + } +} diff --git a/chatkit_ui/src/main/ets/pages/UserSettingPage.ets b/chatkit_ui/src/main/ets/pages/UserSettingPage.ets new file mode 100644 index 0000000..177bf6f --- /dev/null +++ b/chatkit_ui/src/main/ets/pages/UserSettingPage.ets @@ -0,0 +1,251 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { + ChatKitClient, + ContactRepo, + ErrorUtils, + NEFriendUserCache, + NEUserWithFriend, + PersonSelectParam, + TeamRepo +} from '@nimkit/chatkit' +import { + AvatarColorUntil, + AvatarItem, + CommonAvatar, + NavigationBackBuilder, + ViewItemArrow, + ViewItemBuilder, + ViewItemSwitch +} from '@nimkit/common' +import { UserSettingViewModel } from '../viewmodel/UserSettingViewModel' + +@ComponentV2 +export struct UserSettingPage { + pathStack: NavPathStack = new NavPathStack() + accountId?: string + @Local userWithFriend?: NEUserWithFriend + viewModel: UserSettingViewModel = new UserSettingViewModel() + firstItems: ViewItemArrow[] = [ + { + title: $r("app.string.setting_pin"), + itemHeight: 48, + routerUrl: "PinMessagePage", + rightIcon: $r('app.media.arrow_right') + } + ] + // 设置是否开启消息提醒 + setP2PNotify = async (isOpen: boolean) => { + if (ErrorUtils.checkNetworkAndToast()) { + try { + await this.viewModel?.setP2PNotify(isOpen) + } catch (err) { + console.log(err) + } + } + } + // 设置是否聊天置顶 + stickTopConversation = async (isOpen: boolean) => { + if (ErrorUtils.checkNetworkAndToast()) { + try { + await this.viewModel?.stickTopConversation(isOpen) + } catch (err) { + console.log(err) + } + } + } + @Local secondItems: ViewItemSwitch[] = [] + // 创建讨论组 + createDiscussion = async (selectedList: NEUserWithFriend[]) => { + if (ErrorUtils.checkNetworkAndToast()) { + const inviteeAccountIds: string[] = [] + selectedList.forEach((userWithFriend) => { + if (userWithFriend.user?.accountId) { + inviteeAccountIds.push(userWithFriend.user.accountId) + } + }) + if (this.viewModel?.accountId) { + inviteeAccountIds.push(this.viewModel?.accountId) + } + + try { + const createTeamResult = await TeamRepo.createGroupTeam(inviteeAccountIds) + + // 替换聊天页 + if (createTeamResult?.team) { + this.pathStack.popToName('ChatP2PPage') + this.pathStack.replacePathByName('ChatTeamPage', + ChatKitClient.nim.conversationIdUtil.teamConversationId(createTeamResult.team.teamId)) + } + } catch (err) { + console.log(err) + } + } + } + + // 【+】按钮点击事件 + onAddButtonClick() { + this.pathStack.pushPath({ + name: 'PersonSelectPage', + param: new PersonSelectParam(this.createDiscussion, + [this.viewModel?.accountId], + 10) + }) + } + + updateSecondItems() { + this.secondItems = [ + { + title: $r('app.string.setting_message_notify'), + itemHeight: 48, + isOpen: this.viewModel.isMessageNotify, + switchChange: this.setP2PNotify + }, + { + title: $r('app.string.setting_message_stick_top'), + itemHeight: 48, + isOpen: this.viewModel.isStickTop, + switchChange: this.stickTopConversation + } + ] + } + + async requestData() { + const conversationId = this.pathStack.getParamByName('UserSettingPage')[0] as string + this.viewModel.init(conversationId).then(() => { + this.updateSecondItems() + }) + + const accountId = this.viewModel.accountId + if (NEFriendUserCache.getInstance().isFriend(accountId)) { + this.userWithFriend = NEFriendUserCache.getInstance().getFriendById(accountId) + } else { + try { + const users = await ContactRepo.getUserWithFriendByIds([accountId]) + if (users.length > 0) { + this.userWithFriend = users[0] + } + } catch (err) { + console.log(err) + } + } + } + + build() { + NavDestination() { + Column() { + NavigationBackBuilder({ + title: $r('app.string.chat_setting'), + backgroundColor: '#ffEFF1F4', + leftButtonAction: () => { + this.pathStack.pop() + } + }) + + Row() { + Row() { + Column() { + CommonAvatar({ + item: new AvatarItem(this.userWithFriend?.user?.avatar, + this.userWithFriend?.shortName(), + AvatarColorUntil.getBackgroundColorById(this.userWithFriend?.user?.accountId ?? "")), + roundRadius: 21, + textSize: 16 + }) + .width(42) + .height(42) + + Text(this.userWithFriend?.showName()) + .width(42) + .height(14) + .fontSize(12) + .maxLines(1) + .textOverflow({ + overflow: TextOverflow.Ellipsis + }) + .margin({ + top: 6 + }) + } + .width(42) + .height(80) + + Image($r('app.media.team_invite')) + .width(42) + .height(42) + .margin({ + left: 16 + }) + .onClick(() => { + this.onAddButtonClick() + }) + } + .alignSelf(ItemAlign.Start) + .alignItems(VerticalAlign.Top) + .height(80) + .width('100%') + } + .borderRadius(8) + .backgroundColor(Color.White) + .margin({ + left: 20, + right: 20, + bottom: 12 + }) + .padding({ + left: 20, + right: 20, + top: 12 + }) + + List() { + ForEach(this.firstItems, (item: ViewItemArrow) => { + ListItem() { + ViewItemBuilder(item) + } + .width('100%') + .height(item.itemHeight) + .backgroundColor(item.backgroundColor ?? Color.White) + .onClick(() => { + this.pathStack.pushPath({ + name: item.routerUrl, + param: this.viewModel?.conversationId + }) + }) + }) + + ForEach(this.secondItems, (item: ViewItemSwitch) => { + ListItem() { + ViewItemBuilder(item) + } + .width('100%') + .height(item.itemHeight) + .backgroundColor(item.backgroundColor ?? Color.White) + }) + } + .borderRadius(8) + .backgroundColor(Color.White) + .margin({ left: 20, right: 20, top: 0 }) + } + .width('100%') + .height('100%') + } + .hideTitleBar(true) + .backgroundColor('#ffEFF1F4') + .onReady((context: NavDestinationContext) => { + this.pathStack = context.pathStack + this.requestData() + }) + } +} + +// 跳转页面入口函数 +@Builder +export function UserSettingPageBuilder() { + UserSettingPage() +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/view/ChatAitDialog.ets b/chatkit_ui/src/main/ets/view/ChatAitDialog.ets new file mode 100644 index 0000000..8e2f948 --- /dev/null +++ b/chatkit_ui/src/main/ets/view/ChatAitDialog.ets @@ -0,0 +1,209 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { + ChatKitClient, + keyExtensionAtAll, + TeamMemberCache, + TeamMemberWithUser, + TeamRepo, + typeExtensionAllowAll +} from '@nimkit/chatkit' +import { AvatarColorUntil, AvatarItem, CommonAvatar } from '@nimkit/common' +import { V2NIMTeam, V2NIMTeamMemberRole } from '@nimsdk/base' + +/** + * @弹窗 + */ +@CustomDialog +export struct ChatAitDialog { + animationDur: number = 300 + controller: CustomDialogController + @BuilderParam teamId: string + @BuilderParam team?: V2NIMTeam + onMemberSelected?: (member: TeamMemberWithUser) => void + onSelectedAll?: () => void + teamMemberCache: TeamMemberCache = TeamMemberCache.getInstance() + @State showFlag: Visibility = Visibility.Visible + //是否显示@All + @State showAll: boolean = false + + build() { + Column() { + + RelativeContainer() { + Image($r('sys.media.ohos_ic_public_arrow_down')) + .fillColor('#999999') + .width(16) + .height(16) + .margin({ + left: 20 + }) + .alignRules({ + left: { anchor: "__container__", align: HorizontalAlign.Start }, + center: { anchor: "__container__", align: VerticalAlign.Center }, + }) + .onClick(() => { + this.closeDialog() + }) + + Text($r('app.string.chat_message_ait_select_tips')) + .fontSize(16) + .fontColor('#ff333333') + .alignRules({ + middle: { anchor: "__container__", align: HorizontalAlign.Center }, + center: { anchor: "__container__", align: VerticalAlign.Center }, + }) + }.height(42) + + List() { + if (this.showAll) { + ListItem() { + Row() { + Stack() { + Image($r('app.media.ic_member_all')) + .width(24) + .height(24) + } + .borderRadius(20) + .backgroundColor('#337EFF') + .width(42) + .height(42) + .margin({ + right: 14 + }) + + Text($r('app.string.chat_team_ait_all')) + .fontColor('#ff333333') + .fontSize(16) + .width('70%') + + + } + .padding({ + left: 20, + right: 20, + top: 10, + bottom: 10 + }) + .onClick(() => { + this.closeDialog() + if (this.onSelectedAll) { + this.onSelectedAll() + } + }) + } + } + + ForEach(this.teamMemberCache.getAllMembers(), (member: TeamMemberWithUser) => { + if (member.getAccId() !== ChatKitClient.getLoginUserId()) { + ListItem() { + Row() { + CommonAvatar({ + item: new AvatarItem( + member.getAvatar(), + member.getAvatarName(), + AvatarColorUntil.getBackgroundColorById(member.getAccId()) + ) + }) + .width(42) + .height(42) + .margin({ + right: 14 + }) + + Text(member.getNickname()) + .fontColor('#ff333333') + .fontSize(16) + .width('70%') + + + } + .padding({ + left: 20, + right: 20, + top: 10, + bottom: 10 + }) + .onClick(() => { + this.closeDialog() + if (this.onMemberSelected) { + this.onMemberSelected(member) + } + }) + } + } + }) + + ListItem() { + Column() { + } + .height(42) + } + } + .listDirection(Axis.Vertical) + .onReachEnd(() => { + this.teamMemberCache.getMoreMemberList() + }) + .scrollBar(BarState.Off) + .width('100%') + .height('100%') + } + .width('100%') + .height('60%') + .backgroundColor('#ffFFFFFF') + .visibility(this.showFlag) + .transition(TransitionEffect.OPACITY.animation({ duration: this.animationDur }) + .combine(TransitionEffect.translate({ y: 100 }))) + } + + closeDialog() { + this.showFlag = Visibility.Hidden + setTimeout(() => { + this.controller.close() + }, this.animationDur) + } + + aboutToAppear(): void { + this.updateShowAitAllItem() + } + + /** + * 更新是否要显示@All的操作 + */ + async updateShowAitAllItem() { + let team = await this.teamMemberCache.getTeam() + if (team) { + if (TeamRepo.isGroupTeam(team)) { + this.showAll = true + return + } + if (team?.serverExtension) { + let obgExt = JSON.parse(team.serverExtension) as object | undefined + if (obgExt) { + if (obgExt[keyExtensionAtAll] === typeExtensionAllowAll) { + this.showAll = true + return + } + } else { + this.showAll = true + return + } + } else { + this.showAll = true + return + } + } + let mineMember = await this.teamMemberCache.getMineMember() + if (mineMember + && (mineMember.memberRole === V2NIMTeamMemberRole.V2NIM_TEAM_MEMBER_ROLE_OWNER + || mineMember.memberRole === V2NIMTeamMemberRole.V2NIM_TEAM_MEMBER_ROLE_MANAGER)) { + this.showAll = true + return + } + this.showAll = false + } +} diff --git a/chatkit_ui/src/main/ets/view/ChatInputView.ets b/chatkit_ui/src/main/ets/view/ChatInputView.ets new file mode 100644 index 0000000..e48048a --- /dev/null +++ b/chatkit_ui/src/main/ets/view/ChatInputView.ets @@ -0,0 +1,457 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { NEImageButton } from './NEImageButton'; +import { NEChatMoreOperationData, NEChatMoreOperationType } from '../model/NEChatMoreOperationData'; +import { NEEmojiManager, NEEmojiParseResult } from '../manager/NEEmojiManager'; +import { inputMethod } from '@kit.IMEKit'; +import { V2NIMTeam } from '@nimsdk/base'; +import { ChatAitDialog } from './ChatAitDialog'; +import { TeamMemberCache } from '@nimkit/chatkit/src/main/ets/cache/TeamMemberCache'; +import { accountAll, ChatKitClient, TeamMemberWithUser } from '@nimkit/chatkit'; +import { AitManager } from '../manager/ait/AitManager'; +import { getReplyMessageText, getReplyMessageTitle, parseMessageText, sliceMessageText } from '../common/MessageHelper'; +import { NIMMessageInfo } from '../model/NIMMessageInfo'; +import { ChatInfo } from '../model/ChatInfo'; + +export enum InputStyleType { + // 底部无内容 + None = 1, + // 展示表情输入框 + Emoji = 2, + // 长按录音UI展示 + Record = 3, + // 更多面板展示 + More = 4, +} + +@ComponentV2 +export struct NEChatInputView { + inputSpans: Array = [] + @Local inputContentLength: number = 0; + @Param @Require + onSendTextMessage?: () => void; + @Local operationMoreDataList: Array = Array(); + @Param + placeHolder: string = ''; + @Param @Require + onDidClickImage?: () => void; + @Param @Require + onDidClickAudio?: () => void; + @Param @Require + onDidClickEmoji?: () => void; + @Param @Require + onDidClickMore?: () => void; + @Param @Require + onDidClickCloseReply?: () => void; + @Param inputStyle: InputStyleType = InputStyleType.None; + @Param @Require + controller?: RichEditorController; + inputFontSize = 16; + @Param + mute: boolean = false + //群ID + @Param + teamId?: string = undefined + //群 + @Param + team?: V2NIMTeam = undefined + //空格符 + blank: string = ' '; + @Param + aitManager?: AitManager = undefined + //@的Span + @Param + builderSpans: AitEditorSpan[] = []; + @Param + replyMsg: NIMMessageInfo | undefined = undefined + @Param + chatInfo: ChatInfo | undefined = undefined + /** + * @弹框 + */ + chatAitDialogController: CustomDialogController = new CustomDialogController({ + builder: ChatAitDialog({ + teamId: this.teamId, + team: this.team, + onSelectedAll: this.onSelectedAll.bind(this), + onMemberSelected: this.onTeamMemberSelected.bind(this) + }), + openAnimation: { + curve: Curve.Linear, + playMode: PlayMode.Alternate + }, + autoCancel: true, + alignment: DialogAlignment.Bottom, + backgroundColor: Color.White, + height: '60%', + width: '100%', + customStyle: true + }) + + aboutToAppear(): void { + this.initData(); + } + + @Monitor('mute') + onMute() { + if (this.mute) { + this.controller?.deleteSpans() + this.controller?.stopEditing() + } + } + + // 初始化数据 + initData() { + const videoOperationData = new NEChatMoreOperationData(); + videoOperationData.operationTitle = "video"; + videoOperationData.type = NEChatMoreOperationType.Video; + videoOperationData.imageSource = "app.media.ic_public_chat_photo"; + this.operationMoreDataList.push(videoOperationData); + const fileOperationData = new NEChatMoreOperationData(); + fileOperationData.operationTitle = "file"; + fileOperationData.type = NEChatMoreOperationType.File; + fileOperationData.imageSource = "app.media.ic_public_chat_file"; + this.operationMoreDataList.push(fileOperationData); + NEEmojiManager.instance.setup(); + } + + /** + * @所有人 + */ + onSelectedAll() { + //输入框添加@信息 + let aitValue = getContext().resourceManager.getStringByNameSync('chat_team_ait_all') + this.blank + + //输入框添加@信息 + if (this.controller) { + const controller = this.controller; + const offset = controller.getCaretOffset(); + const range: RichEditorRange = { start: offset - 1, end: offset }; + controller.deleteSpans(range); + const spanOffset = offset - 1 + controller.addBuilderSpan(() => this.AtSpan(aitValue), { + offset: spanOffset + }); + let aitSpan: AitEditorSpan = { + spanIndex: spanOffset, + accountId: accountAll, + value: '@' + aitValue + } + let index = this.builderSpans.findIndex((e) => e.spanIndex >= spanOffset) + if (index < 0) { + this.builderSpans.push(...[aitSpan]) + } else { + this.builderSpans.splice(index, 0, aitSpan) + } + + } + } + + /** + * @单个人 + * @param member + */ + onTeamMemberSelected(member: TeamMemberWithUser) { + //输入框添加@信息 + let aitValue = member.getAitName() + this.blank + if (this.controller) { + const controller = this.controller; + const offset = controller.getCaretOffset(); + const range: RichEditorRange = { start: offset - 1, end: offset }; + controller.deleteSpans(range); + const spanOffset = offset - 1 + controller.addBuilderSpan(() => this.AtSpan(aitValue), { + offset: spanOffset + }); + let aitSpan: AitEditorSpan = { + spanIndex: spanOffset, + accountId: member.getAccId(), + value: '@' + aitValue, + } + let index = this.builderSpans.findIndex((e) => e.spanIndex >= spanOffset) + if (index < 0) { + this.builderSpans.push(...[aitSpan]) + } else { + this.builderSpans.splice(index, 0, aitSpan) + } + } + } + + @Builder + AtSpan(nickname: string) { + Text(`@${nickname}`) + .fontColor('#FF337EFF'); + } + + /** + * 显示@的弹框 + */ + async showAitDialog() { + let teamMemberCache = TeamMemberCache.getInstance() + if (teamMemberCache.needFetchMember()) { + await teamMemberCache.getMemberList() + } + this.chatAitDialogController.open() + } + + /** + * 是否是@的span + * @param span + * @returns + */ + isAitEditorSpan(span: RichEditorImageSpanResult | RichEditorTextSpanResult, offset?: number): boolean { + if (offset !== undefined && offset >= 0) { + const buildSpan = this.builderSpans.find(e => e.spanIndex === offset) + if (!buildSpan) { + return false + } + } + + return !(span as RichEditorTextSpanResult).value && + !(span as RichEditorImageSpanResult).valueResourceStr?.toString().replaceAll(' ', ''); + } + + /** + * 是否有选中 + * @param controller + * @returns + */ + hasSelection(controller: RichEditorController) { + const selection = controller.getSelection().selection; + return selection[0] !== selection[1]; + } + + /** + * 删除@Span + */ + deleteAitEditorSpan() { + const controller = this.controller; + if (controller) { + const range: RichEditorRange = { end: controller.getCaretOffset() }; + const index = this.getAitEditorSpanCount(controller, range) - 1; + this.builderSpans.splice(index, 1); + } + } + + /** + * 获取@Span的内容 + * @param controller + * @param range + * @returns + */ + getAitEditorSpanCount(controller: RichEditorController, range: RichEditorRange) { + return controller.getSpans(range).reduce((count: number, span) => { + return this.isAitEditorSpan(span) ? count + 1 : count; + }, 0); + } + + /** + * 删除操作 + */ + aboutToDelete: (value: RichEditorDeleteValue) => boolean = value => { + ChatKitClient.logger?.debug('NEChatInputView', 'aboutToDelete') + const controller = this.controller; + const span = value.richEditorDeleteSpans[0]; + if (controller && span && this.isAitEditorSpan(span, value.offset)) { + this.deleteAitEditorSpan(); + } + return true; + } + + get hasInput(): boolean { + return this.inputContentLength > 0; + } + + build() { + RelativeContainer() { + Column() { + // if (!this.mute && this.replyMsg) { + // Row() { + // Image($r('app.media.ic_chat_reply_close')).height(20).width(20).margin({ right: 12 }) + // .onClick(() => { + // this.onDidClickCloseReply?.() + // }) + // Text() { + // if (this.chatInfo) { + // Span(getReplyMessageTitle(this.replyMsg, this.chatInfo)) + // .fontSize($r('app.float.chat_desc_text_font_size')) + // .textCase(TextCase.Normal) + // .fontColor($r('app.color.color_chat_desc')) + // } + // + // ForEach(sliceMessageText(parseMessageText(getReplyMessageText(this.replyMsg)), 30), + // (item: NEEmojiParseResult) => { + // if (item.text) { + // Span(item.text) + // .fontSize($r('app.float.chat_desc_text_font_size')) + // .textCase(TextCase.Normal) + // .fontColor($r('app.color.color_chat_desc')) + // } else if (item.emoji) { + // ImageSpan($rawfile(`emoji/${item.emoji.file}`)).width('16') + // .height('16') + // .objectFit(ImageFit.Fill) + // .verticalAlign(ImageSpanAlignment.CENTER) + // } + // }) + // } + // .width('90%') + // .maxLines(1) + // .textOverflow({ overflow: TextOverflow.Ellipsis }) + // .ellipsisMode(EllipsisMode.END) + // .fontColor($r('app.color.color_chat_desc')) + // .fontSize($r('app.float.chat_desc_text_font_size')) + // } + // .height(32) + // .justifyContent(FlexAlign.Start) + // .width('100%') + // } + + + + Row({ space: 0 }) { + NEImageButton({ + image: $r('app.media.ic_public_chat_speaker'), onDidClick: (): void => { + console.log("net ease click speaker"); + if (this.onDidClickAudio) { + inputMethod.getController().stopInputSession(); + this.onDidClickAudio() + } + } + }) + .width(27) + .height(27) + .margin({right:8}) + RichEditor({ controller: this.controller }) + .backgroundColor(this.mute ? $r('app.color.color_chat_mute_bg') : $r('app.color.color_chat_page_bg')) + .height(40) + .layoutWeight(1) + .placeholder(this.mute ? $r('app.string.chat_team_all_mute') : + $r('app.string.chat_send_tips')) + .onWillChange((value: RichEditorChangeValue) => { + console.debug(`Response ChatInputView onWillChange before: ${value.rangeBefore}`) + return true + }) + .aboutToDelete(this.aboutToDelete) + .onDidChange((rangeBefore: TextRange, rangeAfter: TextRange) => { + const spans = this.controller?.getSpans() ?? []; + this.inputSpans = spans; + // 统计所有文本span的总长度 + this.inputContentLength = spans + .map(span => (span as RichEditorTextSpanResult).value?.length ?? 0) + .reduce((a, b) => a + b, 0); + }) + .onSelectionChange((range: RichEditorRange) => { + console.debug(`Response ChatInputView onSelectionChange ${range.start} ~ ${range.end}`) + }) + .onIMEInputComplete((result: RichEditorTextSpanResult) => { + //记录输入内容 + this.inputSpans = this.controller?.getSpans() ?? [] + let value = result.value + let indexStart: number = result.offsetInSpan[0] + //span长度 + let spanLen = result.offsetInSpan[1] - result.offsetInSpan[0] + console.debug(`Response onIMEInputComplete value = ${value} index = ${indexStart} len = ${spanLen}}`) + if (this.teamId && this.teamId.length > 0) { + //判断span 长度,解决复制粘贴问题 + if (spanLen === 1 && value.charAt(indexStart) === "@") { + //输入@ + this.showAitDialog() + } + } + }) + .borderRadius(8) + .id('chat_edit_input') + .onSubmit((enterKey: EnterKeyType, event: SubmitEvent) => { + if (enterKey == EnterKeyType.Send) { + if (this.onSendTextMessage) { + this.onSendTextMessage(); + event.keepEditableState() + } + } + }) + .enterKeyType(EnterKeyType.Send) + // 右侧按钮区域 + if (this.hasInput) { + NEImageButton({ + image: $r("app.media.ic_public_chat_emoji"), onDidClick: (): void => { + console.log("net ease click emoji"); + if (this.onDidClickEmoji) { + inputMethod.getController().stopInputSession(); + this.onDidClickEmoji() + } + } + }) + .width(27) + .height(27) + .margin({right:8,left:8}) + Text("发送") + .width(42) + .height(30) + .margin({right:8,left:8}) + .fontSize(14) + .textAlign(TextAlign.Center) + .fontColor(Color.White) + .backgroundColor('#08C163') + .borderRadius(6) + .onClick(() => { + if (this.onSendTextMessage) { + this.onSendTextMessage(); + } + }) + } else { + NEImageButton({ + image: $r("app.media.ic_public_chat_emoji"), onDidClick: (): void => { + console.log("net ease click emoji"); + if (this.onDidClickEmoji) { + inputMethod.getController().stopInputSession(); + this.onDidClickEmoji() + } + } + }) + .width(27) + .height(27) + .margin({right:8,left:8}) + NEImageButton({ + image: $r("app.media.ic_public_chat_more"), onDidClick: (): void => { + console.log("net ease click more"); + if (this.onDidClickMore) { + inputMethod.getController().stopInputSession(); + this.onDidClickMore() + } + } + }) + .width(27) + .height(27) + } + } + .width('100%') + .height(60) + .id("action_button") + }.padding({ left: 8, right: 8 }) + + // if (this.mute) { + // Column() + // .alignRules({ + // left: { anchor: "__container__", align: HorizontalAlign.Start }, + // right: { anchor: "__container__", align: HorizontalAlign.End }, + // top: { anchor: "__container__", align: VerticalAlign.Top }, + // bottom: { anchor: "__container__", align: VerticalAlign.Bottom } + // }) + // .backgroundColor($r('app.color.color_chat_mute_bg')) + // .opacity(0.4) + // .width('100%') + // .height('100%') + // } + } + } +} + +export interface AitEditorSpan { + spanIndex: number, + accountId: string + value: string +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/view/ChatMoreOperationLayout.ets b/chatkit_ui/src/main/ets/view/ChatMoreOperationLayout.ets new file mode 100644 index 0000000..508d2f1 --- /dev/null +++ b/chatkit_ui/src/main/ets/view/ChatMoreOperationLayout.ets @@ -0,0 +1,38 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { OperationItem } from './OperationItemLayout'; +import { NEChatMoreOperationData } from '../model/NEChatMoreOperationData'; + +@ComponentV2 +export struct NEChatMoreOperation { + // 面板回调 + @Param @Require dataList: Array; + @Param @Require onDidClick?: (data: NEChatMoreOperationData) => void; + + build() { + GridRow({ + breakpoints: { + reference: BreakpointsReference.WindowSize + } + }) { + ForEach(this.dataList, (data: NEChatMoreOperationData) => { + GridCol({ span: 3 }) { + Row() { + OperationItem({ + operationData: data, onItemClick: (data) => { + if (this.onDidClick) { + this.onDidClick(data); + } + } + }) + }.width("100%").height(90) + }.backgroundColor(Color.White) + }) + } + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/view/ChatMultiSelectView.ets b/chatkit_ui/src/main/ets/view/ChatMultiSelectView.ets new file mode 100644 index 0000000..b9bbfb9 --- /dev/null +++ b/chatkit_ui/src/main/ets/view/ChatMultiSelectView.ets @@ -0,0 +1,74 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +@Entry +@ComponentV2 +export struct ChatMultiSelectView { + @Param + onMultiForward?: (event: ClickEvent) => void = undefined + @Param + onSingleForward?: (event: ClickEvent) => void = undefined + @Param + onMultiDelete?: (event: ClickEvent) => void = undefined + @Param + isEnable?: boolean = true + + build() { + Row() { + Column() { + Image(this.isEnable ? $r('app.media.ic_chat_select_multi_forward') : + $r("app.media.ic_chat_select_multi_forward_dis")).width(48).height(48).margin({ top: 20 }) + Text($r('app.string.chat_operation_multi_forward')) + .fontColor($r('app.color.color_chat_sub_title')) + .fontSize($r('app.float.chat_desc_text_font_size')) + .margin({ top: 8 }) + }.height('100%').alignItems(HorizontalAlign.Center).width(60).onClick((event) => { + if (this.isEnable) { + this.onMultiForward?.(event) + } + }) + + Column() { + Image(this.isEnable ? $r("app.media.ic_chat_select_forward") : $r("app.media.ic_chat_select_forward_dis")) + .width(48) + .height(48) + .margin({ top: 20 }) + Text($r('app.string.chat_operation_single_forward')) + .fontColor($r('app.color.color_chat_sub_title')) + .fontSize($r('app.float.chat_desc_text_font_size')) + .margin({ top: 8 }) + }.height('100%').alignItems(HorizontalAlign.Center).width(60).onClick((event) => { + if (this.isEnable) { + this.onSingleForward?.(event) + } + }) + + Column() { + Image(this.isEnable ? $r('app.media.ic_chat_select_delete') : $r("app.media.ic_chat_select_delete_dis")) + .width(48) + .height(48) + .margin({ top: 20 }) + Text($r('app.string.chat_operation_delete')) + .fontColor($r('app.color.color_chat_sub_title')) + .fontSize($r('app.float.chat_desc_text_font_size')) + .margin({ top: 8 }) + }.height('100%').alignItems(HorizontalAlign.Center).width(60).onClick((event) => { + if (this.isEnable) { + this.onMultiDelete?.(event) + } + }) + } + .width('100%') + .height(100) + .backgroundColor($r('app.color.color_chat_op_bg')) + .justifyContent(FlexAlign.SpaceAround) + .padding({ + left: 20, + right: 20, + }) + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/view/ForwardMessageDialog.ets b/chatkit_ui/src/main/ets/view/ForwardMessageDialog.ets new file mode 100644 index 0000000..dcb8f2c --- /dev/null +++ b/chatkit_ui/src/main/ets/view/ForwardMessageDialog.ets @@ -0,0 +1,160 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { ConversationSelectModel } from '@nimkit/chatkit/src/main/ets/model/ConversationSelectModel' +import { AvatarColorUntil, AvatarItem, CommonAvatar, NECommonUtils } from '@nimkit/common' + +/** + * 转发弹框 + */ +@CustomDialog +export struct ForwardMessageDialog { + controller?: CustomDialogController + conversationList: ConversationSelectModel[] = [] + leaveText?: string // 留言 + forwardType: ResourceStr = $r('app.string.chat_operation_forward') // 转发类型:转发、合并转发、逐条转发 + currentConversationName?: string + sendForwardMsg?: (leaveText: string | undefined) => void + + build() { + Column() { + Text($r('app.string.chat_send_tips', "")) + .fontSize(16) + .padding({ top: 16, left: 16 }) + .height(34) + .width('100%') + + Stack({ alignContent: Alignment.Start }) { + List({ space: 9 }) { + ForEach(this.conversationList, (item: ConversationSelectModel) => { + ListItem() { + CommonAvatar({ + item: new AvatarItem(item.avatar, NECommonUtils.shortName(item.name), + AvatarColorUntil.getBackgroundColorById(item.conversationId ?? "")), + roundRadius: 16 + }) + .height(32) + .width(32) + } + .width(32) + .height(32) + }) + } + .listDirection(Axis.Horizontal) + .scrollBar(BarState.Off) + .width('100%') + .height(48) + .backgroundColor(Color.White) + .padding({ + top: 16, + left: 16, + right: 16 + }) + + if (this.conversationList.length === 1) { + Text(this.conversationList[0].name) + .fontSize(14) + .height(18) + .maxLines(1) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .ellipsisMode(EllipsisMode.END) + .margin({ + top: 18, + left: 56, + right: 12 + }) + } + } + + Column() { + Text() { + Span('[') + Span(this.forwardType) + Span(']') + Span($r('app.string.chat_operation_forward_desc', this.currentConversationName)) + } + .alignSelf(ItemAlign.Start) + .fontSize(14) + .height(16) + .maxLines(1) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .ellipsisMode(EllipsisMode.CENTER) + .margin({ + top: 8, + left: 12, + right: 12 + }) + } + .width(244) + .height(32) + .borderRadius(4) + .backgroundColor('#F2F4F5') + .margin({ + top: 12, + left: 16, + right: 16 + }) + + TextInput({ placeholder: $r('app.string.forward_dialog_leave_message') }) + .fontSize(14) + .height(32) + .placeholderColor('#A6ADB6') + .placeholderFont({ size: 14 }) + .backgroundColor(Color.White) + .borderRadius(4) + .borderColor('#E1E6E8') + .borderWidth(1) + .onChange((value: string, previewText?: PreviewText) => { + this.leaveText = value + }) + .margin({ + top: 12, + left: 16, + right: 16 + }) + + Row() + .height(1) + .width('100%') + .backgroundColor("#EFF1F4") + .margin({ top: 24 }) + + Row() { + Button($r('app.string.mine_edit_cancel'), { type: ButtonType.Normal }) + .fontSize(17) + .fontColor("#666666") + .backgroundColor(Color.White) + .width(135) + .height(52) + .onClick(() => { + this.controller?.close() + }) + + Column() + .width(1) + .height('100%') + .backgroundColor("#EFF1F4") + + Button($r('app.string.chat_send'), { type: ButtonType.Normal }) + .fontSize(17) + .fontColor("#007AFF") + .backgroundColor(Color.White) + .width(135) + .height(52) + .onClick(() => { + this.sendForwardMsg?.(this.leaveText) + this.controller?.close() + }) + } + .height(52) + .width(270) + .alignItems(VerticalAlign.Center) + } + .height(140) + .width(270) + .backgroundColor(Color.White) + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/view/MessageAudioItemView.ets b/chatkit_ui/src/main/ets/view/MessageAudioItemView.ets new file mode 100644 index 0000000..7faacf8 --- /dev/null +++ b/chatkit_ui/src/main/ets/view/MessageAudioItemView.ets @@ -0,0 +1,113 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { getAudioMessageText, getAudioMessageWidth } from '../common/MessageHelper' +import { V2NIMMessageAudioAttachment } from '@nimsdk/base' +import { NIMMessageInfo } from '../model/NIMMessageInfo' +import { AudioPlayerManager } from '../manager/AudioPlayerManager' +import { ChatConst } from '../constants/ChatConst' +import { MessageItemClick } from './MessageItemClick' + +@ComponentV2 +export struct MessageAudioItemView { + @Param + @Require + message: NIMMessageInfo + @BuilderParam + onMessageClick: MessageItemClick | undefined + @BuilderParam + isReceiveStyle: boolean | undefined + @Local + receiveSoundIndex: number = 2 + sendSoundImages = [ + $r('app.media.ic_sound_from_1'), + $r('app.media.ic_sound_from_2'), + $r('app.media.ic_sound_from_3') + ] + @Local + sendSoundIndex: number = 2 + receiveSoundImages = [ + $r('app.media.ic_sound_to_1'), + $r('app.media.ic_sound_to_2'), + $r('app.media.ic_sound_to_3') + ] + //定时器id + intervalId?: number + + aboutToDisappear(): void { + AudioPlayerManager.instance.stopPlayAll() + } + + onPlayStart: () => void = () => { + this.startPlayAni() + } + onPlayFinished: () => void = () => { + clearInterval(this.intervalId) + this.receiveSoundIndex = 2 + this.sendSoundIndex = 2 + } + + showReceiveStyle(): boolean { + return this.message.isReceiveMessage() || (this.isReceiveStyle !== undefined && this.isReceiveStyle) + } + + build() { + Row() { + if (this.showReceiveStyle()) { + Image(this.sendSoundImages[this.sendSoundIndex]).objectFit(ImageFit.Auto).width(28).height(28) + Text(getAudioMessageText(this.message)) + .margin({ left: 8 }).maxLines(1) + .fontColor('#ff333333') + .fontSize(14) + } else { + Text(getAudioMessageText(this.message)) + .margin({ right: 8 }).maxLines(1) + .fontColor('#ff333333') + .fontSize(14) + Image(this.receiveSoundImages[this.receiveSoundIndex]).objectFit(ImageFit.Auto).width(28).height(28) + } + } + .justifyContent(this.showReceiveStyle() ? FlexAlign.Start : FlexAlign.End) + .margin({ + left: 12, + top: 4, + bottom: 4, + right: 12 + }) + .onClick(() => { + clearInterval(this.intervalId) + this.intervalId = undefined + let audioManager = AudioPlayerManager.instance + if (this.message.message.attachment) { + audioManager.avPlayerLive((this.message.message.attachment as V2NIMMessageAudioAttachment).url ?? '', + this.onPlayStart, + this.onPlayFinished + ) + } + }) + // .gesture(LongPressGesture({ duration: 300 }).onAction((event: GestureEvent) => { + // this.onMessageClick?.onItemLongClick?.(event, this.message) + // })) + .width(getAudioMessageWidth(this.message)) + .height(ChatConst.audioMessageWidth) + } + + startPlayAni() { + this.intervalId = setInterval(() => { + if (this.sendSoundIndex === 2) { + this.sendSoundIndex = 0 + } else { + this.sendSoundIndex++ + } + if (this.receiveSoundIndex === 2) { + this.receiveSoundIndex = 0 + } else { + this.receiveSoundIndex++ + } + }, 600); + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/view/MessageComponent.ets b/chatkit_ui/src/main/ets/view/MessageComponent.ets new file mode 100644 index 0000000..d3c9bf7 --- /dev/null +++ b/chatkit_ui/src/main/ets/view/MessageComponent.ets @@ -0,0 +1,568 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { NIMMessageInfo } from '../model/NIMMessageInfo'; +import { V2NIMConversationType, V2NIMMessageSendingState, V2NIMMessageType } from '@nimsdk/base'; +import { ChatInfo } from '../model/ChatInfo'; +import { getNotificationMessageContent, getPinMessagesTips } from '../common/MessageHelper'; +import { AvatarColorUntil, AvatarItem, CommonAvatar } from '@nimkit/common'; +import { messageContent } from './MessageComponentBuilder'; +import { MessageItemClick } from './MessageItemClick'; +import { ChatKitConfig } from '../ChatKitConfig'; + +/** + * 消息组件按照UI样式,划分为发送消息组件、接收消息组件、通知消息组件和提示消息组件 + */ +@ComponentV2 +export struct MessageComponent { + @Require + @Param + message: NIMMessageInfo | undefined = undefined; + @Require + @Param + chatInfo: ChatInfo + @Param + onMessageClick: MessageItemClick | undefined = undefined + @Param + onMoreButtonClick?: (event: ClickEvent, msg: NIMMessageInfo | undefined) => void = undefined + @Param + onPinItemClick?: (event: ClickEvent, msg: NIMMessageInfo | undefined) => void = undefined + @Param + showSelect: boolean = false; + + build() { + if (this.message?.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_NOTIFICATION) { + NotificationMessageComponent({ + message: this.message, + messageContent: getNotificationMessageContent(this.message, this.chatInfo) + }); + } else if (this.message?.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_TIPS) { + TipsMessageComponent({ message: this.message }); + } else if (this.message?.isReceiveMessage()) { + ReceiveMessageComponent({ + message: this.message, + chatUserInfo: this.chatInfo, + onMessageClick: this.onMessageClick, + showRadio: this.showSelect, + }); + } else { + SenderMessageComponent({ + message: this.message, + chatUserInfo: this.chatInfo, + onMessageClick: this.onMessageClick, + showRadio: this.showSelect, + }); + } + } +} + +// 发送消息组件 +@ComponentV2 +export struct SenderMessageComponent { + AlignLeft: Record> = { + 'top': { 'anchor': '__container__', 'align': VerticalAlign.Top }, + 'left': { 'anchor': '__container__', 'align': HorizontalAlign.Start } + } + AlignRight: Record> = { + 'top': { 'anchor': '__container__', 'align': VerticalAlign.Top }, + 'right': { 'anchor': '__container__', 'align': HorizontalAlign.End } + } + @Require + @Param + message: NIMMessageInfo | undefined = undefined + @Require + @Param + chatUserInfo: ChatInfo | undefined = undefined + @Param + onMessageClick: MessageItemClick | undefined = undefined + @Param + showRadio: boolean = false + @Local + radioOn: boolean = false + + build() { + Column() { + if (this.message !== undefined) { + if (this.message?.getMessageTime() !== '') { + Row() { + Text(this.message?.getMessageTime()).fontColor($r('app.color.color_chat_desc')) + .fontSize($r('app.float.chat_desc_text_font_size')) + }.justifyContent(FlexAlign.Center).width('100%').height(20) + } + Row() { + if (this.showRadio) { + if (this.message.isRevokeMsg) { + Text().margin({ top: (this.message?.getMessageHeight(this.getUIContext()) - 20) / 2, left: 16 }) + .height('20') + .width('20') + } else { + Toggle({ type: ToggleType.Checkbox, isOn: this.message.isSelectedMsg }) + .margin({ top: (this.message?.getMessageHeight(this.getUIContext()) - 20) / 2, left: 16 }) + .height('20') + .width('20') + .onChange((value: boolean) => { + this.onMessageClick?.onMultiSelect?.(value, this.message) + this.radioOn = value; + }) + } + } + Column() { + Row() { + if (this.message.message.sendingState === V2NIMMessageSendingState.V2NIM_MESSAGE_SENDING_STATE_FAILED) { + Image($r("app.media.ic_chat_message_status_fail")).width(16).height(16) + .alignRules({ + bottom: { anchor: "msgContainer", align: VerticalAlign.Bottom }, + right: { anchor: "msgContainer", align: HorizontalAlign.Start } + }).margin({ right: 6 }) + .onClick((event: ClickEvent) => { + if (this.onMessageClick) { + this.onMessageClick?.onSendFailClick?.(event, this.message) + } + }) + } else if (this.message.message.sendingState === + V2NIMMessageSendingState.V2NIM_MESSAGE_SENDING_STATE_SENDING) { + Progress({ value: 0, total: 100, type: ProgressType.Ring }) + .width(16) + .height(16) + .color($r('app.color.color_chat_send')) + .style({ strokeWidth: 3, status: ProgressStatus.LOADING }) + .alignRules({ + bottom: { anchor: "msgContainer", align: VerticalAlign.Bottom }, + right: { anchor: "msgContainer", align: HorizontalAlign.Start } + }) + .margin({ right: 6 }) + } else if (this.message.message.sendingState === + V2NIMMessageSendingState.V2NIM_MESSAGE_SENDING_STATE_SUCCEEDED && ChatKitConfig.messageReadState + && this.message.configReadReceipt()) { + if (!this.message.isRevokeMsg) { + if (this.message.message.conversationType == V2NIMConversationType.V2NIM_CONVERSATION_TYPE_P2P) { + if (this.message.readCount >= 0) { + // Image(this.message.readCount == 0 ? $r('app.media.ic_chat_read_status_unread') : + // $r('app.media.ic_chat_read_status_read')) + // .width(16) + // .height(16) + // .alignRules({ + // bottom: { anchor: "msgContainer", align: VerticalAlign.Bottom }, + // right: { anchor: "msgContainer", align: HorizontalAlign.Start } + // }) + // .margin({ right: 6 }) + //去掉已读未读 + } + + } else { + if (this.message.readCount !== -1) { + if (this.message.unReadCount == 0) { + // Image(this.message.readCount == 0 ? $r('app.media.ic_chat_read_status_unread') : + // $r('app.media.ic_chat_read_status_read')).width(16).height(16) + // .alignRules({ + // bottom: { anchor: "msgContainer", align: VerticalAlign.Bottom }, + // right: { anchor: "msgContainer", align: HorizontalAlign.Start } + // }).margin({ right: 6 }) + //去掉已读未读 + } else { + Stack({}) { + Circle({ width: 15, height: 15 }).fill($r('app.color.color_chat_send')) + Progress({ + value: this.message.readCount, + total: (this.message.readCount + this.message.unReadCount), + type: ProgressType.Eclipse + }) + .width(13.8) + .height(13.8) + .color($r('app.color.color_chat_send')) + .backgroundColor($r('app.color.color_chat_page_bg')) + .style({ + strokeWidth: 1 + }) + .onClick((event: ClickEvent) => { + this.onMessageClick?.onReadReceiptClick?.(event, this.message) + }) + } + .alignRules({ + bottom: { anchor: "msgContainer", align: VerticalAlign.Bottom }, + right: { anchor: "msgContainer", align: HorizontalAlign.Start } + }) + .margin({ right: 6 }) + .onClick((event: ClickEvent) => { + this.onMessageClick?.onReadReceiptClick?.(event, this.message) + }) + } + } + } + } + } + messageContent({ + message: this.message, + onMessageClick: this.onMessageClick, + chatInfo: this.chatUserInfo + }) + .backgroundColor($r('app.color.color_chat_send_message_bg')) + .borderRadius(6) + // .backgroundImage($r('app.media.green_bg')) + // .backgroundImageSize({ width: '100%', height: '100%' }) // 背景覆盖整个组件区域 + // .backgroundImageResizable({ + // slice: { top: 100, left: 50, bottom: 2, right: 60 } // 圆角区域不拉伸 + // + // }) + .onClick((event: ClickEvent) => { + if (this.showRadio) { + this.radioOn = !this.radioOn + } + this.onMessageClick?.onItemClick?.(event, this.message) + }) + .margin({ top: 4, right: 6 }) + .flexShrink(1) + .id("msgContainer") + } + .justifyContent(FlexAlign.End) + .alignItems(VerticalAlign.Bottom) + .margin({ right: 8 }) + .width('100%') + //.height(this.message.getMessageHeight(this.getUIContext())) + .gesture(LongPressGesture() + .onAction((event: GestureEvent) => { + this.onMessageClick?.onItemLongClick?.(event, this.message) + })) + + if (this.message?.isPinMsg) { + Row() { + Image($r('app.media.ic_chat_message_pin')).height(12).width(12).margin({ top: 6 }) + Text(getPinMessagesTips(this.message, this.chatUserInfo)) + .fontSize(12) + .fontColor($r('app.color.color_chat_pin_tips')) + .margin({ top: 6, left: 6 }) + .maxLines(1) + .ellipsisMode(EllipsisMode.END) + }.width('100%').height('26vp').margin({ bottom: 6, right: 12 }).justifyContent(FlexAlign.End) + } + }.alignItems(HorizontalAlign.End).margin({ left: 8 }).width('75%') + + CommonAvatar({ + item: new AvatarItem(this.chatUserInfo != null ? + this.chatUserInfo?.getCurrentUserAvatarUrl() : '', + this.chatUserInfo?.getCurrentUserAvatarName() ?? '', + AvatarColorUntil.getBackgroundColorById(this.message.message.senderId), + ), + longPressGesture: () => { + this.onMessageClick?.onAvatarLongPress?.( this.message) + } + }) + .width(36) + .height(36) + .borderRadius(20) + .margin({ right: 16, top: 6 }) + .id("mineAvatar") + .onClick(() => { + this.onMessageClick?.onAvatarClick?.(this.message) + }) + } + .width('100%') + .backgroundColor(this.message.isPinMsg ? $r('app.color.color_chat_pin_bg') : + $r('app.color.color_chat_page_bg')) + .justifyContent(FlexAlign.End) + .alignItems(VerticalAlign.Top) + } + } + .width('100%').margin({ top: 6, bottom: 6 }) + } +} + +// 接收消息组件 +@ComponentV2 +export struct ReceiveMessageComponent { + AlignLeft: Record> = { + 'top': { 'anchor': '__container__', 'align': VerticalAlign.Top }, + 'left': { 'anchor': '__container__', 'align': HorizontalAlign.Start } + } + @Require + @Param + message: NIMMessageInfo | undefined = undefined + @Require + @Param + chatUserInfo: ChatInfo | undefined = undefined + @Param + showRadio: boolean = false + @Param + onMessageClick: MessageItemClick | undefined = undefined + @Local + radioOn: boolean = false + + build() { + Column() { + if (this.message !== undefined) { + if (this.message?.getMessageTime() !== '') { + Row() { + Text(this.message?.getMessageTime()) + .fontColor($r('app.color.color_chat_desc')) + .fontSize($r('app.float.chat_desc_text_font_size')) + }.justifyContent(FlexAlign.Center).width('100%').height(20) + .margin({ top: 6 }) + } + Row() { + if (this.showRadio) { + if (this.message.isRevokeMsg) { + Text().margin({ top: (this.message?.getMessageHeight(this.getUIContext()) - 20) / 2, left: 16 }) + .height('20') + .width('20') + } else { + Toggle({ type: ToggleType.Checkbox, isOn: this.message.isSelectedMsg }) + .margin({ top: (this.message?.getMessageHeight(this.getUIContext()) - 20) / 2, left: 16 }) + .height('20') + .width('20') + .onChange((value: boolean) => { + this.onMessageClick?.onMultiSelect?.(value, this.message) + // this.radioOn = value; + }) + } + } + CommonAvatar({ + item: new AvatarItem(this.chatUserInfo != null ? + this.chatUserInfo?.getChatUserAvatarUrl(this.message?.message) : '', + this.chatUserInfo?.getChatUserAvatarName(this.message?.message) ?? '', + AvatarColorUntil.getBackgroundColorById(this.message?.message.senderId ?? '') + ), + longPressGesture: () => { + this.onMessageClick?.onAvatarLongPress?.( this.message) + } + }) + .width(36) + .height(36) + .borderRadius(20) + .margin({ left: 16, top: 6 }) + .id("otherAvatar") + .onClick(() => { + this.onMessageClick?.onAvatarClick?.(this.message) + }) + Column() { + if (this.message?.message.conversationType !== V2NIMConversationType.V2NIM_CONVERSATION_TYPE_P2P) { + Text(this.chatUserInfo?.getChatUserShowName(this.message?.message)) + .fontColor($r('app.color.color_chat_sub_title')) + .fontSize($r('app.float.chat_subtitle_text_font_size')) + .maxLines(1) + .width(150) + .textAlign(TextAlign.Start) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .ellipsisMode(EllipsisMode.END) + .height(25) + } + + Column() { + messageContent({ + message: this.message, + onMessageClick: this.onMessageClick, + chatInfo: this.chatUserInfo + }) + .backgroundColor($r('app.color.color_chat_receive_message_bg')) + .borderRadius(6) + .id("msgContainer") + .alignRules(this.AlignLeft) + .onClick((event: ClickEvent) => { + if (this.showRadio) { + this.radioOn = !this.radioOn + } + this.onMessageClick?.onItemClick?.(event, this.message) + }) + } + .width('100%') + //.height(this.message?.getMessageHeight(this.getUIContext())) + .alignItems(HorizontalAlign.Start) + .justifyContent(FlexAlign.Center) + .gesture(LongPressGesture().onAction((event: GestureEvent) => { + this.onMessageClick?.onItemLongClick?.(event, this.message) + })) + + if (this.message?.isPinMsg) { + Row() { + Image($r('app.media.ic_chat_message_pin')).height(12).width(12).margin({ top: 6 }) + Text(getPinMessagesTips(this.message, this.chatUserInfo)) + .fontSize(12) + .fontColor($r('app.color.color_chat_pin_tips')) + .margin({ top: 6, left: 6 }) + .maxLines(1) + .ellipsisMode(EllipsisMode.CENTER) + }.width('100%').height('26vp') + } + }.alignItems(HorizontalAlign.Start).margin({ left: 8, top: 6 }).width('68%') + } + .width('100%') + .alignItems(VerticalAlign.Top) + .backgroundColor(this.message?.isPinMsg ? $r('app.color.color_chat_pin_bg') : + $r('app.color.color_chat_page_bg')) + .id('itemContainer') + } + }.width('100%').padding({ top: 6, bottom: 6 }) + } +} + +// 通知消息组件 +@ComponentV2 +export struct NotificationMessageComponent { + @Require + @Param + message: NIMMessageInfo | null = null; + @Require + @Param + messageContent: string; + + build() { + Column() { + if (this.message !== null && this.messageContent !== '') { + if (this.message?.getMessageTime() !== '') { + Text(this.message?.getMessageTime()) + .fontColor($r('app.color.color_chat_desc')) + .fontSize($r('app.float.chat_desc_text_font_size')) + .textAlign(TextAlign.Center) + .width('100%') + .height(20) + } + Row() { + Text(this.messageContent ?? $r('app.string.chat_message_empty_notification_text')) + .fontColor($r('app.color.color_chat_sub_title')) + .fontSize($r('app.float.chat_desc_text_font_size')) + .padding({ + left: 6, + top: 6, + bottom: 6, + right: 6 + }) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .ellipsisMode(EllipsisMode.END) + } + .width('100%') + // .height(this.message?.getMessageHeight(this.getUIContext())) + .padding({ top: 6, bottom: 6 }) + .justifyContent(FlexAlign.Center) + .borderRadius(6) + .id("msgContainer") + } + }.margin({ left: 60, right: 60 }) + } +} + +// 提示消息组件 +@ComponentV2 +export struct TipsMessageComponent { + @Require + @Param + message: NIMMessageInfo | null = null; + + build() { + Column() { + if (this.message !== null && this.message.message.text !== undefined && this.message.message.text !== '') { + if (this.message?.getMessageTime() !== '') { + Row() { + Text(this.message?.getMessageTime()).fontColor($r('app.color.color_chat_desc')) + .fontSize($r('app.float.chat_desc_text_font_size')) + }.justifyContent(FlexAlign.Center).width('100%').height(20) + } + Row() { + Text(this.message?.message.text ?? $r('app.string.chat_message_empty_tip_text')) + .lineHeight(20) + .padding({ + left: 6, + top: 6, + bottom: 6, + right: 6 + }) + .fontColor($r('app.color.color_chat_sub_title')) + .fontSize($r('app.float.chat_desc_text_font_size')) + } + .width('100%') + // .height(this.message?.getMessageHeight(this.getUIContext())) + .padding({ top: 6, bottom: 6 }) + .margin({ left: 60, right: 60, top: 6 }) + .justifyContent(FlexAlign.Center) + .borderRadius(6) + .id("msgContainer") + } + } + } +} + +/** + * 合并转发详情页中的消息组件 + */ +@ComponentV2 +export struct MergeDetailMessageComponent { + AlignLeft: Record> = { + 'top': { 'anchor': '__container__', 'align': VerticalAlign.Top }, + 'left': { 'anchor': '__container__', 'align': HorizontalAlign.Start } + } + @Require + @Param + message: NIMMessageInfo | undefined = undefined + @Require + @Param + chatUserInfo: ChatInfo | undefined = undefined + @Param + onMessageClick: MessageItemClick | undefined = undefined + + build() { + Column() { + if (this.message !== undefined) { + if (this.message?.getMessageTime() !== '') { + Row() { + Text(this.message?.getMessageTime()) + .fontColor($r('app.color.color_chat_desc')) + .fontSize($r('app.float.chat_desc_text_font_size')) + }.justifyContent(FlexAlign.Center).width('100%').height(20) + .margin({ top: 4 }) + } + Row() { + CommonAvatar({ + item: new AvatarItem(this.chatUserInfo != null ? + this.chatUserInfo?.getChatUserAvatarUrl(this.message?.message) : '', + this.chatUserInfo?.getChatUserAvatarName(this.message?.message) ?? '', + AvatarColorUntil.getBackgroundColorById(this.message?.message.senderId ?? '')), + longPressGesture: () => { + this.onMessageClick?.onAvatarLongPress?.( this.message) + } + }) + .width(36) + .height(36) + .borderRadius(20) + .margin({ left: 16, top: 3 }) + .id("otherAvatar") + .onClick(() => { + this.onMessageClick?.onAvatarClick?.(this.message) + }) + + Column() { + Text(this.chatUserInfo?.getChatUserShowName(this.message?.message)) + .fontColor($r('app.color.color_chat_sub_title')) + .fontSize($r('app.float.chat_subtitle_text_font_size')) + .maxLines(1) + .width(150) + .textAlign(TextAlign.Start) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .ellipsisMode(EllipsisMode.END) + Column() { + messageContent({ message: this.message, onMessageClick: this.onMessageClick }) + .backgroundColor($r('app.color.color_chat_receive_message_bg')) + .borderRadius(6) + .id("msgContainer") + .alignRules(this.AlignLeft) + .onClick((event: ClickEvent) => { + this.onMessageClick?.onItemClick?.(event, this.message) + }) + } .height(this.message?.getMessageHeight(this.getUIContext())) + .margin({ top: 6 }) + }.alignItems(HorizontalAlign.Start).margin({ left: 8 }).width('68%') + .gesture(LongPressGesture().onAction((event: GestureEvent) => { + this.onMessageClick?.onItemLongClick?.(event, this.message) + })) + + } + .width('100%') + .alignItems(VerticalAlign.Top) + .backgroundColor(this.message?.isPinMsg ? $r('app.color.color_chat_pin_bg') : + $r('app.color.color_chat_page_bg')) + .id('itemContainer') + } + }.width('100%').padding({ top: 3}) + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/view/MessageComponentBuilder.ets b/chatkit_ui/src/main/ets/view/MessageComponentBuilder.ets new file mode 100644 index 0000000..e738961 --- /dev/null +++ b/chatkit_ui/src/main/ets/view/MessageComponentBuilder.ets @@ -0,0 +1,972 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { NEEmojiParseResult } from '../manager/NEEmojiManager' +import { V2NIMMessageFileAttachment, V2NIMMessageLocationAttachment, V2NIMMessageType,V2NIMMessageAttachment } from '@nimsdk/base' +import { + getAitNodes, + getCallMessageIcon, + getCallMessageText, + getFileMessageIcon, + getFileMessageName, + getFileMessageSize, + getImageHeight, + getImageWidth, + getReplyMessageText, + getVideoMessageThumbnail, + getVideoMessageUrl, + parseMessageText, + parseReplyMessageUserInfo, + parseText, + sliceMessageText +} from '../common/MessageHelper' +import { NIMMessageInfo } from '../model/NIMMessageInfo' +import { MessageItemClick } from './MessageItemClick' +import { MessageAudioItemView } from '../view/MessageAudioItemView' +import { image } from '@kit.ImageKit' +import { staticMap } from '@kit.MapKit' +import { BusinessError } from '@kit.BasicServicesKit' +import { ChatAitNode } from '../model/ChatAitNode' +import { MergedMessageAttachment } from '@nimkit/chatkit' +import { ChatInfo } from '../model/ChatInfo' +import { Markdown } from '@nimkit/markdown' +import { BasicConstant,DataWebModel } from '@itcast/basic' +import { router } from '@kit.ArkUI' +@ComponentV2 +export struct messageContent { + @BuilderParam + message: NIMMessageInfo + @BuilderParam + onMessageClick: MessageItemClick | undefined + @BuilderParam + chatInfo: ChatInfo | undefined + + build() { + if (this.message.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_TEXT) { + if (this.message.isAiStreamMessage() == false) { + textBuilder({ + message: this.message, + onMessageClick: this.onMessageClick, + chatInfo: this.chatInfo + }); + } else { + richTextBuilder({ + message: this.message, + onMessageClick: this.onMessageClick, + chatInfo: this.chatInfo + }); + } + } else if (this.message.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_LOCATION) { + locationBuilder({ message: this.message, onMessageClick: this.onMessageClick }); + } else if (this.message.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_IMAGE) { + imageBuilder({ message: this.message, onMessageClick: this.onMessageClick }); + } else if (this.message.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_VIDEO) { + videoBuilder({ message: this.message, onMessageClick: this.onMessageClick }); + } else if (this.message.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_FILE) { + fileBuilder({ message: this.message, onMessageClick: this.onMessageClick }); + } else if (this.message.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_AUDIO) { + MessageAudioItemView({ message: this.message, onMessageClick: this.onMessageClick }); + } else if (this.message.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_CALL) { + callBuilder({ message: this.message, onMessageClick: this.onMessageClick }); + } else if (this.message.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_CUSTOM) { + if (this.message.isMergeMsg) { + mergedMessageBuilder({ message: this.message, onMessageClick: this.onMessageClick }) + } else { + + customBuilder({ message: this.message, onMessageClick: this.onMessageClick }); + } + } else { + unknownBuilder({ message: this.message, onMessageClick: this.onMessageClick }); + } + } +} + + +@ComponentV2 +export struct pinMessageContent { + @BuilderParam + message: NIMMessageInfo + @BuilderParam + onMessageClick?: MessageItemClick + + build() { + if (this.message.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_TEXT) { + pinTextBuilder({ message: this.message, onMessageClick: this.onMessageClick }); + } else if (this.message.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_LOCATION) { + pinLocationBuilder({ message: this.message, onMessageClick: this.onMessageClick }); + } else if (this.message.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_IMAGE) { + imageBuilder({ message: this.message, onMessageClick: this.onMessageClick }); + } else if (this.message.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_VIDEO) { + videoBuilder({ message: this.message, onMessageClick: this.onMessageClick }); + } else if (this.message.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_FILE) { + fileBuilder({ message: this.message, onMessageClick: this.onMessageClick }); + } else if (this.message.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_AUDIO) { + MessageAudioItemView({ message: this.message, onMessageClick: this.onMessageClick, isReceiveStyle: true }); + } else if (this.message.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_CALL) { + callBuilder({ message: this.message, onMessageClick: this.onMessageClick }); + } else if (this.message.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_CUSTOM) { + if (this.message.isMergeMsg) { + mergedMessageBuilder({ message: this.message, onMessageClick: this.onMessageClick }).width('80%') + } else { + unknownBuilder({ message: this.message, onMessageClick: this.onMessageClick }); + } + } else { + unknownBuilder({ message: this.message, onMessageClick: this.onMessageClick }); + } + } +} + + +@ComponentV2 +export struct richTextBuilder { + @BuilderParam + message: NIMMessageInfo + @BuilderParam + onMessageClick: MessageItemClick | undefined + @BuilderParam + chatInfo: ChatInfo | undefined + + private onItemClick(event: ClickEvent) { + this.onMessageClick?.onReplyClick?.(event, this.message.replyMsg) + } + + private onRevokeEditClick(event: ClickEvent) { + this.onMessageClick?.onRevokeEditClick?.(event, this.message) + + } + + build() { + Column() { + if (!this.message.isRevokeMsg && this.message.isReplyMsg) { + if (this.message.replyMsg) { + Text() { + if (this.chatInfo) { + Span(' | ' + parseReplyMessageUserInfo(this.message.replyMsg, this.chatInfo)) + .fontSize($r('app.float.chat_desc_text_font_size')) + .textCase(TextCase.Normal) + .fontColor($r('app.color.color_chat_desc')) + } + ForEach(sliceMessageText(parseMessageText(getReplyMessageText(this.message.replyMsg)), 30), + (item: NEEmojiParseResult) => { + if (item.text) { + Span(item.text) + .fontSize($r('app.float.chat_desc_text_font_size')) + .textCase(TextCase.Normal) + .fontColor($r('app.color.color_chat_desc')) + } else if (item.emoji) { + ImageSpan($rawfile(`emoji/${item.emoji.file}`)).width('16') + .height('16') + .objectFit(ImageFit.Fill) + .verticalAlign(ImageSpanAlignment.CENTER) + } + }) + } + .fontColor($r('app.color.color_chat_desc')) + .fontSize($r('app.float.chat_desc_text_font_size')) + .height(20) + .maxLines(1) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .ellipsisMode(EllipsisMode.END) + .margin({ bottom: 4 }) + .onClick((event) => this.onItemClick(event)) + } else { + // Text(getContext().resourceManager.getStringSync($r('app.string.chat_reply_not_exist').id)) + // .fontColor($r('app.color.color_chat_desc')) + // .fontSize($r('app.float.chat_desc_text_font_size')) + // .height(20) + // .maxLines(1) + // .ellipsisMode(EllipsisMode.END) + // .margin({ bottom: 4 }) + } + + } + Column() { + if (this.message.isRevokeMsg) { + Span(this.message.message.text) + if (this.message.revokeEditMsg) { + Text($r('app.string.chat_msg_undo_edit_tips')) + .fontColor($r('app.color.color_chat_send')) + .onClick((event) => { + this.onRevokeEditClick(event) + }) + } + } else { + ForEach(parseMessageText(this.message.message.text?.trimStart()?.trimEnd()), (item: NEEmojiParseResult) => { + if (item.text) { + ForEach(getAitNodes(item.startIndex, item.text, this.message.message.serverExtension), + (node: ChatAitNode) => { + if (node.segment) { + Span(node.text) + .fontSize($r('app.float.chat_message_text_font_size')) + .textCase(TextCase.Normal) + .fontColor('#337EFF') + } else { + Markdown({ + content: node.text, + lineSpace: 0, + textLineSpace: 6, + fontStyle: { + fontColor: $r('app.color.color_chat_title'), + fontSize: $r('app.float.chat_message_text_font_size') + }, + }) + } + }) + + } else if (item.emoji) { + ImageSpan($rawfile(`emoji/${item.emoji.file}`)) + .width(18) + .height(18) + .objectFit(ImageFit.Fill) + .verticalAlign(ImageSpanAlignment.CENTER) + } + }) + } + } + }.alignItems(HorizontalAlign.Start) + .padding({ + left: 12, + top: 12, + bottom: 12, + right: 12 + }) + } +} + + +@ComponentV2 +export struct textBuilder { + @BuilderParam + message: NIMMessageInfo + @BuilderParam + onMessageClick: MessageItemClick | undefined + @BuilderParam + chatInfo: ChatInfo | undefined + + private onItemClick(event: ClickEvent) { + this.onMessageClick?.onReplyClick?.(event, this.message.replyMsg) + } + + private onRevokeEditClick(event: ClickEvent) { + this.onMessageClick?.onRevokeEditClick?.(event, this.message) + + } + + build() { + Column() { + if (!this.message.isRevokeMsg && this.message.isReplyMsg) { + if (this.message.replyMsg) { + Text() { + if (this.chatInfo) { + Span(' | ' + parseReplyMessageUserInfo(this.message.replyMsg, this.chatInfo)) + .fontSize($r('app.float.chat_desc_text_font_size')) + .textCase(TextCase.Normal) + .fontColor($r('app.color.color_chat_desc')) + } + ForEach(sliceMessageText(parseMessageText(getReplyMessageText(this.message.replyMsg)), 30), + (item: NEEmojiParseResult) => { + if (item.text) { + Span(item.text) + .fontSize($r('app.float.chat_desc_text_font_size')) + .textCase(TextCase.Normal) + .fontColor($r('app.color.color_chat_desc')) + } else if (item.emoji) { + ImageSpan($rawfile(`emoji/${item.emoji.file}`)).width('16') + .height('16') + .objectFit(ImageFit.Fill) + .verticalAlign(ImageSpanAlignment.CENTER) + } + }) + } + .fontColor($r('app.color.color_chat_desc')) + .fontSize($r('app.float.chat_desc_text_font_size')) + .height(20) + .maxLines(1) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .ellipsisMode(EllipsisMode.END) + .margin({ bottom: 4 }) + .onClick((event) => this.onItemClick(event)) + } else { + // Text(getContext().resourceManager.getStringSync($r('app.string.chat_reply_not_exist').id)) + // .fontColor($r('app.color.color_chat_desc')) + // .fontSize($r('app.float.chat_desc_text_font_size')) + // .height(20) + // .maxLines(1) + // .ellipsisMode(EllipsisMode.END) + // .margin({ bottom: 4 }) + //去掉消息已撤回 + } + + } + Text() { + if (this.message.isRevokeMsg) { + Span(this.message.message.text) + if (this.message.revokeEditMsg) { + Span($r('app.string.chat_msg_undo_edit_tips')) + .fontColor($r('app.color.color_chat_send')) + .onClick((event) => { + this.onRevokeEditClick(event) + }) + } + } else { + ForEach(parseMessageText(this.message.message.text?.trimStart()?.trimEnd()), (item: NEEmojiParseResult) => { + if (item.text) { + ForEach(getAitNodes(item.startIndex, item.text, this.message.message.serverExtension), + (node: ChatAitNode) => { + if (node.segment) { + Span(node.text) + .fontSize($r('app.float.chat_message_text_font_size')) + .textCase(TextCase.Normal) + .fontColor('#337EFF') + } else { + Span(node.text) + .fontSize($r('app.float.chat_message_text_font_size')) + .textCase(TextCase.Normal) + .fontColor($r('app.color.color_chat_title')) + } + }) + + } else if (item.emoji) { + ImageSpan($rawfile(`emoji/${item.emoji.file}`)) + .width(18) + .height(18) + .objectFit(ImageFit.Fill) + .verticalAlign(ImageSpanAlignment.CENTER) + } + }) + } + } + .lineHeight(20) + .fontSize($r('app.float.chat_subtitle_text_font_size')) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .ellipsisMode(EllipsisMode.END) + }.alignItems(HorizontalAlign.Start) + .padding({ + left: 12, + top: 12, + bottom: 12, + right: 12 + }) + } +} + + +@ComponentV2 +export struct pinTextBuilder { + @BuilderParam + message: NIMMessageInfo + @BuilderParam + onMessageClick: MessageItemClick | undefined + + build() { + Column() { + Text() { + ForEach(parseMessageText(this.message.message.text?.trimStart()?.trimEnd()), (item: NEEmojiParseResult) => { + if (item.text) { + Span(item.text) + .fontSize($r('app.float.chat_message_text_font_size')) + .textCase(TextCase.Normal) + .fontColor($r('app.color.color_chat_title')) + } else if (item.emoji) { + ImageSpan($rawfile(`emoji/${item.emoji.file}`)).width('18') + .height('18') + .objectFit(ImageFit.Fill) + .verticalAlign(ImageSpanAlignment.CENTER) + } + }) + } + .fontColor($r('app.color.color_chat_title')) + .lineHeight(20) + .fontSize($r('app.float.chat_subtitle_text_font_size')) + .maxLines(3) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .ellipsisMode(EllipsisMode.END) + } + } +} + +@ComponentV2 +export struct imageBuilder { + @BuilderParam + message: NIMMessageInfo + @BuilderParam + onMessageClick: MessageItemClick | undefined + @Local thumbUrl?: string + @Local url?: string + + build() { + Column() { + Image(this.thumbUrl ?? this.url) + .objectFit(ImageFit.Cover) + .width(getImageWidth(this.message)) + .height(getImageHeight(this.message)) + .borderRadius(8) + .gesture(LongPressGesture().onAction((event: GestureEvent) => { + this.onMessageClick?.onItemLongClick?.(event, this.message) + }), GestureMask.IgnoreInternal) + } + } + + aboutToAppear(): void { + this.url = this.message.getImageUrl() + this.message.getImageThumbUrl().then((thumbUrl) => { + this.thumbUrl = thumbUrl + }) + } +} + +@ComponentV2 +export struct videoBuilder { + @BuilderParam + message: NIMMessageInfo + @BuilderParam + onMessageClick: MessageItemClick | undefined + @Local videoMessageThumbnail?: image.PixelMap + + showLoading() { + if ((this.message.message.attachment as V2NIMMessageFileAttachment).path === undefined) { + if (this.message.downloadProgress > 0) { + return true + } + } + return false + } + + async aboutToAppear(): Promise { + this.videoMessageThumbnail = await getVideoMessageThumbnail(this.message) + } + + build() { + Stack() { + Image(this.videoMessageThumbnail ?? getVideoMessageUrl(this.message)).objectFit(ImageFit.Auto) + .width(getImageWidth(this.message)).height(getImageHeight(this.message)) + .borderRadius(8) + Image($r('app.media.ic_chat_message_video')).objectFit(ImageFit.Auto) + .width(60).height(60) + .visibility(!this.showLoading() ? Visibility.Visible : Visibility.Hidden) + + Row() { + Column() + .width(3) + .height(18) + .backgroundColor(Color.White) + .borderRadius(3) + Column() + .width(3) + .height(18) + .backgroundColor(Color.White) + .borderRadius(3) + .margin({ + left: 6 + }) + } + .width(12) + .height(18) + .backgroundColor(Color.Transparent) + .visibility(this.showLoading() ? Visibility.Visible : Visibility.Hidden) + + Progress({ value: 0, total: 100, type: ProgressType.Ring }) + .width(42) + .height(42) + .value(this.message.downloadProgress) + .color(Color.White)// 进度条前景色为灰色 + .style({ strokeWidth: 3 })// 设置strokeWidth进度条宽度为15.0vp + .visibility(this.showLoading() ? Visibility.Visible : Visibility.Hidden) + }.gesture(LongPressGesture().onAction((event: GestureEvent) => { + this.onMessageClick?.onItemLongClick?.(event, this.message) + }), GestureMask.IgnoreInternal) + } +} + +@ComponentV2 +export struct callBuilder { + @BuilderParam + message: NIMMessageInfo + @BuilderParam + onMessageClick: MessageItemClick | undefined + + build() { + Row() { + if (this.message.isReceiveMsg) { + Image(getCallMessageIcon(this.message)).width(24).height(24).align(Alignment.Start) + Text(getCallMessageText(this.message)).lineHeight(20).margin({ left: 6 }) + } else { + Text(getCallMessageText(this.message)).lineHeight(20) + .fontSize($r('app.float.chat_subtitle_text_font_size')) + .fontColor($r('app.color.color_chat_title')) + Image(getCallMessageIcon(this.message)).width(24).height(24).align(Alignment.Start).margin({ left: 6 }) + } + } + .padding({ + left: 12, + top: 12, + bottom: 12, + right: 12 + }) + } +} + + +@ComponentV2 +export struct fileBuilder { + @BuilderParam + message: NIMMessageInfo + @BuilderParam + onMessageClick: MessageItemClick | undefined + + build() { + Row() { + Stack({}) { + Image(getFileMessageIcon(this.message)) + .objectFit(ImageFit.Auto) + .width(35) + .height(35) + .margin({ left: 12, top: 12, bottom: 12 }) + Column() + .width(35) + .height(35) + .margin({ left: 12, top: 12, bottom: 12 }) + .backgroundColor($r('app.color.color_chat_converse_bg')) + .opacity(0.8) + .borderRadius(6) + .visibility(this.message.downloadProgress >= 0 ? Visibility.Visible : Visibility.Hidden) + Progress({ value: 0, total: 100, type: ProgressType.Ring }) + .width(20) + .height(20) + .value(this.message.downloadProgress) + .margin({ left: 16, top: 16, bottom: 12 }) + .color(Color.White)// 进度条前景色为灰色 + .style({ strokeWidth: 3 })// 设置strokeWidth进度条宽度为15.0vp + .visibility(this.message.downloadProgress >= 0 ? Visibility.Visible : Visibility.Hidden) + } + + Column() { + Text(getFileMessageName(this.message)) + .fontColor($r('app.color.color_chat_title')) + .fontSize($r('app.float.chat_desc_text_font_size')) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .textAlign(TextAlign.Start) + .width('100%') + .height(20) + .maxLines(1) + .ellipsisMode(EllipsisMode.END) + Text(getFileMessageSize(this.message)) + .fontColor('#666666') + .fontSize(10) + .width('100%') + .textAlign(TextAlign.Start) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .maxLines(1) + .margin({ top: 2 }) + }.padding({ left: 12, right: 12 }).width('70%').align(Alignment.Start) + } + } +} + +@ComponentV2 +export struct locationBuilder { + @BuilderParam + message: NIMMessageInfo + @BuilderParam + onMessageClick: MessageItemClick | undefined + @Local imagePex: image.PixelMap | undefined + + aboutToAppear(): void { + if (this.message) { + + let attachment = this.message.message.attachment as V2NIMMessageLocationAttachment; + let staticMapMarker: staticMap.StaticMapMarker = { + location: { + latitude: attachment.latitude, + longitude: attachment.longitude + }, + defaultIconSize: staticMap.IconSize.SMALL + }; + let staticMapOptions: staticMap.StaticMapOptions = { + location: { + latitude: attachment.latitude, + longitude: attachment.longitude + }, + zoom: 15, + imageWidth: 300, + imageHeight: 100, + markers: [staticMapMarker], + }; + + // 获取静态图 + staticMap.getMapImage(staticMapOptions).then((value) => { + this.imagePex = value; + console.info("netease location Succeeded in getting image."); + }).catch((error: BusinessError) => { + console.info("netease location fail in getting image.", error.code, error.message); + }); + } + } + + build() { + Column() { + Text(this.message?.message.text) + .fontColor($r('app.color.color_chat_title')) + .fontSize($r('app.float.chat_title_text_font_size')) + .textAlign(TextAlign.Start) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .padding({ left: 12, top: 12, right: 12 }) + Text((this.message?.message.attachment as V2NIMMessageLocationAttachment).address) + .fontColor($r('app.color.color_chat_desc')) + .fontSize($r('app.float.chat_desc_text_font_size')) + .textAlign(TextAlign.Start) + .maxLines(1) + .margin({ top: 6 }) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .padding({ left: 12, right: 12 }) + if (this.imagePex) { + Image(this.imagePex).width('100%').height(88).margin({ top: 8 }) + } else { + Image($r('app.media.ic_chat_location_default')).width('100%').height(88).margin({ top: 8 }) + } + }.alignItems(HorizontalAlign.Start) + } +} + + +@ComponentV2 +export struct pinLocationBuilder { + @BuilderParam + message: NIMMessageInfo + @BuilderParam + onMessageClick: MessageItemClick | undefined + @Local imagePex: image.PixelMap | undefined + + aboutToAppear(): void { + if (this.message) { + + let attachment = this.message.message.attachment as V2NIMMessageLocationAttachment; + let staticMapMarker: staticMap.StaticMapMarker = { + location: { + latitude: attachment.latitude, + longitude: attachment.longitude + }, + defaultIconSize: staticMap.IconSize.SMALL + }; + let staticMapOptions: staticMap.StaticMapOptions = { + location: { + latitude: attachment.latitude, + longitude: attachment.longitude + }, + zoom: 15, + imageWidth: 300, + imageHeight: 100, + markers: [staticMapMarker], + }; + + // 获取静态图 + staticMap.getMapImage(staticMapOptions).then((value) => { + this.imagePex = value; + console.info("netease location Succeeded in getting image."); + }).catch((error: BusinessError) => { + console.info("netease location fail in getting image.", error.code, error.message); + }); + } + } + + build() { + Column() { + Text(this.message?.message.text) + .fontColor($r('app.color.color_chat_title')) + .fontSize($r('app.float.chat_title_text_font_size')) + .textAlign(TextAlign.Start) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .padding({ left: 12, top: 12, right: 12 }) + Text((this.message?.message.attachment as V2NIMMessageLocationAttachment).address) + .fontColor($r('app.color.color_chat_desc')) + .fontSize($r('app.float.chat_desc_text_font_size')) + .textAlign(TextAlign.Start) + .maxLines(1) + .margin({ top: 6 }) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .padding({ left: 12, right: 12 }) + if (this.imagePex) { + Image(this.imagePex).width('100%').height(88).margin({ top: 8 }) + } else { + Image($r('app.media.ic_chat_location_default')).width('100%').height(88).margin({ top: 8 }) + } + }.alignItems(HorizontalAlign.Start) + .width('80%') + } +} + +@ComponentV2 +export struct unknownBuilder { + @BuilderParam + message: NIMMessageInfo + @BuilderParam + onMessageClick: MessageItemClick | undefined + + build() { + Column() { + Text($r('app.string.chat_msg_unknown_type')) + .fontColor($r('app.color.color_chat_title')) + .lineHeight(20) + .fontSize($r('app.float.chat_subtitle_text_font_size')) + } + .padding({ + left: 12, + top: 12, + bottom: 12, + right: 12 + }) + } +} + +@ComponentV2 +export struct mergedMessageBuilder { + @BuilderParam + message: NIMMessageInfo + @BuilderParam + onMessageClick: MessageItemClick | undefined + mergedAttachment: MergedMessageAttachment | undefined + + aboutToAppear(): void { + if (this.message) { + this.mergedAttachment = this.message.customAttachment as MergedMessageAttachment + } + } + + build() { + Column() { + if (this.mergedAttachment) { + Text($r('app.string.chat_merged_message_title', this.mergedAttachment.sessionName)) + .fontColor($r('app.color.color_chat_title')) + .fontSize($r('app.float.chat_title_text_font_size')) + .height(18) + .margin({ top: 6, bottom: 4 }) + .maxLines(1) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .ellipsisMode(EllipsisMode.CENTER) + Text() { + ForEach(parseText(this.message.mergedContent), (item: NEEmojiParseResult) => { + if (item.text) { + Span(item.text) + .fontSize($r('app.float.chat_message_text_font_size')) + .textCase(TextCase.Normal) + .fontColor($r('app.color.color_chat_desc')) + + } else if (item.emoji) { + ImageSpan($rawfile(`emoji/${item.emoji.file}`)).width('18') + .height('18') + .objectFit(ImageFit.Fill) + .verticalAlign(ImageSpanAlignment.CENTER) + } + }) + } + .fontSize($r('app.float.chat_subtitle_text_font_size')) + .maxLines(3) + .lineHeight(20) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .ellipsisMode(EllipsisMode.END) + .margin({ bottom: 6 }) + + Line().width('100%').height(1).backgroundColor($r('app.color.color_chat_divider_line')) + Text($r('app.string.chat_merged_message_desc')) + .fontColor($r('app.color.color_chat_desc')) + .fontSize($r('app.float.chat_subtitle_text_font_size')) + .height(18).margin({ top: 6, bottom: 6 }) + } + } + .margin({ + left: 4, + top: 4, + bottom: 4, + right: 4 + }) + .padding({ left: 12, right: 6 }) + .backgroundColor($r('app.color.color_chat_page_bg')) + .borderRadius(12) + .alignItems(HorizontalAlign.Start) + } + +} + + +@ComponentV2 +export struct customBuilder { + @BuilderParam + message: NIMMessageInfo + @BuilderParam + onMessageClick: MessageItemClick | undefined + @Local photoUrl:ResourceStr=$r('app.media.mine_logo') + @Local title:string='' + @Local content:string='' + @Local customType:string='' + @Local customUrl:string='' + aboutToAppear(): void { + if (this.message) { + // + let attachment = this.message.message.attachment as V2NIMMessageAttachment ; + + let custom=JSON.parse(attachment.raw+'') as customAttachment + this.title=custom.gdxz_title + this.customType=custom.gdxz_type + this.customUrl=custom.gdxz_url + if(BasicConstant.CouTeach==custom.gdxz_type) + { + this.content='点击查看问题详情' + this.photoUrl=$r('app.media.icon_chatting_file') + } + else if(BasicConstant.VisitTeach==custom.gdxz_type) + { + this.content='肝胆相照®肝胆病在线公共服务平台' + this.photoUrl=$r('app.media.mine_logo') + } + else { + if(custom.gdxz_content==null||custom.gdxz_content.trim()=='') + { + this.content='肝胆相照®肝胆病在线公共服务平台' + } + else + { + this.content=custom.gdxz_content + } + if(custom.gdxz_title!=null&&custom.gdxz_title.includes("互联网医院")) + { + this.photoUrl=custom.gdxz_img + + } + else + { + this.photoUrl=$r('app.media.mine_logo') + } + } + } + } + + build() { + Column() { + Text(this.title) + .fontColor($r('app.color.color_chat_title')) + .fontSize($r('app.float.chat_message_text_font_size')) + .textAlign(TextAlign.Start) + .maxLines(2) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .padding({ left: 12, top: 12, right: 12 }) + Row() + { + Text(this.content) + .fontColor($r('app.color.color_chat_sub_title')) + .fontSize($r('app.float.chat_desc_text_font_size')) + .textAlign(TextAlign.Start) + .maxLines(2) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .padding({ left: 12, top: 12, right: 12 }) + .layoutWeight(1) + + Image(this.photoUrl).width(57) + .height(57) + .margin({ bottom: 12, top: 12, right: 12 }) + } + .alignItems(VerticalAlign.Top) + // Text((this.message?.message.attachment as V2NIMMessageLocationAttachment).address) + // .fontColor($r('app.color.color_chat_desc')) + // .fontSize($r('app.float.chat_desc_text_font_size')) + // .textAlign(TextAlign.Start) + // .maxLines(1) + // .margin({ top: 6 }) + // .textOverflow({ overflow: TextOverflow.Ellipsis }) + // .padding({ left: 12, right: 12 }) + // if (this.imagePex) { + // Image(this.imagePex).width('100%').height(88).margin({ top: 8 }) + // } else { + // Image($r('app.media.ic_chat_location_default')).width('100%').height(88).margin({ top: 8 }) + // } + }.alignItems(HorizontalAlign.Start) + .onClick(()=>{ + if(BasicConstant.CouTeach==this.customType) + { + // Intent intent = new Intent(UIUtils.getContext(), PublicServiceDetailsActivity.class); + // intent.putExtra("consultUuid", teachAttachment.getMessigeid()); + // intent.putExtra("isCloseAnswer", true); + // intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK ); + // UIUtils.getContext().startActivity(intent); + } + else if(this.title!=null&&this.title.includes("互联网医院")) + { + // IWXAPI api = WXAPIFactory.createWXAPI(getActivity(), Constant.WeId); + // WXLaunchMiniProgram.Req req = new WXLaunchMiniProgram.Req(); + // req.userName = "gh_9cd2fd72eb57"; // 填小程序原始id + // req.path = "/Pages/yishi/index/index"; //拉起小程序页面的可带参路径,不填默认拉起小程序首页,对于小游戏,可以只传入 query 部分,来实现传参效果,如:传入 "?foo=bar"。 + // // req.miniprogramType = WXLaunchMiniProgram.Req.MINIPROGRAM_TYPE_PREVIEW;// 可选打开 开发版,体验版和正式版 + // api.sendReq(req); + } + else if (this.customUrl!=null) + { + + if (this.customUrl.includes("video")){ + // intent = new Intent(UIUtils.getContext(), VideoDetilActivity.class); + // intent.putExtra("uuid", teachAttachment.getMessigeid()); + + }else { + // intent = new Intent(UIUtils.getContext(), NewsDetailActivity.class); + + } + + if (this.customUrl.includes("outpatient_details") + ||this.customUrl.includes("wxPatient/index.htm#/outPatient")){ + // intent.putExtra("title", "门诊详情"); + ToWeb(this.customUrl,'门诊详情') + }else if(this.customUrl.includes(BasicConstant.getNewWa)) + { + ToWeb(this.customUrl,'纽娃复合营养素固体饮料') + // intent.putExtra("title", UIUtils.getContext().getResources().getStringArray(R.array.chat_menu_shop)[0]); + // intent.putExtra("flag", 1); + } + else + { + // intent.putExtra("newsTitle", teachAttachment.getTitle()+""); + // intent.putExtra("kepuuuid", teachAttachment.getMessigeid()); + // intent.putExtra("title", "患教详情"); + // intent.putExtra("need_inside_share", "no"); + } + if(this.customUrl.includes("dcsvip1imapp.cloopen.net:8888")) + { + // intent.putExtra("url", + // ((TeachAttachment) message.getAttachment()).getUrl().split("http://dcsvip1imapp.cloopen.net:8888")[1]); + } + else + { + // intent.putExtra("url", teachAttachment.getUrl()); + } + // intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK ); + // UIUtils.getContext().startActivity(intent); + } + }) + .width('80%') + } +} +function ToWeb(u:string,t:string) +{ + let paramsInfo: DataWebModel = { + url:u , + title:t + + }; + router.pushUrl({ + url: 'pages/WebView/WebPage', // 目标url + params: paramsInfo // 添加params属性,传递自定义参数 + }) +} + +export interface customAttachment +{ + + gdxz_title:string;//标题 + gdxz_url:string;//内容url + gdxz_content:string;//内容 + gdxz_id:string;//id + gdxz_img:string;//照片 + gdxz_type:string;//类型 + gdxz_ext_data:string;//备用字段,json字符串 +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/view/MessageItemClick.ets b/chatkit_ui/src/main/ets/view/MessageItemClick.ets new file mode 100644 index 0000000..e177439 --- /dev/null +++ b/chatkit_ui/src/main/ets/view/MessageItemClick.ets @@ -0,0 +1,28 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { NIMMessageInfo } from '../model/NIMMessageInfo'; + +export interface MessageItemClick { + // 消息点击 + onItemClick?: (event: ClickEvent, msg: NIMMessageInfo | undefined) => void + // 消息长按 + onItemLongClick?: (event: GestureEvent, msg: NIMMessageInfo | undefined) => void + // 头像点击 + onAvatarClick?: (msg: NIMMessageInfo | undefined) => void + // 头像长按 + onAvatarLongPress?: (msg: NIMMessageInfo | undefined) => void + // 已撤回消息点击编辑 + onRevokeEditClick?: (event: ClickEvent, msg: NIMMessageInfo | undefined) => void + // 已读未读点击 + onReadReceiptClick?: (event: ClickEvent, msg: NIMMessageInfo | undefined) => void + // 多选选择事件 + onMultiSelect?: (select: boolean, msg: NIMMessageInfo | undefined) => void + // 点击回复消息 + onReplyClick?: (event: ClickEvent, msg: NIMMessageInfo | undefined) => void + // 发送失败点击 + onSendFailClick?: (event: ClickEvent, msg: NIMMessageInfo | undefined) => void +} diff --git a/chatkit_ui/src/main/ets/view/MessageOperationItemView.ets b/chatkit_ui/src/main/ets/view/MessageOperationItemView.ets new file mode 100644 index 0000000..fe25b0e --- /dev/null +++ b/chatkit_ui/src/main/ets/view/MessageOperationItemView.ets @@ -0,0 +1,27 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { MessageOperationItem } from '../model/MessageOperationItem'; + +@Entry +@ComponentV2 +export struct MessageOperationItemView { + @Param @Require + operationData: MessageOperationItem; + + build() { + Column() { + // Image(this.operationData.operationImage).width(18).height(18) + Text(this.operationData.operationText) + .fontSize(16) + .fontColor($r('app.color.color_chat_sub_title')) + .layoutWeight(1) + // .margin({ top: 6 }) + Text().width('100%').height(0.5).backgroundColor($r('app.color.chat_input_background')) + } + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/view/MessageOperationView.ets b/chatkit_ui/src/main/ets/view/MessageOperationView.ets new file mode 100644 index 0000000..d512b6b --- /dev/null +++ b/chatkit_ui/src/main/ets/view/MessageOperationView.ets @@ -0,0 +1,61 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +// Use of this source code is governed by a MIT license that can be +// found in the LICENSE file. +import { NIMMessageInfo } from '../model/NIMMessageInfo'; +import { MessageOperationItem } from '../model/MessageOperationItem'; +import { MessageOperationItemView } from '../view/MessageOperationItemView'; +import { ChatConst } from '../constants/ChatConst'; +import { ChatKitConfig } from '../ChatKitConfig'; +import { getOperateMenu } from '../common/ChatUtils'; + +@ComponentV2 +export struct MessageOperationView { + @Local operationMoreDataList: Array = Array(); + @Param @Require + operateMsg: NIMMessageInfo | undefined = undefined; + @Param @Require + didClickItem?: (item: MessageOperationItem) => void; + //撤回时间限制2分钟 + revokeTime: number = ChatKitConfig.messageRevokeTimeLimit; + @Local viewHeight: number = 0; + @Local viewWidth: number = 0; + + aboutToAppear(): void { + this.operationMoreDataList = getOperateMenu(this.operateMsg) + // this.viewHeight = + // ChatConst.menuItemHeight * (Math.ceil(this.operationMoreDataList.length / ChatConst.menuItemColumnNum)) + this.viewHeight = + ChatConst.menuItemHeight * this.operationMoreDataList.length + // this.viewWidth = ChatConst.menuItemWidth * Math.min(this.operationMoreDataList.length, ChatConst.menuItemColumnNum) + } + + build() { + Column() { + Grid() { + ForEach(this.operationMoreDataList, (item: MessageOperationItem) => { + GridItem() { + MessageOperationItemView({ operationData: item }) + .width('80%') + // .width(ChatConst.menuItemWidth) + .height(ChatConst.menuItemHeight) + .onClick(() => { + if (this.didClickItem) { + this.didClickItem(item) + } + }) + .align(Alignment.Center) + } + }) + } + + }.backgroundColor(Color.White).borderRadius(8) + // .width(this.viewWidth) + .width('80%') + .height(this.viewHeight) + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/view/NEAudioRecordView.ets b/chatkit_ui/src/main/ets/view/NEAudioRecordView.ets new file mode 100644 index 0000000..4823318 --- /dev/null +++ b/chatkit_ui/src/main/ets/view/NEAudioRecordView.ets @@ -0,0 +1,290 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { Animator as animator, AnimatorOptions, AnimatorResult } from '@kit.ArkUI'; +import { AudioManager } from '../manager/AudioManager'; +import { contextConstant } from '@kit.AbilityKit'; +import { AudioRecordManager } from '../manager/AudioRecordManager'; +import { NECommonUtils } from '@nimkit/common'; +import { ChangeUtil } from '@itcast/basic' + +@Entry +@ComponentV2 +export struct NEAudioRecordView { + audioManager: AudioManager = AudioManager.instance; + @Param press: boolean = false; + @Param scaleValue: ScaleOptions = { x: 1, y: 1 }; + options: AnimatorOptions = { + duration: 1500, + easing: "friction", + delay: 0, + fill: "forwards", + direction: "normal", + iterations: -1, + begin: 200.0, + end: 400.0 + }; + @Local wid: number = 104 + @Local hei: number = 104 + @Local radius: number = 52 + @Local isRecording: boolean = false + path: string = "" + @Param @Require onRecordAudio?: (path: string, duration: number) => void; + @Param @Require onRecordStart?: () => void; + @Param @Require onRecordEnd?: () => void; + @Local duration: number = 0; + intervalID?: number; + maxRecordTimer: number = 60; + private TAG: string = 'net ease Audio Record' + private backAnimator: AnimatorResult | undefined = undefined + @Local isCancel: boolean = false; + @Local startY: number = 0; // 滑动起点Y坐标 + formatDuration(seconds: number): string { + const m = Math.floor(seconds / 60).toString().padStart(2, '0'); + const s = (seconds % 60).toString().padStart(2, '0'); + return `${m}:${s}`; + } + + aboutToAppear(): void { + this.create() + } + + create() { + let _this = this + this.backAnimator = animator.create({ + duration: 1000, + easing: "ease", + delay: 0, + fill: "forwards", + direction: "normal", + iterations: -1, + begin: 104, + end: 150 + }) + this.backAnimator.onFinish = () => { + this.wid = 104 + this.hei = 104 + this.radius = 52 + } + this.backAnimator.onRepeat = () => { + } + this.backAnimator.onCancel = () => { + } + this.backAnimator.onFrame = (value: number) => { + // console.info(_this.TAG, 'backAnimator onFrame ' + value) + _this.wid = value + _this.hei = value + _this.radius = value / 2.0 + } + } + + aboutToDisappear() { + // 由于backAnimator在onframe中引用了this, this中保存了backAnimator, + // 在自定义组件消失时应该将保存在组件中的backAnimator置空,避免内存泄漏 + this.backAnimator = undefined; + } + + endRecord() { + console.log("net ease record stop " + this.path) + if (this.intervalID !== undefined) { + clearInterval(this.intervalID) + this.intervalID = undefined + } + if (this.backAnimator) { + this.backAnimator.finish() + } + if (this.path.length > 0 && this.duration > 0) { + AudioRecordManager.instance.stopRecordingProcess().then(() => { + if (this.onRecordAudio) { + console.log("net ease on record audio finish " + this.path) + this.onRecordAudio(this.path, this.duration) + } + }) + } else { + NECommonUtils.showToast($r("app.string.chat_speak_too_short")) + } + if (this.onRecordEnd) { + this.onRecordEnd() + } + } + + cancelRecord() { + if (this.intervalID !== undefined) { + clearInterval(this.intervalID) + this.intervalID = undefined + } + if (this.backAnimator) { + this.backAnimator.finish() + } + // 假如有取消API可调用 + + AudioRecordManager.instance.stopRecordingProcess(); + + NECommonUtils.showToast('已取消发送'); + if (this.onRecordEnd) { + this.onRecordEnd() + } + } + + build() { + RelativeContainer() { + + Stack() + .width(this.wid) + .height(this.hei) + .borderRadius(this.radius) + .alignRules({ + middle: { anchor: "__container__", align: HorizontalAlign.Center }, + center: { anchor: "__container__", align: VerticalAlign.Center } + }) + .scale(this.scaleValue) + .backgroundColor('#4d518EF8') + + Button() + .type(ButtonType.Normal) + .width(104) + .height(104) + .linearGradient({ + angle: 163, + colors: [[0x6AA1FF, 0.11], [0x3479EE, 1.21]] + }) + .borderRadius(52) + .alignRules({ + middle: { anchor: "__container__", align: HorizontalAlign.Center }, + center: { anchor: "__container__", align: VerticalAlign.Center } + }) + .onTouch((event) => { + if (event.type == TouchType.Down) { + this.startY = event.touches[0].y; // 记录按下时的Y坐标 + console.log("net ease record start") + if (this.backAnimator) { + this.backAnimator.play() + } + this.isRecording = true; + const context = getContext(this).getApplicationContext(); + context.area = contextConstant.AreaMode.EL1; + const fileName = Date.now() + '.m4a' + const filePath = context.databaseDir + '/' + fileName + this.path = filePath + AudioRecordManager.instance.startRecordingProcess(filePath) + if (this.onRecordStart) { + this.onRecordStart() + } + this.duration = 0 + this.intervalID = setInterval(() => { + console.log('net ease do every 1s. duration ' + this.duration); + this.duration += 1; + if (this.duration >= this.maxRecordTimer + && this.isRecording) { + this.endRecord() + this.isRecording = false; + } + }, 1000); + this.isCancel = false; + } else if (event.type == TouchType.Move) { + // 判断手指是否上划到按钮上方 + if(event.target.area.globalPosition.y ) + { + // let buttonCenterY = ChangeUtil.parseLengthToNumber(event.target.area.globalPosition.y) + ChangeUtil.parseLengthToNumber(event.target.area.height) / 2; + // let fingerY = event.touches && event.touches.length > 0 ? ChangeUtil.parseLengthToNumber(event.touches[0].y) : 0; + // console.log(`buttonCenterY:${buttonCenterY} fingerY:${fingerY}`); + // this.isCancel = fingerY < buttonCenterY - 40; + + // const touchX = event.touches[0].x; + // const touchY = event.touches[0].y; + // + // // 获取按钮的全局位置和尺寸 + // const buttonArea = event.target.area; + // const buttonLeft = buttonArea.globalPosition.x?ChangeUtil.parseLengthToNumber(buttonArea.globalPosition.x):0; + // const buttonTop = buttonArea.globalPosition.y?ChangeUtil.parseLengthToNumber(buttonArea.globalPosition.y):0;; + // const buttonRight = buttonLeft + ChangeUtil.parseLengthToNumber(buttonArea.width); + // const buttonBottom = buttonTop + ChangeUtil.parseLengthToNumber(buttonArea.height); + // + // // 判断触摸点是否在按钮区域内 + // this.isCancel = touchX - 40 >= buttonLeft && touchX <= buttonRight && + // touchY >= buttonTop && touchY <= buttonBottom; + + const currentY = event.touches[0].y; + // 计算Y轴位移(负值表示上滑) + const deltaY = currentY - this.startY; + console.log(`deltaY:${deltaY} `); + if (deltaY < -80) { // 上滑阈值(如10像素) + // const touchX = event.touches[0].x; + // 复用按钮区域检测逻辑(同上) + this.isCancel=true + } + else + { + this.isCancel=false + } + + } + + } else if (event.type == TouchType.Up || event.type == TouchType.Cancel) { + if (this.isRecording) { + if (this.isCancel) { + this.cancelRecord(); + } else { + this.endRecord(); + } + this.isRecording = false; + this.isCancel = false; + } + } + }) + + Image($r('app.media.ic_public_record_speaker')) + .width(34) + .height(34) + .alignRules({ + middle: { anchor: "__container__", align: HorizontalAlign.Center }, + center: { anchor: "__container__", align: VerticalAlign.Center } + }) + .alt($r('app.media.ic_public_record_speaker_press')) + .hitTestBehavior(HitTestMode.None) + + if (!this.isRecording) { + Text($r('app.string.chat_audio_tips')) + .fontSize($r('app.float.chat_desc_text_font_size')) + .fontColor($r('app.color.color_chat_desc')) + .alignRules({ + middle: { anchor: "__container__", align: HorizontalAlign.Center }, + center: { anchor: "__container__", align: VerticalAlign.Bottom } + }) + .margin({ bottom: 20 }) + } else { + if (this.isCancel) { + Text('松开手指取消发送') + .fontSize(18) + .fontColor(Color.Red) + .alignRules({ + middle: { anchor: "__container__", align: HorizontalAlign.Center }, + center: { anchor: "__container__", align: VerticalAlign.Bottom } + }) + .margin({ bottom: -70 }) + } else { + Text('上划取消发送') + .fontSize(18) + .fontColor('#08C163') + .alignRules({ + middle: { anchor: "__container__", align: HorizontalAlign.Center }, + center: { anchor: "__container__", align: VerticalAlign.Bottom } + }) + .margin({ bottom: -20 }) + Text(this.formatDuration(this.duration)) + .fontSize(16) + .fontColor('#08C163') + .alignRules({ + middle: { anchor: "__container__", align: HorizontalAlign.Center }, + center: { anchor: "__container__", align: VerticalAlign.Bottom } + }) + .margin({ bottom: -70 }) + } + } + } + + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/view/NECameraSelectView.ets b/chatkit_ui/src/main/ets/view/NECameraSelectView.ets new file mode 100644 index 0000000..945e2c5 --- /dev/null +++ b/chatkit_ui/src/main/ets/view/NECameraSelectView.ets @@ -0,0 +1,141 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { BusinessError } from '@kit.BasicServicesKit'; +import { photoAccessHelper } from '@kit.MediaLibraryKit'; +import { camera, cameraPicker } from '@kit.CameraKit'; +import { common } from '@kit.AbilityKit'; + + +@CustomDialog +export struct NECameraSelectView { + controller?: CustomDialogController + // 使用UIExtensionAbility:将common.UIAbilityContext 替换为common.UIExtensionContext + context: common.UIAbilityContext = getContext(this) as common.UIAbilityContext; + onImageChosen?: (url: string) => void + /// 从相册选择视频 + onTakePhotoFromCamera?: () => void; + /// 通过相机拍摄视频 + onTakeVideoFromCamera?: () => void; + + aboutToAppear(): void { + // console.log("net ease start request permissions"); + //this.requestPermissions(["ohos.permission.CAMERA", "ohos.permission.MICROPHONE", "ohos.permission.MEDIA_LOCATION", + // "ohos.permission.WRITE_MEDIA", "ohos.permission.READ_MEDIA"], this.context!); + } + + // 显示相机选择器 + async showCameraPicker() { + try { + // 相机选择器的配置信息 + let pickerProfile: cameraPicker.PickerProfile = { + cameraPosition: camera.CameraPosition.CAMERA_POSITION_BACK + }; + + // 相机选择器的媒体类型 + let mediaTypes: cameraPicker.PickerMediaType[] = [ + cameraPicker.PickerMediaType.PHOTO, // 拍照模式 + cameraPicker.PickerMediaType.VIDEO,// 录制模式 + ] + + let pickerResult: cameraPicker.PickerResult = await cameraPicker.pick(this.context, mediaTypes, pickerProfile); + if (this.onImageChosen && pickerResult.resultCode == 0 && pickerResult.resultUri.length > 0) { + this.onImageChosen(pickerResult.resultUri) + } + console.log("the pick pickerResult is:" + JSON.stringify(pickerResult)); + } catch (error) { + let err = error as BusinessError; + console.error(`the pick call failed. error code: ${err.code}`); + } + } + + // 显示相册选择器 + async showPhotoPicker() { + console.log("net ease show photo picker"); + const photoSelectOptions = new photoAccessHelper.PhotoSelectOptions(); + // 过滤选择媒体文件类型为IMAGE + photoSelectOptions.MIMEType = photoAccessHelper.PhotoViewMIMETypes.IMAGE_TYPE; + // 选择媒体文件的最大数目 + photoSelectOptions.maxSelectNumber = 1; + + const photoViewPicker = new photoAccessHelper.PhotoViewPicker(); + photoViewPicker.select(photoSelectOptions) + .then(async (photoSelectResult: photoAccessHelper.PhotoSelectResult) => { + if (this.onImageChosen && photoSelectResult.photoUris.length > 0) { + this.onImageChosen(photoSelectResult.photoUris[0]) + } + console.info('net ease photoViewPicker.select to file succeed and uris are:' + photoSelectResult.photoUris); + }).catch((err: BusinessError) => { + console.error(`net ease Invoke photoViewPicker.select failed, code is ${err.code}, message is ${err.message}`); + }) + } + + takePicture = () => { + if (this.onTakePhotoFromCamera) { + this.onTakePhotoFromCamera() + } + this.cancel() + } + takeVideo = () => { + if (this.onTakeVideoFromCamera) { + this.onTakeVideoFromCamera() + } + this.cancel() + } + cancel = () => { + this.controller?.close() + } + + build() { + Column() { + Column() { + Text($r('app.string.chat_edit_take_picture')) + .fontSize(14) + .fontColor("#333333") + .textAlign(TextAlign.Center) + .height(42) + .width('100%') + .onClick(this.takePicture) + + Row() + .height(1) + .width('100%') + .backgroundColor("#EFF1F4") + + Text($r('app.string.chat_edit_toke_video')) + .fontSize(14) + .fontColor("#333333") + .textAlign(TextAlign.Center) + .height(42) + .width('100%') + .onClick(this.takeVideo) + } + .height(85) + .width('100%') + .backgroundColor(Color.White) + .borderRadius(12) + .margin({ left: 12, right: 12 }) + + Column() { + Text($r('app.string.mine_edit_cancel')) + .fontSize(14) + .fontColor("#333333") + .textAlign(TextAlign.Center) + .height(42) + .width('100%') + .onClick(this.cancel) + } + .height(42) + .width('100%') + .backgroundColor(Color.White) + .borderRadius(12) + .margin({ top: 10, left: 12, right: 12 }) + + } + .backgroundColor(Color.Transparent) + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/view/NEChatEmojiListItem.ets b/chatkit_ui/src/main/ets/view/NEChatEmojiListItem.ets new file mode 100644 index 0000000..b5a80bc --- /dev/null +++ b/chatkit_ui/src/main/ets/view/NEChatEmojiListItem.ets @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { NIMEmoticonType, NIMInputEmoticon } from '../manager/NEEmojiManager'; + +@Entry +@ComponentV2 +export struct NEChatEmojiListItem { + @Param emoji: NIMInputEmoticon = new NIMInputEmoticon(); + @Param @Require onDidClick?: (emoji: NIMInputEmoticon) => void; + + build() { + RelativeContainer() { + if (this.emoji.type === NIMEmoticonType.file) { + Image($rawfile(`emoji/${this.emoji.file}`)) + .width(30) + .height(30) + .alignRules({ + center: { anchor: "__container__", align: VerticalAlign.Center }, + middle: { anchor: "__container__", align: HorizontalAlign.Center } + }) + } else if (this.emoji.type === NIMEmoticonType.delete) { + Image($rawfile(`emoji/${this.emoji.file}`)) + .width(28) + .height(22) + .alignRules({ + center: { anchor: "__container__", align: VerticalAlign.Center }, + middle: { anchor: "__container__", align: HorizontalAlign.Center } + }) + } + + }.width('100%') + .height('100%') + .alignRules({ + left: { anchor: "__container__", align: HorizontalAlign.Start }, + right: { anchor: "__container__", align: HorizontalAlign.End }, + bottom: { anchor: "__container__", align: VerticalAlign.Bottom }, + top: { anchor: "__container__", align: VerticalAlign.Top } + }).onClick(() => { + if (this.onDidClick) { + this.onDidClick(this.emoji); + } + }) + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/view/NEChatEmojiView.ets b/chatkit_ui/src/main/ets/view/NEChatEmojiView.ets new file mode 100644 index 0000000..c4e7389 --- /dev/null +++ b/chatkit_ui/src/main/ets/view/NEChatEmojiView.ets @@ -0,0 +1,114 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { EmojiDataModel, NEEmojiManager, NIMInputEmoticon } from '../manager/NEEmojiManager'; +import { NEChatEmojiListItem } from './NEChatEmojiListItem'; +import display from '@ohos.display'; + +@Entry +@ComponentV2 +export struct NEChatEmojiView { + @Local data: EmojiDataModel = NEEmojiManager.instance.dataModel; + @Local page: number = 0; + @Local currentIndex: number = 0 + @Param @Require onDidClick?: (emoji: NIMInputEmoticon) => void; + @Local deviceWidth: number = 0; + @Local deviceHeight: number = 0; + scroller: Scroller = new Scroller() + @Param @Require onEmojiSendMessage?: () => void; + private pageSize = 3 * 8 - 1; + private pageData: Array> = []; + + aboutToAppear(): void { + if (this.data.sourceData.length == null) { + this.data = NEEmojiManager.instance.dataModel; + } + console.log("net ease emoji view about to appear ", this.data.sourceData.length); + this.page = this.data.sourceData.length / this.pageSize; + let offset = this.data.sourceData.length % this.pageSize; + console.log('net ease emoji view data page ', this.page); + for (let index = 0; index < this.page; index++) { + console.log('net ease emoji view data index ', index); + let sliceData = this.data.sourceData.slice(index * this.pageSize, this.pageSize * (index + 1)) + let deleteData = NEEmojiManager.instance.deleteEmoji + if (deleteData !== undefined) { + console.log('net ease emoji view delete data ', deleteData); + sliceData.push(deleteData); + } + this.pageData.push(sliceData); + + } + if (offset > 0) { + this.pageData.push(this.data.sourceData.slice(this.page * this.pageSize, offset)); + } + console.log('net ease emoji view data page ', this.pageData.length); + + this.deviceWidth = display.getDefaultDisplaySync().width; + this.deviceHeight = display.getDefaultDisplaySync().height; + + console.log('net ease emoji view device width ', this.deviceWidth); + console.log('net ease emoji view device height ', this.deviceHeight); + } + + // randomColor(): ResourceColor { + // const randomColor = Math.floor(Math.random() * 16777215).toString(16); + // return randomColor + // } + + build() { + + RelativeContainer() { + List() { + ForEach(this.pageData, (items: Array, index) => { + ListItem() { + Grid() { + ForEach(items, (item: NIMInputEmoticon, index) => { + GridItem() { + NEChatEmojiListItem({ + emoji: item, onDidClick: (emoji: NIMInputEmoticon) => { + if (this.onDidClick) { + this.onDidClick(emoji) + } + } + }) + } + }) + } + .width('100%') + .height('100%') + .rowsTemplate('1fr 1fr 1fr') + .columnsTemplate('1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr') + } + }) + } + .chainAnimation(true) + .edgeEffect(EdgeEffect.Spring) + .listDirection(Axis.Horizontal) + .height('80%') + .width('100%') + .scrollSnapAlign(ScrollSnapAlign.CENTER) + .scrollBar(BarState.Off) + + // Text($r("app.string.chat_send")) + // .alignRules({ + // right: { anchor: "__container__", align: HorizontalAlign.End }, + // bottom: { anchor: "__container__", align: VerticalAlign.Bottom }, + // }) + // .textAlign(TextAlign.Center) + // .width(70) + // .height(35) + // .fontSize(14) + // .fontColor(Color.White) + // .backgroundColor($r('app.color.color_chat_send')) + // .onClick(() => { + // if (this.onEmojiSendMessage) { + // this.onEmojiSendMessage() + // } + // }) + } + + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/view/NEImageButton.ets b/chatkit_ui/src/main/ets/view/NEImageButton.ets new file mode 100644 index 0000000..7455e0b --- /dev/null +++ b/chatkit_ui/src/main/ets/view/NEImageButton.ets @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +@Entry +@ComponentV2 +export struct NEImageButton { + @Param @Require image: Resource + @Param onDidClick?: () => void | undefined = undefined + + build() { + RelativeContainer() { + Image(this.image) + .width(24) + .height(24) + .alignRules({ + middle: { anchor: "__container__", align: HorizontalAlign.Center }, + center: { anchor: "__container__", align: VerticalAlign.Center } + }) + .hitTestBehavior(HitTestMode.None) + + Button().alignRules({ + left: { anchor: "__container__", align: HorizontalAlign.Start }, + right: { anchor: "__container__", align: HorizontalAlign.End }, + bottom: { anchor: "__container__", align: VerticalAlign.Bottom }, + top: { anchor: "__container__", align: VerticalAlign.Top } + }).onClick(() => { + if (this.onDidClick) { + this.onDidClick() + } + }).backgroundColor('rgba(0, 0, 0, 0)') + } + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/view/NewWaDialog.ets b/chatkit_ui/src/main/ets/view/NewWaDialog.ets new file mode 100644 index 0000000..c0ee721 --- /dev/null +++ b/chatkit_ui/src/main/ets/view/NewWaDialog.ets @@ -0,0 +1,38 @@ +@CustomDialog +export struct NewWaDialog { + controller: CustomDialogController + firstCallBack: () => void = () => {}; + secondCallBack: () => void = () => {}; + build() { + Column() { + Text('请选择') + .fontSize(17) + .fontColor($r('app.color.top_title')) + .padding(15) + Text('').height(1).width('100%') + .backgroundColor($r('app.color.home_gray')) + Text('纽娃复合营养素固体饮料') + .fontSize(16).fontColor($r('app.color.common_gray_03')) + .padding(10).width('100%').textAlign(TextAlign.Start) + .onClick(() => { + if (this.controller != undefined) { + this.controller.close() + this.firstCallBack(); + } + }) + Text('').height(1).width('100%') + .backgroundColor($r('app.color.home_gray')) + Text('更多商品正在准备中') + .fontSize(16).fontColor($r('app.color.common_gray_03')) + .padding(10).width('100%').textAlign(TextAlign.Start) + .onClick(() => { + if (this.controller != undefined) { + this.controller.close() + this.secondCallBack(); + } + }) + } + .backgroundColor($r('app.color.white')) + + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/view/OperationItemLayout.ets b/chatkit_ui/src/main/ets/view/OperationItemLayout.ets new file mode 100644 index 0000000..504f74c --- /dev/null +++ b/chatkit_ui/src/main/ets/view/OperationItemLayout.ets @@ -0,0 +1,53 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { NEChatMoreOperationData } from '../model/NEChatMoreOperationData'; + +@Entry +@ComponentV2 +export struct OperationItem { + @Param @Require onItemClick?: (data: NEChatMoreOperationData) => void; + @Param @Require operationData: NEChatMoreOperationData; + + build() { + RelativeContainer() { + Button() + .size({ width: 56, height: 56 }) + // .backgroundColor("#FFFFFF") + // .type(ButtonType.Normal) + // .borderRadius(10) + .id("operation_item") + .alignRules({ + center: { anchor: "__container__", align: VerticalAlign.Center }, + middle: { anchor: "__container__", align: HorizontalAlign.Center } + }) + .onClick(() => { + if (this.onItemClick) { + this.onItemClick(this.operationData) + } + }) + + Image($r(this.operationData.imageSource)) + .width(56) + .height(56) + .alignRules({ + center: { anchor: "__container__", align: VerticalAlign.Center }, + middle: { anchor: "__container__", align: HorizontalAlign.Center } + }).hitTestBehavior(HitTestMode.None) + + Text(this.operationData.operationTitle) + .fontColor("#666666") + .fontSize(12) + .offset({ y: 5 }) + .alignRules({ + middle: { anchor: "__container__", align: HorizontalAlign.Center }, + top: { anchor: "operation_item", align: VerticalAlign.Bottom } + }) + + } + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/view/PinMessageComponent.ets b/chatkit_ui/src/main/ets/view/PinMessageComponent.ets new file mode 100644 index 0000000..e902de7 --- /dev/null +++ b/chatkit_ui/src/main/ets/view/PinMessageComponent.ets @@ -0,0 +1,134 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { ChatInfo } from '../model/ChatInfo'; +import { NIMMessageInfo } from '../model/NIMMessageInfo'; +import { AvatarColorUntil, AvatarItem, CommonAvatar } from '@nimkit/common'; +import { pinMessageContent } from './MessageComponentBuilder'; +import { V2NIMMessageType } from '@nimsdk/base'; +import { MessageItemClick } from './MessageItemClick'; + +/** + * 标记页面中的消息组件 + */ +@ComponentV2 +export struct PinMessageComponent { + AlignLeft: Record> = { + 'top': { 'anchor': '__container__', 'align': VerticalAlign.Top }, + 'left': { 'anchor': '__container__', 'align': HorizontalAlign.Start } + } + @Require + @Param + message?: NIMMessageInfo = undefined; + @Require + @Param + chatUserInfo?: ChatInfo = undefined; + @Param + onMessageClick?: MessageItemClick = undefined + @Param + onMoreButtonClick?: (event: ClickEvent, msg?: NIMMessageInfo) => void = undefined + @Param + onPinItemClick?: (event: ClickEvent, msg?: NIMMessageInfo) => void = undefined + + build() { + Column() { + if (this.message) { + Row() { + CommonAvatar({ + item: new AvatarItem(this.chatUserInfo?.getChatUserAvatarUrl(this.message?.message.senderId ?? '') ?? '', + this.chatUserInfo?.getChatUserAvatarName(this.message?.message.senderId ?? '') ?? '', + AvatarColorUntil.getBackgroundColorById(this.message?.message.senderId ?? '')), + longPressGesture: () => { + this.onMessageClick?.onAvatarLongPress?.( this.message) + } + }) + .width(36) + .height(36) + .borderRadius(20) + .margin({ left: 16, top: 16 }) + .id("otherAvatar") + .onClick(() => { + this.onMessageClick?.onAvatarClick?.(this.message) + }) + Column() { + Text(this.chatUserInfo?.getChatUserShowName(this.message?.message.senderId ?? '')) + .fontColor($r('app.color.color_chat_sub_title')) + .fontSize($r('app.float.chat_subtitle_text_font_size')) + .maxLines(1) + .width(150) + .textAlign(TextAlign.Start) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .ellipsisMode(EllipsisMode.END) + + Text(this.message?.getMessageFormatTime()) + .fontColor($r('app.color.color_chat_desc')) + .fontSize($r('app.float.chat_desc_text_font_size')) + .margin({ top: 3 }) + } + .layoutWeight(1) + .alignItems(HorizontalAlign.Start) + .margin({ left: 10, top: 16 }) + + Image($r('app.media.ic_public_more_dot')) + .width(32) + .height(32) + .padding({ + left: 3, + right: 3, + top: 3, + bottom: 3 + }) + .margin({ top: 16, right: 16 }) + .onClick((event: ClickEvent) => { + this.onMoreButtonClick?.(event, this.message) + }) + } + .alignSelf(ItemAlign.Start) + + Blank() + .height(1) + .backgroundColor('#E4E9F2') + .margin({ + left: 16, + right: 16, + top: 12 + }) + + Column() { + pinMessageContent({ message: this.message, onMessageClick: this.onMessageClick }) + .backgroundColor(this.message?.message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_TEXT ? + Color.Transparent : $r('app.color.color_chat_receive_message_bg')) + .borderRadius(6) + .id("msgContainer") + .alignRules(this.AlignLeft) + .onClick((event: ClickEvent) => { + this.onMessageClick?.onItemClick?.(event, this.message) + }) + } + .alignItems(HorizontalAlign.Start) + .alignSelf(ItemAlign.Start) + .margin({ + left: 16, + right: 16, + top: 12, + bottom: 16 + }) + .gesture(LongPressGesture().onAction((event: GestureEvent) => { + this.onMessageClick?.onItemLongClick?.(event, this.message) + })) + } + } + .margin({ + left: 20, + right: 20 + }) + .backgroundColor(Color.White) + .borderRadius(8) + .onClick((event: ClickEvent) => { + this.onPinItemClick?.(event, this.message) + }) + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/view/TeachDialog.ets b/chatkit_ui/src/main/ets/view/TeachDialog.ets new file mode 100644 index 0000000..74bcc07 --- /dev/null +++ b/chatkit_ui/src/main/ets/view/TeachDialog.ets @@ -0,0 +1,46 @@ +@CustomDialog +export struct TeachDialog { + controller: CustomDialogController + videoCallBack: () => void = () => {}; + imgCallBack: () => void = () => {}; + build() { + Column() { + Text('提示') + .fontSize(17) + .fontColor($r('app.color.top_title')) + .padding(15) + Text('').height(1).width('100%') + .backgroundColor($r('app.color.home_gray')) + Text('图文科普') + .fontSize(16).fontColor($r('app.color.common_gray_03')) + .padding(10).width('100%').textAlign(TextAlign.Start) + .onClick(() => { + if (this.controller != undefined) { + this.controller.close() + this.imgCallBack(); + } + }) + Text('').height(1).width('100%') + .backgroundColor($r('app.color.home_gray')) + Text('视频科普') + .fontSize(16).fontColor($r('app.color.common_gray_03')) + .padding(10).width('100%').textAlign(TextAlign.Start) + .onClick(() => { + if (this.controller != undefined) { + this.controller.close() + this.videoCallBack(); + } + }) + } + // .onClick(() => { + // + // if (this.controller != undefined) { + // this.controller.close() + // + // } + // }) + + .backgroundColor($r('app.color.white')) + + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/view/TeamExitWarningDialog.ets b/chatkit_ui/src/main/ets/view/TeamExitWarningDialog.ets new file mode 100644 index 0000000..baa8f2d --- /dev/null +++ b/chatkit_ui/src/main/ets/view/TeamExitWarningDialog.ets @@ -0,0 +1,77 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { ComponentContent } from '@kit.ArkUI' + +export class TeamExitDialogParam { + onConfirm: () => void + + constructor(onConfirm: () => void) { + this.onConfirm = onConfirm + } +} + +@Builder +export function teamExitWarningDialogBuilder(params: TeamExitDialogParam) { + Column() { + Text($r('app.string.chat_team_error_tip_title')) + .fontSize($r('app.float.chat_title_text_font_size')) + .fontColor($r('app.color.color_chat_title')) + .margin({ top: 20 }) + + Text($r('app.string.chat_team_error_tip_content')) + .fontSize($r('app.float.chat_subtitle_text_font_size')) + .fontColor($r('app.color.color_chat_sub_title')) + .margin({ top: 20, bottom: 20 }) + + Line().height(1).width('100%').backgroundColor($r('app.color.chat_input_background')) + + Flex({ justifyContent: FlexAlign.SpaceAround }) { + Button($r('app.string.common_sure')) + .fontSize($r('app.float.chat_subtitle_text_font_size')) + .onClick(() => { + params.onConfirm() + }) + .backgroundColor(0xffffff) + .fontColor('#ff007AFF') + .width('50%') + } + }.backgroundColor(Color.White) + .width('80%') + .borderRadius(8) +} + +export class TeamExitWarningDialog { + static contentNode: ComponentContent; + + //显示弹窗 + static show(context: UIContext, dialogParam: TeamExitDialogParam) { + //ComponentContent对象有三个参数 + //参数1:UI 上下文 + //参数2:使用 wrapBuilder 包装 buildGlobalDialogComponent 函数,这个函数用于构建对话框的实际内容 + //参数3:传递给对话框的参数,包含内容文本和按钮的回调函数 + TeamExitWarningDialog.contentNode = + new ComponentContent(context, wrapBuilder(teamExitWarningDialogBuilder), dialogParam); + + const promptAction = context.getPromptAction() //通过 context 获取 promptAction,用于操作对话框显示 + + //显示弹窗 + promptAction.openCustomDialog(TeamExitWarningDialog.contentNode, { + alignment: DialogAlignment.Center, //对话框在屏幕中央显示 + autoCancel: true, //点击弹窗外区域是否取消弹窗 + onWillDismiss: () => { + dialogParam.onConfirm() + } + }); + } + + //关闭弹窗 + static close(context: UIContext) { + const promptAction = context.getPromptAction() + promptAction.closeCustomDialog(TeamExitWarningDialog.contentNode) + } +} diff --git a/chatkit_ui/src/main/ets/view/TeamLeftWarningDialog.ets b/chatkit_ui/src/main/ets/view/TeamLeftWarningDialog.ets new file mode 100644 index 0000000..b96efc8 --- /dev/null +++ b/chatkit_ui/src/main/ets/view/TeamLeftWarningDialog.ets @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +/** + * 群无效弹框 + */ +@CustomDialog +export struct TeamLeftWarningDialog { + controller?: CustomDialogController + confirm?: () => void + + build() { + Column() { + + Text($r('app.string.chat_team_error_tip_title')) + .fontSize($r('app.float.chat_title_text_font_size')) + .fontColor($r('app.color.color_chat_title')) + .margin({ top: 20 }) + + Text($r('app.string.chat_team_error_tip_content')) + .fontSize($r('app.float.chat_subtitle_text_font_size')) + .fontColor($r('app.color.color_chat_sub_title')) + .margin({ top: 20, bottom: 20 }) + + Line().height(1).width('100%').backgroundColor($r('app.color.chat_input_background')) + + Text($r('app.string.common_sure')) + .fontSize($r('app.float.chat_title_text_font_size')) + .fontColor('#ff1861DF') + .onClick(() => { + this.controller?.close() + if (this.confirm) { + this.confirm() + } + }) + } + .padding({ + top: 20, + bottom: 5, + left: 24, + right: 24 + }) + + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/view/TextMessageDetailDialog.ets b/chatkit_ui/src/main/ets/view/TextMessageDetailDialog.ets new file mode 100644 index 0000000..42cc2eb --- /dev/null +++ b/chatkit_ui/src/main/ets/view/TextMessageDetailDialog.ets @@ -0,0 +1,59 @@ +import { parseMessageText } from '../common/MessageHelper' +import { NEEmojiParseResult } from '../manager/NEEmojiManager' +import { NIMMessageInfo } from '../model/NIMMessageInfo' + +/// 文本消息详情展示页 +@CustomDialog +export struct TextMessageDetailDialog { + controller: CustomDialogController + pathStack: NavPathStack = new NavPathStack() + @BuilderParam message: NIMMessageInfo | undefined + + build() { + if (this.message) { + Column() { + Scroll() { + Text() { + ForEach(parseMessageText(this.message.message.text), (item: NEEmojiParseResult) => { + if (item.text) { + Span(item.text) + .fontSize($r('app.float.chat_message_text_font_size')) + .textCase(TextCase.Normal) + .fontColor($r('app.color.color_chat_title')) + } else if (item.emoji) { + ImageSpan($rawfile(`emoji/${item.emoji.file}`)).width('18') + .height('18') + .objectFit(ImageFit.Fill) + .verticalAlign(ImageSpanAlignment.CENTER) + } + }) + } + .width('100%') + .textAlign(TextAlign.Center) + .copyOption(CopyOptions.LocalDevice) + .padding({ + left: 20, + right: 20 + }) + .onClick(() => { + this.controller.close() + }) + } + .width('100%') + .height('100%') + .margin({ + top: 56, + bottom: 30 + }) + .alignSelf(ItemAlign.Center) + .backgroundColor(Color.White) + } + .width('100%') + .height('100%') + .backgroundColor(Color.White) + .onClick(() => { + this.controller?.close() + }) + } + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/viewmodel/ChatBaseViewModel.ets b/chatkit_ui/src/main/ets/viewmodel/ChatBaseViewModel.ets new file mode 100644 index 0000000..f207e90 --- /dev/null +++ b/chatkit_ui/src/main/ets/viewmodel/ChatBaseViewModel.ets @@ -0,0 +1,1142 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { + AitModel, + ChatKitClient, + ChatRepo, + collectionTypeOffset, + ConversationRepo, + ErrorUtils, + IMKitConfigCenter, + LocalConversationRepo, + StorageRepo, + YxAitMsg +} from '@nimkit/chatkit'; +import fs from '@ohos.file.fs'; +import { + V2NIMAIModelRoleType, + V2NIMAIUser, + V2NIMConnectStatus, + V2NIMDataSyncState, + V2NIMDataSyncType, + V2NIMError, + V2NIMErrorCode, + V2NIMLoginStatus, + V2NIMMessage, + V2NIMMessageAIConfigParams, + V2NIMMessageAIStatus, + V2NIMMessageAIStreamStatus, + V2NIMMessageConfig, + V2NIMMessageDeletedNotification, + V2NIMMessageFileAttachment, + V2NIMMessagePinNotification, + V2NIMMessagePinState, + V2NIMMessageRevokeNotification, + V2NIMMessageSendingState, + V2NIMMessageType, + V2NIMQueryDirection, + V2NIMSendMessageParams +} from '@nimsdk/base'; +import { NIMMessageInfo } from '../model/NIMMessageInfo'; +import { ChatInfo } from '../model/ChatInfo'; +import { ChatConst } from '../constants/ChatConst'; +import { BusinessError } from '@kit.BasicServicesKit'; +import { DeviceUtils } from '../common/DeviceUtils'; +import { image } from '@kit.ImageKit'; +import { + saveLocalRevokeMessage, + saveLocalRevokeMessageFormOther +} from '@nimkit/chatkit/src/main/ets/utils/MessageUtils'; +import { ConversationSelectModel } from '@nimkit/chatkit/src/main/ets/model/ConversationSelectModel'; +import { ChatKitConfig } from '../ChatKitConfig'; +import { sceneMap } from '@kit.MapKit'; +import { clearForwardAtMark, createForwardMessageListFileDetail, sendMessageFailedTips } from '../common/MessageHelper'; +import { instanceToPlain } from 'class-transformer'; +import { NECommonUtils } from '@nimkit/common'; +import { HashMap, JSON } from '@kit.ArkTS'; +import { assign } from '@nimsdk/vendor'; + +@ObservedV2 +export class ChatBaseViewModel { + @Trace static currentViewModel: ChatBaseViewModel | undefined = undefined + @Trace anchorMsg: NIMMessageInfo | undefined = undefined + @Trace conversationId: string = "" + // p2p 会话是对方账号ID,群聊是为群ID teamId + targetId: string = "" + @Trace chatInfo: ChatInfo | undefined = undefined + @Trace selectMsgMap: Map = new Map() + @Trace selectMsgCount = 0 + @Trace needScrollToBottom = false + isLoading = false + hasMore = false + hasNew = false + revokeMsg: NIMMessageInfo | undefined = undefined + sendingMsgClientId: string = '' + saveRevokeClientId: string = '' + hasLoadData = false + // 网络连接状态 + @Trace networkBroken: boolean = ChatKitClient.connectBroken() + // 流式 ing 缓存数据 + private streamingMessageMap: HashMap = new HashMap(); + // 发送消息 + onSendFun = async (message: V2NIMMessage): Promise => { + if (message.conversationId === this.conversationId) { + if (message.sendingState == V2NIMMessageSendingState.V2NIM_MESSAGE_SENDING_STATE_SENDING) { + if (message.messageClientId !== this.sendingMsgClientId) { + this.sendingMsgClientId = message.messageClientId + this.chatInfo?.pushMessage(message) + this.chatInfo?.setReceiveMsg(true) + } + + } else { + let result = this.chatInfo?.updateMessageStatus(message) + if (!result) { + this.chatInfo?.setReceiveMsg(true) + } + } + } + } + private msgDirection: number = 0 + + setAnchorMessage(msg: NIMMessageInfo | undefined) { + this.anchorMsg = msg + } + + init(conversationId: string, chatInfo: ChatInfo) { + this.conversationId = conversationId + this.targetId = ChatKitClient.nim.conversationIdUtil.parseConversationTargetId(conversationId) + this.chatInfo = chatInfo; + // 设置当前会话 + ChatKitClient.setCurrentConversationId(this.conversationId) + // 注册消息接受监听 + ChatRepo.onReceiverMessage(this.onReceiveFun) + // 注册消息更新监听 + ChatRepo.onReceiveMessagesModified(this.onModifyFun) + // 注册消息发送监听 + ChatRepo.onSendMessage(this.onSendFun) + // 注册消息删除监听 + ChatRepo.onDeleteMessage(this.onDeleteFun) + // 注册消息撤回监听 + ChatRepo.onRevokeMessage(this.onRevokeFun) + // 注册消息置顶监听 + ChatRepo.onMessagePinNotification(this.onPinFun) + + // 监听数据同步完成监听 + ChatKitClient.nim.loginService.on('onDataSync', this.onSyncFinishedFun) + // 长连接状态变更 + ChatKitClient.nim.loginService?.on('onConnectStatus', this.onConnectStatusChange) + // 登录状态变更 + ChatKitClient.nim.loginService?.on('onLoginStatus', this.onLoginStatusChange) + + ChatBaseViewModel.currentViewModel = this + // 清理未读数 + this.clearUnreadCount() + } + + onConnectStatusChange = (status: V2NIMConnectStatus) => { + if (status !== V2NIMConnectStatus.V2NIM_CONNECT_STATUS_CONNECTED) { + this.networkBroken = true + } + } + onLoginStatusChange = (status: V2NIMLoginStatus) => { + if (status === V2NIMLoginStatus.V2NIM_LOGIN_STATUS_LOGINED) { + this.networkBroken = false + } + } + // 处理数据同步完成 + onSyncFinishedFun = (type: V2NIMDataSyncType, + state: V2NIMDataSyncState, + error?: V2NIMError) => { + if (state == V2NIMDataSyncState.V2NIM_DATA_SYNC_STATE_COMPLETED) { + this.toHandleDataSyncFinished() + } + } + // 接受消息 + onReceiveFun = (messages: V2NIMMessage[]) => { + if (this.hasNew) { + return + } + let hasNew = false + let receiveMsg: NIMMessageInfo[] = []; + for (let i = messages.length - 1; i >= 0; i--) { + let msg = messages[i]; + if (msg.conversationId == this.conversationId) { + let msgInfo = this.chatInfo?.pushMessage(msg); + if (msgInfo !== undefined) { + receiveMsg.push(msgInfo) + } + hasNew = true; + } + } + if (hasNew) { + this.toHandleReceiveMessage(receiveMsg) + this.clearUnreadCount() + this.chatInfo?.setReceiveMsg(true); + } + } + // 更新消息 + onModifyFun = (messages: V2NIMMessage[]) => { + for (let i = messages.length - 1; i >= 0; i--) { + let message = messages[i]; + // 流式并且机器人回复消息,走流式展示逻辑 + if (message.aiConfig?.aiStream && message.aiConfig?.aiStatus === V2NIMMessageAIStatus.V2NIM_MESSAGE_AI_STATUS_RESPONSE) { + this.onModifyFunStream(message) + } else { + this.onModifyFunNormal(message) + } + } + } + + private onModifyFunNormal = (message: V2NIMMessage) => { + if (this.hasNew) { + return + } + let hasNew = false + let receiveMsg: NIMMessageInfo[] = []; + if (message.conversationId == this.conversationId) { + let msgInfo = this.chatInfo?.pushModifyMessage(message); + if (msgInfo !== undefined) { + receiveMsg.push(msgInfo) + } + hasNew = true; + } + if (hasNew) { + this.toHandleReceiveMessage(receiveMsg) + // this.clearUnreadCount() // 更新消息不做 clear 动作 + this.chatInfo?.setReceiveMsg(true); + } + } + + private onModifyFunStream = async (message: V2NIMMessage) => { + if (message.aiConfig?.aiStreamStatus === V2NIMMessageAIStreamStatus.V2NIM_MESSAGE_AI_STREAM_STATUS_STREAMING) { + // 检查新老情况 + const messageClientId: string = message.messageClientId + const oldStreamMessage: StreamMessage | undefined = this.streamingMessageMap.get(messageClientId) // 老的 + const newStreamMessage: StreamMessage = new StreamMessage(message) // 新的 + this.streamingMessageMap.set(messageClientId, newStreamMessage) // 替换成新的 + + // 准备裁切 message.text + const oldLen = oldStreamMessage?.message?.text?.length ?? 0 + const newLen = newStreamMessage.message?.text?.length ?? 0 + const newStr: string = newStreamMessage.message?.text ?? '' + const currentIndex: number = newStreamMessage.index + + // 开始裁切 + for (let i = oldLen; i < newLen; i++) { + const latestStreaming: StreamMessage | undefined = this.streamingMessageMap.get(messageClientId) + if (latestStreaming.finish || currentIndex !== latestStreaming.index) { + break; // finish or index 已经发生了变化,不再更新 + } + const tmpMessage: V2NIMMessage = assign({}, message) + const tmpStr: string = newStr.substring(0, i + 1); + tmpMessage.text = tmpStr + this.onModifyFunNormal(tmpMessage) // 循环 modify + // 阻塞 20ms,避免循环过快而回调过快 + await new Promise(resolve => { + setTimeout(resolve, 20); // 例如,这里设置一个 20 毫秒的延迟。还有优化空间 + }); + } + } else { + if (message.aiConfig?.aiStreamStatus === V2NIMMessageAIStreamStatus.V2NIM_MESSAGE_AI_STREAM_STATUS_STOPPED || + message.aiConfig?.aiStreamStatus === V2NIMMessageAIStreamStatus.V2NIM_MESSAGE_AI_STREAM_STATUS_UPDATED || + message.aiConfig?.aiStreamStatus === V2NIMMessageAIStreamStatus.V2NIM_MESSAGE_AI_STREAM_STATUS_GENERATED || + message.aiConfig?.aiStreamStatus === V2NIMMessageAIStreamStatus.V2NIM_MESSAGE_AI_STREAM_STATUS_ABORTED) { + // finish + const oldStreaming = this.streamingMessageMap.get(message.messageClientId) + if (oldStreaming) { + oldStreaming.finish = true + } else { + this.streamingMessageMap.set(message.messageClientId, new StreamMessage(message)) // finished message + } + } + this.onModifyFunNormal(message) // 直接 modify + } + } + + // 删除消息 + onDeleteFun = (messages: V2NIMMessageDeletedNotification[]) => { + messages.forEach((msg, index, messages) => { + if (msg.messageRefer.conversationId === this.conversationId) { + this.removeReplyInfo(msg.messageRefer.messageClientId) + this.chatInfo?.deleteMessage(msg.messageRefer.messageClientId) + if (this.selectMsgMap.has(msg.messageRefer.messageClientId)) { + this.selectMsgMap.delete(msg.messageRefer.messageClientId) + this.selectMsgCount = this.selectMsgMap.size + } + } + }) + // 等待 1 秒,然后重新拉取一次消息 + if ((this.chatInfo?.msgList.totalCount() ?? 0) <= 0) { + setTimeout(() => { + this.getMessageList() // 被删完了消息之后,防止消息空了,重新拉取 + }, 1000) + } + } + // 撤回消息 + onRevokeFun = (messages: V2NIMMessageRevokeNotification[]) => { + messages.forEach((msg, index, messages) => { + if (msg.messageRefer.conversationId === this.conversationId) { + let revokeMsg = this.chatInfo?.getMessage(msg.messageRefer.messageClientId) + this.removeReplyInfo(msg.messageRefer.messageClientId) + this.chatInfo?.revokeMessage(msg.messageRefer.messageClientId) + if (this.selectMsgMap.has(msg.messageRefer.messageClientId)) { + this.selectMsgMap.delete(msg.messageRefer.messageClientId) + this.selectMsgCount = this.selectMsgMap.size + } + if (this.saveRevokeClientId == revokeMsg?.message.messageServerId) { + return + } + this.saveRevokeClientId = revokeMsg?.message.messageServerId ?? '' + console.debug('netease viewmodel onRevokeFun revoke message', msg.revokeAccountId, + msg.messageRefer.messageClientId) + if (revokeMsg !== undefined && msg.messageRefer.senderId == ChatKitClient.getLoginUserId()) { + let canEdit = + !revokeMsg.isReceiveMsg && revokeMsg.message.messageType == V2NIMMessageType.V2NIM_MESSAGE_TYPE_TEXT + saveLocalRevokeMessage(msg.messageRefer.conversationId, revokeMsg.message, canEdit) + } else { + saveLocalRevokeMessageFormOther(msg.messageRefer.conversationId, msg, false) + } + } + }) + } + // 置顶消息 + onPinFun = ((notification: V2NIMMessagePinNotification) => { + if (notification.pinState == V2NIMMessagePinState.V2NIM_MESSAGE_PIN_STATE_PINNED) { + this.chatInfo?.addPinMessage([notification.pin]) + this.needScrollToBottom = true + + } else if (notification.pinState == V2NIMMessagePinState.V2NIM_MESSAGE_PIN_STATE_UPDATED) { + this.chatInfo?.addPinMessage([notification.pin]) + this.needScrollToBottom = true + + } else if (notification.pinState == V2NIMMessagePinState.V2NIM_MESSAGE_PIN_STATE_NOT_PINNED) { + this.chatInfo?.removePinMessage([notification.pin]) + } + + }) + + loadAnchorMsg(msg: NIMMessageInfo) { + this.loadMessageListWithAnchor(msg) + } + + // 拉取历史消息 + async getMessageList(): Promise { + let hasError = false + const messageList: V2NIMMessage[] = await ChatRepo.getMessageList({ + 'conversationId': this.conversationId, + 'limit': ChatConst.chatMessagePageSize, + 'direction': this.msgDirection, + 'onlyQueryLocal': false, + 'strictMode': true + }).catch((err: BusinessError) => { + hasError = true + return [] + }) + let result: NIMMessageInfo[] = []; + if (hasError) { + return result + } + // 拉回的消息数据存在误差 + if (messageList.length >= ChatConst.chatMessagePageSize - 10) { + this.hasMore = true; + } else { + this.hasMore = false; + } + this.chatInfo?.cleanMessage() + this.setAnchorMessage(undefined) + for (let index = messageList.length - 1; index >= 0; index--) { + let msgInfo = this.chatInfo?.pushMessage(messageList[index]); + if (msgInfo != undefined) { + result.push(msgInfo); + } + } + // 修改接受消息标志,如果有新消息则更新接受消息标志,否则列表滚动到底部 + this.chatInfo?.setReceiveMsg(true) + this.toHandleQueryMessage(result, messageList) + this.hasLoadData = true + return result; + } + + async loadMessageListWithAnchor(anchorMsg: NIMMessageInfo): Promise { + let errorCount = 0 + let result: NIMMessageInfo[] = []; + const messageBeforList: V2NIMMessage[] = await ChatRepo.getMessageList({ + 'conversationId': this.conversationId, + 'anchorMessage': anchorMsg.message, + 'limit': ChatConst.chatMessagePageSize, + 'direction': V2NIMQueryDirection.V2NIM_QUERY_DIRECTION_DESC + }).catch((err: BusinessError) => { + errorCount++ + return [] + }) + const messageAfterList: V2NIMMessage[] = await ChatRepo.getMessageList({ + 'conversationId': this.conversationId, + 'anchorMessage': anchorMsg.message, + 'limit': ChatConst.chatMessagePageSize, + 'direction': V2NIMQueryDirection.V2NIM_QUERY_DIRECTION_ASC + }).catch((err: BusinessError) => { + errorCount++ + return [] + }) + if (errorCount > 1) { + return result + } + this.chatInfo?.cleanMessage() + if (messageBeforList.length > 0) { + for (let index = messageBeforList.length - 1; index >= 0; index--) { + let msgInfo = this.chatInfo?.pushMessage(messageBeforList[index]) + if (msgInfo != undefined) { + result.push(msgInfo); + } + } + } + this.chatInfo?.pushMessageInfo(anchorMsg) + let anchorIndex = this.chatInfo?.msgList.totalCount() ?? 1 - 1 + if (messageAfterList.length > 0) { + for (let index = 0; index < messageAfterList.length; index++) { + let msgInfo = this.chatInfo?.pushMessage(messageAfterList[index]) + if (msgInfo != undefined) { + result.push(msgInfo); + } + } + } + if (messageAfterList.length > ChatConst.chatMessagePageSize - 5 || this.networkBroken) { + this.hasNew = true + } else if (!this.networkBroken) { + this.hasNew = false; + } + // // 修改接受消息标志,如果有新消息则更新接受消息标志,否则列表滚动到底部 + // this.chatInfo?.setReceiveMsg(true) + this.toHandleQueryMessage(result, messageAfterList) + if (anchorIndex) { + this.chatInfo?.setScrollIndex(anchorIndex) + } + this.hasLoadData = true + return result; + } + + // 处理接受消息,用于子类进行特殊业务处理 + toHandleReceiveMessage(messages: NIMMessageInfo[]) { + + } + + // 处理查询消息,用于子类进行特殊业务处理 + toHandleQueryMessage(messages: NIMMessageInfo[], originMsg: V2NIMMessage[]) { + + } + + toHandleDataSyncFinished() { + + } + + // 是否有更多消息,分页加载 + canLoadMore(): boolean { + return this.hasMore && !this.isLoading; + } + + // 是否有更多新消息加载,分页加载 + canLoadNext(end: number): boolean { + return this.hasNew && !this.isLoading && this.chatInfo !== undefined && + this.chatInfo.msgList.totalCount() - end < ChatConst.chatMessagePageSize + } + + // 拉取历史消息 + async getMoreMessageList(): Promise { + let anchorMsg = this.chatInfo?.msgList.getData(0) + if (this.isLoading || anchorMsg == undefined) { + return [] + } + this.isLoading = true; + let result: NIMMessageInfo[] = []; + await ChatRepo.getMessageList({ + "anchorMessage": anchorMsg.message, + "conversationId": this.conversationId, + "limit": ChatConst.chatMessagePageSize, + "direction": this.msgDirection, + }).then((messageList: V2NIMMessage[]) => { + // SDK 返回消息不太稳定,所以按照更小的值判断是否有下一页 + if (messageList.length >= ChatConst.chatMessagePageSize - 5 || this.networkBroken) { + this.hasMore = true + } else { + this.hasMore = false + } + if (this.chatInfo) { + result = this.chatInfo.unshiftMessage(messageList) + } + this.toHandleQueryMessage(result, messageList) + this.isLoading = false + }).catch((err: BusinessError) => { + this.isLoading = false + if (this.networkBroken) { + this.hasMore = true + } + }) + return result + } + + // 拉取历史消息 + async getNewMessageList(): Promise { + if (this.isLoading || !this.hasNew) { + return [] + } + let anchorMsg = this.chatInfo?.msgList.getData(this.chatInfo?.msgList.totalCount() - 1) + if (anchorMsg == undefined) { + return [] + } + this.isLoading = true; + let result: NIMMessageInfo[] = []; + await ChatRepo.getMessageList({ + "anchorMessage": anchorMsg.message, + "conversationId": this.conversationId, + "limit": ChatConst.chatMessagePageSize, + "direction": V2NIMQueryDirection.V2NIM_QUERY_DIRECTION_ASC, + }).then((messageList: V2NIMMessage[]) => { + // SDK 返回消息不太稳定,所以按照更小的值判断是否有下一页 + if (messageList.length >= ChatConst.chatMessagePageSize - 10 || this.networkBroken) { + this.hasNew = true + } else { + this.hasNew = false + } + console.debug('netease getNewMessageList,lenght:', messageList.length, 'hasNew:', this.hasNew) + + if (this.chatInfo) { + for (let index = 0; index < messageList.length; index++) { + let msgInfo = this.chatInfo.pushMessage(messageList[index]) + result.push(msgInfo) + } + } + this.toHandleQueryMessage(result, messageList) + this.isLoading = false + }).catch((err: BusinessError) => { + this.isLoading = false + if (this.networkBroken) { + this.hasNew = true + } else { + this.hasNew = false + } + }) + return result + } + + // 拉取PIN信息 + getPinList() { + ChatRepo.getPinnedMessageList(this.conversationId).then((pinMessageList) => { + this.chatInfo?.resetPinMessage(pinMessageList) + this.needScrollToBottom = true + }) + } + + // 删除消息 + deleteMessage(messages: NIMMessageInfo[]) { + for (const message of messages) { + ChatRepo.deleteMessage(message.message, undefined, false).then(() => { + this.removeReplyInfo(message.message.messageClientId) + }).catch((err: BusinessError) => { + ErrorUtils.handleErrorToast(err.code) + }); + } + } + + // 批量删除消息 + deleteMessageList(messages: NIMMessageInfo[]) { + let msgList: V2NIMMessage[] = [] + messages.forEach((msg, index, messages) => { + msgList.push(msg.message) + }) + + ChatRepo.deleteMessages(msgList, undefined, false).then(() => { + messages.forEach((msg) => { + this.removeReplyInfo(msg.message.messageClientId) + }) + }).catch((err: BusinessError) => { + ErrorUtils.handleErrorToast(err.code) + }); + } + + // 撤回消息 + revokeMessage(msg: NIMMessageInfo) { + ChatRepo.revokeMessage(msg.message).then(() => { + if (msg.isPinMsg && msg.pinInfo) { + ChatRepo.unpinMessage(msg.pinInfo?.messageRefer) + } + this.removeReplyInfo(msg.message.messageClientId) + }).catch((err: BusinessError) => { + ErrorUtils.handleErrorToast(err.code) + console.error(`netease Invoke startAbility failed, code is ${err.code}, message is ${err.message}`); + }); + } + + /// 移除被回复信息 + removeReplyInfo(invalidMessageClientId: string) { + const invalidMessage = this.chatInfo?.getMessage(invalidMessageClientId) + if (invalidMessage) { + const invalidIndex = this.chatInfo?.msgList.getMessageList().indexOf(invalidMessage) + if (invalidIndex) { + for (let index = invalidIndex; index < (this.chatInfo?.msgList.totalCount() ?? invalidIndex); index++) { + let message = this.chatInfo?.msgList.getMessageList()[index] + if (message && message.replyMsg?.message.messageClientId === invalidMessage.message.messageClientId) { + message.replyMsg = undefined + } + } + } + } + } + + // 收藏消息 + collectionMessage(msg: NIMMessageInfo) { + if (ErrorUtils.checkNetworkAndToast()) { + let collectionDic: Record = {} + let message = msg.message + clearForwardAtMark(message) + const messageString = ChatKitClient.nim.messageConverter.messageSerialization(message) + if (messageString) { + collectionDic["message"] = messageString + } + + collectionDic['conversationName'] = this.chatInfo?.conversationName ?? '' + collectionDic['senderName'] = this.chatInfo?.getChatUserShowName(message) ?? '' + collectionDic['avatar'] = this.chatInfo?.getChatUserAvatarUrl(message) ?? '' + + const collectionData = JSON.stringify(collectionDic) + + ChatRepo.addCollection({ + collectionType: message.messageType.valueOf() + collectionTypeOffset, + collectionData: collectionData, + uniqueId: message.messageServerId + }).catch((err: BusinessError) => { + ErrorUtils.handleErrorToast(err.code) + }).finally(() => { + NECommonUtils.showToast($r('app.string.chat_collection_success')) + }) + } + } + + // PIN消息 + pinMessage(msg: NIMMessageInfo) { + if (ErrorUtils.checkNetworkAndToast()) { + ChatRepo.pinMessage(msg.message).catch((err: BusinessError) => { + if (err.code == V2NIMErrorCode.V2NIM_ERROR_CODE_PIN_ALREADY_EXIST) { + return + } + ErrorUtils.handleErrorToast(err.code) + }) + } + } + + unpinMessage(msg: NIMMessageInfo) { + if (ErrorUtils.checkNetworkAndToast()) { + if (msg.isPinMsg) { + if (msg.pinInfo?.messageRefer !== undefined) { + ChatRepo.unpinMessage(msg.pinInfo?.messageRefer).catch((err: BusinessError) => { + if (err.code == V2NIMErrorCode.V2NIM_ERROR_CODE_PIN_NOT_EXIST) { + return + } + ErrorUtils.handleErrorToast(err.code) + }) + } + } + } + } + + // 清理未读数 + clearUnreadCount() { + if (IMKitConfigCenter.enableLocalConversation) { + LocalConversationRepo.clearUnreadCountByIds([this.conversationId]) + } else { + ConversationRepo.clearUnreadCountByIds([this.conversationId]) + } + } + + // 消息发送之前调用,用于配置消息通用参数 + beforeSendMessage(msg: V2NIMMessage): V2NIMMessage { + // if (ChatKitConfig.messageReadState) { + // let msgConfig: V2NIMMessageConfig = { + // readReceiptEnabled: false + // } + // msg.messageConfig = msgConfig + // } + return msg + } + + // 发送消息并设置发送进度 + sendMessageAndSetProgress(message: V2NIMMessage) { + this.sendMessage(this.beforeSendMessage(message), undefined, (percentage: number) => { + let msgInfo = this.chatInfo?.getMessage(message.messageClientId) + if (msgInfo) { + let progress = percentage * 100 + msgInfo.setDownloadProgress(progress) + if (progress >= 100) { + msgInfo.setDownloadProgress(-1) + } + } + }); + } + + // 发送文本消息 + async sendTextMessage(text: string, replyMsg?: NIMMessageInfo, aitModel?: AitModel, pushList?: string[]) { + const message = ChatRepo.createTextMessage(text) + //设置Ait + if (aitModel && aitModel.aitBlocks.size > 0) { + let extensionMap: YxAitMsg = { + yxAitMsg: aitModel.aitBlocks + } + let extension = JSON.stringify(instanceToPlain(extensionMap)) + message.serverExtension = extension + } + + //设置推送 + let params: V2NIMSendMessageParams | undefined = undefined + if (pushList) { + params = { + pushConfig: { + forcePush: true, + forcePushAccountIds: pushList.length >= 0 ? pushList : undefined + } + } + } + + // 回复 + if (replyMsg) { + this.replyMessage(message, replyMsg.message, params) + return + } + + // 设置 AI 配置 + const enableAIStream: boolean = false + if (enableAIStream) { + const text: string = message.text ?? '你是谁' + const aiUsers: V2NIMAIUser[] = await ChatKitClient.nim.aiService!.getAIUserList() + const ollamaaitest20AIUser: V2NIMAIUser | undefined = + aiUsers.find((aiUser) => aiUser.accountId === 'ollamaaitest9') + + const aiParams: V2NIMMessageAIConfigParams = { + accountId: ollamaaitest20AIUser ? ollamaaitest20AIUser.accountId : (aiUsers.length > 0 ? aiUsers[0].accountId : ''), + content: { + msg: text, + type: 0 + }, + messages: [ + { + role: V2NIMAIModelRoleType.V2NIM_AI_MODEL_ROLE_TYPE_ASSISTANT, + msg: text, + type: 0 + } + ], + promptVariables: undefined, + modelConfigParams: { + prompt: undefined, + maxTokens: undefined, + topP: undefined, + temperature: undefined + }, + aiStream: true // open aiStream + } + + if (typeof params === 'undefined') { + params = {} + } + params.aiConfig = aiParams + } + this.sendMessage(message, params) + } + + // 发送位置消息 + async sendLocationMessage(data: sceneMap.LocationChoosingResult) { + const message = ChatRepo.createLocationMessage(data.location.latitude, data.location.longitude, data.address) + message.text = data.name + this.sendMessage(message) + } + + /** + * 发送图片消息 + * @param uri 本地图片地址 + */ + async sendImageMessage(uri: string) { + try { + if (uri.length > 0) { + let fileType = "" + const subStrings = uri.split("."); + if (subStrings.length > 0) { + fileType = subStrings[subStrings.length - 1]; + } + // 将文件 拷贝到 临时目录 + const file = await fs.open(uri, fs.OpenMode.READ_ONLY) + // (以时间戳)生成一个新的文件名 + const fileName = Date.now() + '.' + fileType + // 通过缓存路径+文件名 拼接出完整的路径 + let fileDir = DeviceUtils.rootDirPath + '/temp/' + const copyFilePath = fileDir + fileName + if (!fs.accessSync(fileDir)) { + await fs.mkdir(fileDir) + } + await fs.copyFile(file.fd, copyFilePath) + const imageSource = image.createImageSource(file.fd); + let imageInfo = imageSource.getImageInfoSync() + const message = await ChatRepo.createImageMessage(copyFilePath, file.name, undefined, imageInfo?.size.width, + imageInfo?.size.height); + const fn: Function = () => { + this.sendMessageAndSetProgress(message) + } + ChatKitClient.runAfterLoggedIn(fn) + + await fs.close(file) + } + } catch (err) { + console.log("net ease send image error", err); + } + } + + /** + * 发送视频消息 + * @param uri 本地视频地址 + * @param duration 视频时长 + * @param width 视频宽度 + * @param height 视频高度 + */ + async sendVideoMessage(uri: string, duration?: number, width?: number, height?: number, thumbnail?: PixelMap) { + try { + let fileType = "" + const subStrings = uri.split("."); + if (subStrings.length > 0) { + fileType = subStrings[subStrings.length - 1]; + } + // 将文件 拷贝到 临时目录 + const file = await fs.open(uri, fs.OpenMode.READ_ONLY) + // (以时间戳)生成一个新的文件名 + const fileName = Date.now() + '.' + fileType + // 通过缓存路径+文件名 拼接出完整的路径 + let fileDir = DeviceUtils.rootDirPath + '/temp/' + const copyFilePath = fileDir + fileName + if (!fs.accessSync(fileDir)) { + await fs.mkdir(fileDir) + } + await fs.copyFile(file.fd, copyFilePath) + const message = await ChatRepo.createVideoMessage(copyFilePath, file.name, undefined, duration, width, height); + const fn: Function = () => { + this.sendMessageAndSetProgress(message) + } + ChatKitClient.runAfterLoggedIn(fn) + + await fs.close(file) + } catch (err) { + console.log("net ease send video error", err); + } + } + + /** + * 发送文件消息 + * @param uri 文件地址 + */ + async sendFileMessage(uri: string) { + try { + let fileType = "" + const subStrings = uri.split("."); + if (subStrings.length > 0) { + fileType = subStrings[subStrings.length - 1]; + } + // 将文件 拷贝到 临时目录 + const file = await fs.open(uri, fs.OpenMode.READ_ONLY) + // (以时间戳)生成一个新的文件名 + const fileName = Date.now() + '.' + fileType + // 通过缓存路径+文件名 拼接出完整的路径 + let fileDir = DeviceUtils.rootDirPath + '/temp/' + const copyFilePath = fileDir + fileName + if (!fs.accessSync(fileDir)) { + await fs.mkdir(fileDir) + } + await fs.copyFile(file.fd, copyFilePath) + const message = await ChatRepo.createFileMessage(copyFilePath, file.name); + this.sendMessage(message, undefined, (percentage: number) => { + let msgInfo = this.chatInfo?.getMessage(message.messageClientId) + if (msgInfo !== undefined) { + let progress = percentage * 100 + msgInfo.setDownloadProgress(progress) + if (progress >= 100) { + msgInfo.setDownloadProgress(-1) + } + } + }); + + await fs.close(file) + } catch (err) { + console.log("net ease send file error", err); + } + } + + /** + * 发送语音消息 + * @param uri + * @param duration 单位 s + */ + async sendAudioMessage(uri: string, duration: number) { + try { + const message = await ChatRepo.createAudioMessage(uri, undefined, undefined, duration * 1000); + this.sendMessage(message) + } catch (err) { + console.error("net ease send audio message error", err.code, err.message) + } + } + /** + * 发送自定义消息 + * @param uri + * @param duration 单位 s + */ + async sendCustomMessage(text: string, rawAttachment: string) { + try { + const message = await ChatRepo.createCustomMessage(text,rawAttachment); + this.sendMessage(message) + } catch (err) { + console.error("net ease send custom message error"+rawAttachment, err.code, err.message) + } + } + + /** + * 发送消息 + * @param msg 消息 + * @param params 消息配置参数 + * @param progress 消息发送进度 + */ + async sendMessage(msg: V2NIMMessage, params?: V2NIMSendMessageParams, progress?: (percentage: number) => void) { + ChatRepo.sendMessage(this.beforeSendMessage(msg), this.conversationId!, params, progress) + .catch((err: BusinessError) => { + console.error("net ease send message error", err.code, err.message); + sendMessageFailedTips(msg, err, this.conversationId!) + }) + } + + /** + * 回复消息 + * @param msg 消息 + * @param replyMsg 被回复的消息 + * @param params 消息配置参数 + * @param progress 消息发送进度 + */ + async replyMessage(msg: V2NIMMessage, replyMsg: V2NIMMessage, params?: V2NIMSendMessageParams, + progress?: (percentage: number) => void) { + ChatRepo.replyMessage(this.beforeSendMessage(msg), replyMsg, params, progress) + .catch((err: BusinessError) => { + console.error("net ease reply message error", err.code, err.message); + sendMessageFailedTips(msg, err, this.conversationId!) + }) + } + + /** + * 转发消息 + * @param msg 消息体 + * @param conversationId 转发到某个会话 + * @param params 消息参数 + * @param progress 消息发送进度 + */ + async sendForwardMessage(msg: V2NIMMessage, conversationId: string, params?: V2NIMSendMessageParams, + progress?: (percentage: number) => void) { + ChatRepo.sendMessage(this.beforeSendMessage(msg), conversationId, params, progress) + .catch((err: BusinessError) => { + console.error("net ease send message error", err.code, err.message); + sendMessageFailedTips(msg, err, conversationId) + }) + } + + // 消息附件下载 + async downloadAttachment(msg: NIMMessageInfo, path: string) { + if (msg.message.attachment as V2NIMMessageFileAttachment) { + let fileAttachment = msg.message.attachment as V2NIMMessageFileAttachment; + if (fileAttachment.url !== undefined) { + msg.setDownloadProgress(1) + try { + await StorageRepo.downloadFile(fileAttachment.url, path, (progress: number) => { + if (progress < 100) { + this.chatInfo?.downloadProgressMap.set(msg.message.messageClientId, progress) + msg.setDownloadProgress(progress) + } else { + if (progress == 100) { + msg.setDownloadProgress(100) + } + msg.setDownloadProgress(-1) + this.chatInfo?.downloadProgressMap.delete(msg.message.messageClientId) + } + } + ) + } catch (err) { + console.log('netease downloadAttachment', err) + msg.setDownloadProgress(-1) + } + } + } + } + + /** + * 【逐条转发】将多个消息转发到多个会话中,并将留言发送到多个会话中 + * @param messages 待转发的消息 + * @param conversationIds 待转发的会话 + * @param leaveText 留言 + */ + forwardMessage(messages: V2NIMMessage[], conversationIds: ConversationSelectModel[], + leaveText: string | undefined) { + + if (ErrorUtils.checkNetworkAndToast()) { + conversationIds.forEach((conversation) => { + messages.forEach((message) => { + const forwardMsg = ChatRepo.createForwardMessage(message) + try { + if (forwardMsg && conversation.conversationId) { + clearForwardAtMark(forwardMsg) + this.sendForwardMessage(forwardMsg, conversation.conversationId) + } + } catch (err) { + console.error(err) + } + }) + + // 发送留言 + if (leaveText && leaveText.length > 0) { + const leaveMsg = ChatRepo.createTextMessage(leaveText) + if (leaveMsg && conversation.conversationId) { + setTimeout(() => { + ChatRepo.sendMessage(this.beforeSendMessage(leaveMsg), conversation.conversationId!) + .catch((err: BusinessError) => { + console.error("net ease send message error", err.code, err.message); + sendMessageFailedTips(leaveMsg, err, conversation.conversationId!) + }) + }, 200) + } + } + }) + } + } + + /** + * 将多个消息合并为一条自定义消息 + * @param messages 待合并的消息 + * @param depth 合并转发消息的深度 + */ + async mergeForwardMessage(messages: NIMMessageInfo[], depth: number): Promise { + // 校验网络 + if (ErrorUtils.checkNetworkAndToast()) { + // 排序(发送时间正序) + let sortMessages = messages.sort((m1, m2) => { + if (m1.message.createTime < m2.message.createTime) { + return -1 + } + if (m1.message.createTime > m2.message.createTime) { + return 1 + } + return 0 + }) + + let rawMessages = sortMessages.map(msg => msg.message) + if (this.chatInfo) { + try { + return await createForwardMessageListFileDetail(rawMessages, this.chatInfo, depth) + } catch (err) { + console.error(err) + } + } + } + + return undefined + } + + resendMessage(msgInfo: NIMMessageInfo) { + //设置推送 + let params: V2NIMSendMessageParams | undefined = undefined + let pushList = msgInfo.message.pushConfig?.forcePushAccountIds + if (pushList) { + params = { + pushConfig: { + forcePush: true, + forcePushAccountIds: pushList.length >= 0 ? pushList : undefined + } + } + } + if (msgInfo.isReplyMsg && msgInfo.replyMsg && msgInfo.replyMsg.message) { + this.replyMessage(msgInfo.message,msgInfo.replyMsg?.message,params) + }else { + this.sendMessage(msgInfo.message,params) + } + } + + // 多选数据,添加新的选中消息 + addSelectMessage(msg: NIMMessageInfo) { + this.selectMsgMap.set(msg.getMessageClientId(), msg) + this.chatInfo?.getMessage(msg.getMessageClientId())?.setSelected(true) + this.selectMsgCount = this.selectMsgMap.size + } + + // 多选数据,移除选中消息 + removeSelectMessage(msg: NIMMessageInfo) { + this.selectMsgMap.delete(msg.getMessageClientId()) + this.chatInfo?.getMessage(msg.getMessageClientId())?.setSelected(false) + this.selectMsgCount = this.selectMsgMap.size + } + + // 多选数据,清空所有选中消息 + clearSelectMessage() { + this.selectMsgMap.forEach((msg) => { + this.chatInfo?.getMessage(msg.getMessageClientId())?.setSelected(false) + }) + this.selectMsgMap.clear() + this.selectMsgCount = this.selectMsgMap.size + } + + // 获取多选数据 + getSelectMessageList(): NIMMessageInfo[] { + return Array.from(this.selectMsgMap.values()); + } + + // 获取多选数据数量 + getSelectMessageSize(): number { + return this.selectMsgMap.size; + } + + isSelect(msgClientId: string) { + let result = this.selectMsgMap.has(msgClientId) + let msg = this.chatInfo?.getMessage(msgClientId) + console.debug('netease isSelect', msgClientId, result, ',content:', msg?.message.text) + return result + } + + /** + * 销毁 + */ + onDestroy(): void { + ChatRepo.offReceiverMessage(this.onReceiveFun) + ChatRepo.offReceiveMessagesModified(this.onModifyFun) + ChatRepo.offSendMessage(this.onSendFun) + ChatRepo.offDeleteMessage(this.onDeleteFun) + ChatRepo.offRevokeMessage(this.onRevokeFun) + ChatRepo.offMessagePinNotification(this.onPinFun) + ChatKitClient.nim.loginService.off('onDataSync', this.onSyncFinishedFun) + // 长连接状态变更 + ChatKitClient.nim.loginService?.off('onConnectStatus', this.onConnectStatusChange) + // 登录状态变更 + ChatKitClient.nim.loginService?.off('onLoginStatus', this.onLoginStatusChange) + // 清理未读数 + this.clearUnreadCount() + ChatKitClient.clearCurrentConversationId() + } +} + + +class StreamMessage { + public message: V2NIMMessage + public streamingArr: string[] + public index: number + public finish: boolean + + constructor(message: V2NIMMessage) { + this.message = message + this.streamingArr = [] + this.index = message.aiConfig?.aiStreamLastChunk?.index ?? 0 + if (message.aiConfig?.aiStreamStatus === V2NIMMessageAIStreamStatus.V2NIM_MESSAGE_AI_STREAM_STATUS_STREAMING || + message.aiConfig?.aiStreamStatus === V2NIMMessageAIStreamStatus.V2NIM_MESSAGE_AI_STREAM_STATUS_PLACEHOLDER) { + this.finish = false // streaming / placeholder 认为还没结束 + } else { + this.finish = true + } + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/viewmodel/ChatP2PViewModel.ets b/chatkit_ui/src/main/ets/viewmodel/ChatP2PViewModel.ets new file mode 100644 index 0000000..c4e0090 --- /dev/null +++ b/chatkit_ui/src/main/ets/viewmodel/ChatP2PViewModel.ets @@ -0,0 +1,227 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { + ChatKitClient, + ChatRepo, + ContactRepo, + ConversationRepo, + IMKitConfigCenter, + LocalConversationRepo, + SettingRepo +} from '@nimkit/chatkit'; +import { + V2NIMFriend, + V2NIMFriendDeletionType, + V2NIMMessage, + V2NIMP2PMessageMuteMode, + V2NIMP2PMessageReadReceipt, + V2NIMUser +} from '@nimsdk/base'; +import { ChatUserInfo } from '../model/ChatUserInfo'; +import { ChatBaseViewModel } from './ChatBaseViewModel'; +import { NIMMessageInfo } from '../model/NIMMessageInfo'; +import { ChatKitConfig } from '../ChatKitConfig'; + +@ObservedV2 +export class ChatP2PViewModel extends ChatBaseViewModel { + chatUserInfo: ChatUserInfo | undefined = undefined; + //是否消息通知 + @Trace isMessageNotify: boolean = true + //是否置顶 + @Trace isStickTop: boolean = false + receiptMessage: NIMMessageInfo | undefined = undefined + + init(conversationId: string, chatInfo: ChatUserInfo): void { + super.init(conversationId, chatInfo) + this.chatUserInfo = chatInfo + this.getConversationInfo() + ChatRepo.onP2PMessageReadReceipts(this.onReceiveP2PMessageReadReceiptFun) + ChatKitClient.nim.userService?.on('onUserProfileChanged', this.onUserProfileChangedFun) + ChatKitClient.nim.friendService?.on('onFriendInfoChanged', this.onFriendInfoChangedFun) + ChatKitClient.nim.friendService?.on('onFriendDeleted', + async (accountId: string, deletionType: V2NIMFriendDeletionType) => { + this.onFriendInfoDeleteFun(accountId) + }) + } + + onReceiveP2PMessageReadReceiptFun = (readReceipts: V2NIMP2PMessageReadReceipt[]) => { + let receipt: V2NIMP2PMessageReadReceipt = readReceipts[0] + readReceipts.forEach((item, index, readReceipts) => { + console.debug('netease onReceiveP2PMessageReadReceiptFun item:', item.timestamp, ',index:', index) + if (item.timestamp > receipt.timestamp) { + receipt = item + } + }) + this.chatUserInfo?.setMessageReadReceipt(receipt) + } + onUserProfileChangedFun = (user: V2NIMUser[]) => { + user.forEach((item) => { + if (item.accountId == this.chatUserInfo?.currentUser?.accountId) { + this.chatUserInfo?.setCurrentUser(item) + } else if (item.accountId == this.chatUserInfo?.chatUser?.accountId) { + this.chatUserInfo?.setChatUser(item) + } + }) + } + onFriendInfoChangedFun = (friendInfo: V2NIMFriend) => { + if (friendInfo.accountId == this.chatUserInfo?.targetId) { + this.chatUserInfo?.updateConversationName() + this.chatUserInfo?.setChatFriend(friendInfo) + } + } + onFriendInfoDeleteFun = (accountId: String) => { + if (accountId == this.chatUserInfo?.targetId) { + this.chatUserInfo?.updateConversationName() + this.chatUserInfo?.setChatFriend(undefined) + } + } + + loadData() { + this.getMessageList() + this.getUserInfo() + this.getMessageReceipt() + this.getPinList() + } + + reloadMessageList() { + this.getMessageList() + this.setAnchorMessage(undefined) + this.hasNew = false + } + + toHandleReceiveMessage(messages: NIMMessageInfo[]): void { + this.toHandleReceiptMessage(messages) + } + + toHandleQueryMessage(messages: NIMMessageInfo[], originMsg: V2NIMMessage[]): void { + this.toHandleReceiptMessage(messages) + } + + toHandleDataSyncFinished(): void { + this.getUserInfo() + this.getPinList() + this.getMessageReceipt() + } + + toHandleReceiptMessage(messages: NIMMessageInfo[]) { + // 发送已读回执 + let receiveMsg: NIMMessageInfo | undefined = undefined + // 如果已读回执消息,大于当前列表中最后一条消息,则发送已读回执 + if (this.receiptMessage !== undefined && + this.receiptMessage.getCreateTime() > messages[messages.length - 1].getCreateTime()) { + return + } + for (let i = messages.length - 1; i >= 0; i--) { + if (messages[i].isReceiveMessage()) { + receiveMsg = messages[i] + break + } + } + if (this.receiptMessage == undefined || this.receiptMessage.getCreateTime() < (receiveMsg?.getCreateTime() ?? 0)) { + this.sendMessageReceipt(receiveMsg) + this.receiptMessage = receiveMsg + } + } + + async getUserInfo() { + const userList = await ContactRepo.getUserList([this.targetId, ChatKitClient.getLoginUserId()]); + if (userList.length > 1) { + let currentUser = userList[0].accountId == this.targetId ? userList[1] : userList[0]; + let chatUser = userList[0].accountId == this.targetId ? userList[0] : userList[1]; + this.chatUserInfo?.setCurrentUser(currentUser); + this.chatUserInfo?.setChatUser(chatUser); + } else if (userList.length == 1) { + let currentUser = userList[0].accountId == this.targetId ? undefined : userList[0]; + let chatUser = userList[0].accountId == this.targetId ? userList[0] : undefined; + this.chatUserInfo?.setCurrentUser(currentUser); + this.chatUserInfo?.setChatUser(chatUser); + } + } + + /** + * 获取是否置顶和通知 + */ + getConversationInfo() { + if (IMKitConfigCenter.enableLocalConversation) { + LocalConversationRepo.getConversation(this.conversationId).then((conversation) => { + this.isStickTop = conversation?.stickTop ?? false + this.isMessageNotify = !(conversation?.mute ?? false) + }) + } else { + ConversationRepo.getConversation(this.conversationId).then((conversation) => { + this.isStickTop = conversation?.stickTop ?? false + this.isMessageNotify = !(conversation?.mute ?? false) + }) + } + + } + + /** + * 置顶或者取消置顶会话 + * @param stickTop 是否置顶 + */ + async stickTopConversation(stickTop: boolean) { + try { + if (IMKitConfigCenter.enableLocalConversation) { + await LocalConversationRepo.stickTopConversation(this.conversationId, stickTop) + } else { + await ConversationRepo.stickTopConversation(this.conversationId, stickTop) + } + this.isStickTop = stickTop + } catch (error) { + this.isStickTop = !stickTop + } + } + + /** + * 设置群消息是否通知 + * @param isOn + */ + async setP2PNotify(isOn: boolean) { + try { + await SettingRepo.setP2PMessageMuteMode(this.targetId, + isOn ? V2NIMP2PMessageMuteMode.V2NIM_P2P_MESSAGE_MUTE_MODE_OFF : + V2NIMP2PMessageMuteMode.V2NIM_P2P_MESSAGE_MUTE_MODE_ON) + this.isMessageNotify = isOn + } catch (e) { + this.isMessageNotify = !isOn + } + } + + /** + * 获取消息已读未读状态 + */ + async getMessageReceipt() { + if (ChatKitConfig.messageReadState) { + ChatRepo.getP2PMessageReceipt(this.conversationId).then((receipt) => { + this.chatUserInfo?.setMessageReadReceipt(receipt) + }) + } + } + + /** + * 发送消息已读回执 + * @param message + */ + sendMessageReceipt(msg: NIMMessageInfo | undefined): void { + if (msg && ChatKitConfig.messageReadState) { + ChatRepo.sendP2PMessageReceipt(msg.message) + } + } + + /** + * 退出页面,清理 + */ + onDestroy() { + super.onDestroy() + ChatRepo.offP2PMessageReadReceipts(this.onReceiveP2PMessageReadReceiptFun) + ChatKitClient.nim.userService?.off('onUserProfileChanged', this.onUserProfileChangedFun) + ChatKitClient.nim.friendService?.off('onFriendInfoChanged', this.onFriendInfoChangedFun) + ChatKitClient.nim.friendService?.off('onFriendDeleted', this.onFriendInfoDeleteFun) + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/viewmodel/ChatPinViewModel.ets b/chatkit_ui/src/main/ets/viewmodel/ChatPinViewModel.ets new file mode 100644 index 0000000..a938474 --- /dev/null +++ b/chatkit_ui/src/main/ets/viewmodel/ChatPinViewModel.ets @@ -0,0 +1,279 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { ChatTeamInfo } from '../model/ChatTeamInfo'; +import { ChatKitClient, ChatRepo, ContactRepo, NEFriendUserCache, TeamRepo } from '@nimkit/chatkit'; +import { + V2NIMConnectStatus, + V2NIMConversationType, + V2NIMLoginStatus, + V2NIMMessage, + V2NIMMessageConfig, + V2NIMMessageDeletedNotification, + V2NIMMessageNotificationAttachment, + V2NIMMessagePin, + V2NIMMessagePinNotification, + V2NIMMessagePinState, + V2NIMMessageRefer, + V2NIMMessageType, + V2NIMSendMessageParams, + V2NIMTeam, + V2NIMTeamType +} from '@nimsdk/base'; +import { NIMMessageInfo } from '../model/NIMMessageInfo'; +import { HashSet } from '@kit.ArkTS'; +import { ConversationSelectModel } from '@nimkit/chatkit/src/main/ets/model/ConversationSelectModel'; +import { BusinessError } from '@kit.BasicServicesKit'; +import { sendMessageFailedTips } from '../common/MessageHelper'; + +@ObservedV2 +export class ChatPinViewModel { + @Trace pinListEmpty: boolean = false; + @Trace conversationId: string = ""; + @Trace chatTeamInfo?: ChatTeamInfo; + @Trace topInsert = false + networkBroken = false + onMessagePinNotification = async (notification: V2NIMMessagePinNotification) => { + switch (notification.pinState) { + case V2NIMMessagePinState.V2NIM_MESSAGE_PIN_STATE_NOT_PINNED: + this.chatTeamInfo?.deleteMessage(notification.pin.messageRefer.messageClientId) + break + case V2NIMMessagePinState.V2NIM_MESSAGE_PIN_STATE_PINNED: + let message = this.chatTeamInfo?.getMessage(notification.pin.messageRefer.messageClientId) + if (!message) { + const messages = await ChatRepo.getMessageListByRefers([notification.pin.messageRefer]) + if (messages.length > 0) { + message = new NIMMessageInfo(messages[0]); + } + if (message && this.chatTeamInfo) { + message.isPinMsg = true + let insert = false + for (let index = 0; index < this.chatTeamInfo.msgList.totalCount(); index++) { + if (message.message.createTime > this.chatTeamInfo?.msgList.getData(index).getCreateTime()) { + if (index === 0) { + this.topInsert = true + } + this.chatTeamInfo?.msgList.addData(index, message) + insert = true + break + } + } + if (!insert) { + this.chatTeamInfo?.msgList.push(message) + } + this.getTeamMemberInfoWithMessage([message]) + } + } + break + default: + break + } + this.pinListEmpty = (this.chatTeamInfo?.msgList?.totalCount() ?? 0) <= 0 + } + // 登录状态改变 + onLoginStatusFun = async (status: V2NIMLoginStatus) => { + if (this.networkBroken && status === V2NIMLoginStatus.V2NIM_LOGIN_STATUS_LOGINED) { + try { + await this.getPinMessageList() + } catch (err) { + console.error(err) + } + } + } + + //初始化,获取会话ID和页面UI需要群相关信息ChatTeamInfo + init(conversationId: string, chatInfo: ChatTeamInfo): void { + this.chatTeamInfo = chatInfo; + this.conversationId = conversationId + ChatKitClient.nim.teamService?.on('onTeamInfoUpdated', this.teamUpdateFun) + // 长连接状态变更 + ChatKitClient.nim.loginService?.on('onConnectStatus', this.onConnectStatusFun) + // 登录状态变更 + ChatKitClient.nim.loginService?.on('onLoginStatus', this.onLoginStatusFun) + + ChatRepo.onMessagePinNotification(this.onMessagePinNotification) + ChatRepo.onDeleteMessage(this.onDeleteFun) + } + + // 删除消息 + onDeleteFun = (messages: V2NIMMessageDeletedNotification[]) => { + messages.forEach((msg) => { + this.chatTeamInfo?.deleteMessage(msg.messageRefer.messageClientId) + }) + } + // 群更新 + teamUpdateFun = (team: V2NIMTeam) => { + if (team.teamId === ChatKitClient.nim.conversationIdUtil.parseConversationTargetId(this.conversationId)) { + this.chatTeamInfo?.setTeam(team) + } + } + // 长连接状态改变 + onConnectStatusFun = (status: V2NIMConnectStatus) => { + if (status === V2NIMConnectStatus.V2NIM_CONNECT_STATUS_WAITING) { + this.networkBroken = true + } + } + + // 获取标记列表 + async getPinMessageList(): Promise { + let msgList: NIMMessageInfo[] = []; + this.chatTeamInfo?.cleanMessage() + try { + const pinMessageList: V2NIMMessagePin[] = await ChatRepo.getPinnedMessageList(this.conversationId) + let fetchMessageReferList: V2NIMMessageRefer[] = pinMessageList.map(pin => pin.messageRefer) + if (fetchMessageReferList.length > 0) { + const fetchMessageList: V2NIMMessage[] = await ChatRepo.getMessageListByRefers(fetchMessageReferList) + fetchMessageList.sort((msg1, msg2) => { + if (msg1.createTime > msg2.createTime) { + return -1 + } + if (msg1.createTime < msg2.createTime) { + return 1 + } + return 0 + }) + for (const msg of fetchMessageList) { + let msgInfo = this.chatTeamInfo?.pushMessage(msg); + if (msgInfo) { + msgInfo.isPinMsg = true + msgList.push(msgInfo); + } + } + } + this.pinListEmpty = msgList.length <= 0 + const conversationType = ChatKitClient.nim.conversationIdUtil.parseConversationType(this.conversationId) + if (conversationType === V2NIMConversationType.V2NIM_CONVERSATION_TYPE_P2P) { + const targetAccountId = ChatKitClient.nim.conversationIdUtil.parseConversationTargetId(this.conversationId) + const targetUser = await ContactRepo.getUserListFromCloud([targetAccountId]) + this.chatTeamInfo?.addTeamUser(targetUser) + if (NEFriendUserCache.mineUserCache?.user) { + this.chatTeamInfo?.addTeamUser([NEFriendUserCache.mineUserCache?.user]) + } + } else { + this.getTeamMemberInfoWithMessage(msgList) + this.getTeamInfo() + } + return msgList; + } catch (err) { + console.log(err) + return msgList; + } + } + + //获取群信息 + async getTeamInfo(): Promise { + let teamId = ChatKitClient.nim.conversationIdUtil.parseConversationTargetId(this.conversationId); + const teamInfo = await TeamRepo.getTeamInfo(teamId, V2NIMTeamType.V2NIM_TEAM_TYPE_NORMAL); + this.chatTeamInfo?.setTeam(teamInfo) + ChatKitClient.selfLeaveTeam = false + return teamInfo + } + + // 获取群成员信息,包括群成员信息、用户信息 + async getTeamMemberInfoWithMessage(msgList: NIMMessageInfo[]) { + let senderList = new HashSet(); + if (msgList.length < 1) { + return + } + msgList.forEach((item, index, msgList) => { + senderList.add(item.message.senderId) + if (item.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_NOTIFICATION) { + let attachment = item.message.attachment as V2NIMMessageNotificationAttachment + attachment.targetIds?.forEach(account => { + senderList.add(account) + }) + + } + }) + let teamId = ChatKitClient.nim.conversationIdUtil.parseConversationTargetId(this.conversationId); + let requestAccountList: string[] = []; + senderList.forEach(account => { + if (account !== undefined && !this.chatTeamInfo?.teamMemberMap.has(account)) { + requestAccountList.push(account) + } + }) + if (requestAccountList.length > 0) { + const teamMemberList = + await TeamRepo.getTeamMemberListByIds(teamId, V2NIMTeamType.V2NIM_TEAM_TYPE_NORMAL, requestAccountList); + const teamUserInfo = await ContactRepo.getUserList(requestAccountList); + + this.chatTeamInfo?.addTeamMember(teamMemberList) + this.chatTeamInfo?.addTeamUser(teamUserInfo) + } + } + + + // 消息发送之前调用,用于配置消息通用参数 + beforeSendMessage(msg: V2NIMMessage): V2NIMMessage { + let msgConfig: V2NIMMessageConfig = { + readReceiptEnabled: true + } + msg.messageConfig = msgConfig + return msg + } + + /** + * 转发消息 + * @param msg 消息体 + * @param conversationId 转发到某个会话 + * @param params 消息参数 + * @param progress 消息发送进度 + */ + async sendForwardMessage(msg: V2NIMMessage, conversationId: string, params?: V2NIMSendMessageParams, + progress?: (percentage: number) => void) { + ChatRepo.sendMessage(this.beforeSendMessage(msg), conversationId, params, progress).catch((err: BusinessError) => { + console.error("net ease send message error", err.code, err.message); + sendMessageFailedTips(msg, err, conversationId) + }) + } + + /** + * 将多个消息转发到多个会话中,并将留言发送到多个会话中 + * @param messages 待转发的消息 + * @param conversationIds 带转发的会话 + * @param leaveText 留言 + */ + forwardMessage(messages: NIMMessageInfo[], conversationIds: ConversationSelectModel[], + leaveText: string | undefined) { + conversationIds.forEach((conversation) => { + messages.forEach((message) => { + const forwardMsg = ChatRepo.createForwardMessage(message.message) + try { + if (forwardMsg && conversation.conversationId) { + this.sendForwardMessage(forwardMsg, conversation.conversationId) + } + } catch (err) { + console.error(err) + } + }) + + // 发送留言 + if (leaveText && leaveText.length > 0) { + const leaveMsg = ChatRepo.createTextMessage(leaveText) + if (leaveMsg && conversation.conversationId) { + setTimeout(() => { + ChatRepo.sendMessage(leaveMsg, conversation.conversationId!) + .catch((err: BusinessError) => { + console.error("net ease send message error", err.code, err.message); + sendMessageFailedTips(leaveMsg, err, conversation.conversationId!) + }) + }, 200) + } + } + }) + } + + onDestroy(): void { + ChatKitClient.nim.teamService?.off('onTeamInfoUpdated', this.teamUpdateFun) + // 长连接状态变更 + ChatKitClient.nim.loginService?.off('onConnectStatus', this.onConnectStatusFun) + // 登录状态变更 + ChatKitClient.nim.loginService?.off('onLoginStatus', this.onLoginStatusFun) + ChatRepo.offMessagePinNotification(this.onMessagePinNotification) + ChatRepo.offDeleteMessage(this.onDeleteFun) + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/viewmodel/ChatReadReceiptViewModel.ets b/chatkit_ui/src/main/ets/viewmodel/ChatReadReceiptViewModel.ets new file mode 100644 index 0000000..8ff2756 --- /dev/null +++ b/chatkit_ui/src/main/ets/viewmodel/ChatReadReceiptViewModel.ets @@ -0,0 +1,76 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { ChatKitClient, ChatRepo, TeamMemberWithUser, TeamRepo } from '@nimkit/chatkit' +import { V2NIMMessage, V2NIMTeamMessageReadReceiptDetail, V2NIMTeamType } from '@nimsdk/base' + +@ObservedV2 +export class ChatReadReceiptViewModel { + //群Id + teamId?: string + //消息 + message?: V2NIMMessage + //已读回执 + @Trace readReceiptDetail: V2NIMTeamMessageReadReceiptDetail | null = null + @Trace readMemberList: TeamMemberWithUser[] = [] + @Trace unreadMemberList: TeamMemberWithUser[] = [] + + init(message?: V2NIMMessage) { + this.message = message + if (message) { + this.teamId = ChatKitClient.nim.conversationIdUtil.parseConversationTargetId(message.conversationId) + } + } + + /** + * 获取未读数详情 + */ + getMessageReadReceipt() { + if (this.message) { + ChatRepo.getTeamMessageReceiptDetail(this.message).then( + (result) => { + this.readReceiptDetail = result + if (result) { + this.getMemberList(result.readAccountList, true) + } + } + ).catch((error: Error) => { + console.log(error.message) + }) + } + + } + + /** + * 获取群成员信息 + * @param accountIds + * @param read 是否已读 + */ + async getMemberList(accountIds: string[], read: boolean) { + if (accountIds.length <= 0) { + return + } + const chunks: string[][] = []; + //每页请求20条 + const pageSize: number = 20 + for (let i = 0; i < accountIds.length; i += pageSize) { + chunks.push(accountIds.slice(i, i + pageSize)); + } + //async 请求,防止触发频控 + chunks.forEach(async (accIds) => { + if (this.teamId) { + let memberList = await TeamRepo.getTeamMembersByIds(this.teamId, + V2NIMTeamType.V2NIM_TEAM_TYPE_NORMAL, accIds) + if (read) { + this.readMemberList.push(...memberList) + } else { + this.unreadMemberList.push(...memberList) + } + } + }) + } +} + diff --git a/chatkit_ui/src/main/ets/viewmodel/ChatTeamViewModel.ets b/chatkit_ui/src/main/ets/viewmodel/ChatTeamViewModel.ets new file mode 100644 index 0000000..20aeaad --- /dev/null +++ b/chatkit_ui/src/main/ets/viewmodel/ChatTeamViewModel.ets @@ -0,0 +1,336 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { ChatTeamInfo } from '../model/ChatTeamInfo'; +import { ChatBaseViewModel } from './ChatBaseViewModel'; +import { ChatKitClient, ChatRepo, ContactRepo, TeamMemberCache, TeamRepo } from '@nimkit/chatkit'; +import { + V2NIMFriend, + V2NIMMessage, + V2NIMMessageNotificationAttachment, + V2NIMMessageType, + V2NIMTeam, + V2NIMTeamChatBannedMode, + V2NIMTeamMember, + V2NIMTeamMemberRole, + V2NIMTeamMessageReadReceipt, + V2NIMTeamType, + V2NIMUser +} from '@nimsdk/base'; +import { NIMMessageInfo } from '../model/NIMMessageInfo'; +import { HashSet } from '@kit.ArkTS'; +import { ChatKitConfig } from '../ChatKitConfig'; + +@ObservedV2 +export class ChatTeamViewModel extends ChatBaseViewModel { + @Trace chatTeamInfo: ChatTeamInfo | undefined + dialogToExit?: () => void + private needUserMessageList: NIMMessageInfo[] = [] + //拉取全量成员的阈值 + private static allMemberLimit = 500 + + /** + * 是否展示禁言模式 + * @returns + */ + @Computed + get isMuteModel(): boolean { + let isMuteModel = false + if (this.chatTeamInfo?.getCurrentUserTeamMember()?.memberRole === + V2NIMTeamMemberRole.V2NIM_TEAM_MEMBER_ROLE_NORMAL) { + isMuteModel = this.chatTeamInfo.team?.chatBannedMode === + V2NIMTeamChatBannedMode.V2NIM_TEAM_CHAT_BANNED_MODE_BANNED_NORMAL + || this.chatTeamInfo.team?.chatBannedMode === V2NIMTeamChatBannedMode.V2NIM_TEAM_CHAT_BANNED_MODE_BANNED_ALL + } else { + isMuteModel = + this.chatTeamInfo?.team?.chatBannedMode === V2NIMTeamChatBannedMode.V2NIM_TEAM_CHAT_BANNED_MODE_BANNED_ALL + } + return isMuteModel + } + + //初始化,获取会话ID和页面UI需要群相关信息ChatTeamInfo + init(conversationId: string, chatInfo: ChatTeamInfo): void { + super.init(conversationId, chatInfo); + this.chatTeamInfo = chatInfo; + ChatKitClient.nim.friendService?.on('onFriendInfoChanged', this.onFriendInfoChangedFun) + ChatKitClient.nim.userService?.on('onUserProfileChanged', this.onUserProfileChangedFun) + ChatKitClient.nim.teamService?.on('onTeamInfoUpdated', this.teamUpdateFun) + ChatKitClient.nim.teamService?.on('onTeamMemberJoined', this.onTeamMemberJoinedFun) + ChatKitClient.nim.teamService?.on('onTeamMemberInfoUpdated', this.onTeamMemberInfoUpdatedFun) + //群解散 + ChatKitClient.nim.teamService?.on('onTeamDismissed', this.onTeamDismissedFun) + //退出群 + ChatKitClient.nim.teamService?.on('onTeamLeft', this.onTeamLeftFun) + + ChatKitClient.nim.teamService?.on('onSyncFinished', this.onTeamSyncFinishedFun) + //群消息已读回执 + if (ChatKitConfig.messageReadState) { + ChatRepo.onReceiveTeamMessageReadReceipts(this.onReceiveMessageReadReceiptFun) + } + let teamMemberCache = TeamMemberCache.getInstance() + let teamId = ChatKitClient.nim.conversationIdUtil.parseConversationTargetId(conversationId) + teamMemberCache.intTeamInfo(teamId, chatInfo.team) + if (chatInfo.team && chatInfo.team.memberCount < ChatTeamViewModel.allMemberLimit) { + teamMemberCache.loadAllTeamMember() + } + } + + onFriendInfoChangedFun = (friendInfo: V2NIMFriend) => { + if (this.chatTeamInfo?.teamUserMap.has(friendInfo.accountId)) { + this.chatTeamInfo.addTeamFriend(friendInfo) + } + + } + onUserProfileChangedFun = (user: V2NIMUser[]) => { + let updateUser: V2NIMUser[] = [] + user.forEach((item) => { + if (this.chatTeamInfo?.teamUserMap.has(item.accountId)) { + updateUser.push(item) + } + }) + if (updateUser.length > 0) { + this.chatTeamInfo?.addTeamUser(updateUser) + } + + } + onReceiveMessageReadReceiptFun = (readReceipts: V2NIMTeamMessageReadReceipt[]) => { + let currentReadReceipt: V2NIMTeamMessageReadReceipt[] = [] + readReceipts.forEach((item) => { + if (this.conversationId == item.conversationId) { + currentReadReceipt.push(item) + } + }) + if (currentReadReceipt.length > 0) { + this.chatTeamInfo?.setTeamReadReadReceipt(currentReadReceipt) + } + } + teamUpdateFun = (team: V2NIMTeam) => { + if (team.teamId === ChatKitClient.nim.conversationIdUtil.parseConversationTargetId(this.conversationId)) { + this.chatTeamInfo?.setTeam(team) + } + } + onTeamMemberJoinedFun = (teamMembers: V2NIMTeamMember[]) => { + let currentTeamMember: V2NIMTeamMember[] = [] + teamMembers.forEach((item) => { + if (this.targetId == item.teamId) { + currentTeamMember.push(item) + } + }) + if (currentTeamMember.length > 0) { + this.getTeamMemberUserInfo(teamMembers) + } + } + onTeamMemberInfoUpdatedFun = (teamMembers: V2NIMTeamMember[]) => { + let currentTeamMember: V2NIMTeamMember[] = [] + teamMembers.forEach((item) => { + if (this.targetId == item.teamId) { + currentTeamMember.push(item) + } + }) + if (currentTeamMember.length > 0) { + this.chatTeamInfo?.addTeamMember(teamMembers) + } + } + onTeamDismissedFun = (team: V2NIMTeam) => { + if (team.teamId === this.chatTeamInfo?.team?.teamId) { + if (!ChatKitClient.selfLeaveTeam && this.dialogToExit) { + this.dialogToExit() + } + + } + } + onTeamLeftFun = (team: V2NIMTeam) => { + if (team.teamId === this.chatTeamInfo?.team?.teamId) { + if (!ChatKitClient.selfLeaveTeam && this.dialogToExit) { + this.dialogToExit() + } + } + } + onTeamSyncFinishedFun = () => { + this.getTeamInfo() + } + + async loadData() { + this.getPinList() + this.getMessageList() + this.getTeamInfo() + } + + reloadMessageList() { + this.getMessageList() + this.setAnchorMessage(undefined) + this.getTeamInfo() + this.hasNew = false + } + + toHandleReceiveMessage(messages: NIMMessageInfo[]) { + this.getTeamMemberInfoWithMessage(messages) + this.getAndSendMessageReceipts(messages) + + } + + toHandleQueryMessage(messages: NIMMessageInfo[], originMsg: V2NIMMessage[]) { + if (this.networkBroken) { + messages.forEach((item, index, msgList) => { + this.needUserMessageList.push(item) + }) + } + this.getTeamMemberInfoWithMessage(messages) + this.getAndSendMessageReceipts(messages) + } + + toHandleDataSyncFinished(): void { + if (this.hasLoadData) { + if (this.needUserMessageList.length > 0) { + this.getTeamMemberInfoWithMessage(this.needUserMessageList) + this.needUserMessageList = [] + } + this.getPinList() + if (this.chatTeamInfo?.msgList.getMessageList() !== undefined) { + this.getAndSendMessageReceipts(this.chatTeamInfo?.msgList.getMessageList() ?? []) + } + } else { + this.loadData() + } + + } + + getAndSendMessageReceipts(messages: NIMMessageInfo[]) { + if (ChatKitConfig.messageReadState) { + let receiptMessage: V2NIMMessage[] = [] + let sendReceiptMessage: V2NIMMessage[] = [] + messages.forEach((item) => { + if (item.configReadReceipt()) { + if (item.isReceiveMsg) { + sendReceiptMessage.push(item.message) + } else { + receiptMessage.push(item.message) + } + } + }) + // 拉取消息已读回执 + ChatRepo.getTeamMessageReceipts(receiptMessage).then((messageReadReceipt) => { + if (messageReadReceipt !== undefined) { + this.chatTeamInfo?.setTeamReadReadReceipt(messageReadReceipt) + } + }).catch((error: Error) => { + console.error(error.name) + }) + // 发送消息已读回执 + ChatRepo.sendTeamMessageReceipt(sendReceiptMessage) + } + } + + //添加群退出的提示弹框 + setTeamExitListener(showDialogToExit: () => void) { + this.dialogToExit = showDialogToExit + } + + //获取群信息 + async getTeamInfo(): Promise { + let teamId = ChatKitClient.nim.conversationIdUtil.parseConversationTargetId(this.conversationId); + const teamInfo = await TeamRepo.getTeamInfo(teamId, V2NIMTeamType.V2NIM_TEAM_TYPE_NORMAL); + ChatKitClient.selfLeaveTeam = false + if (teamInfo && teamInfo.isValidTeam !== true) { + this.onTeamDismissedFun(teamInfo) + } else { + this.getTeamMemberListInfo([ChatKitClient.getLoginUserId()]) + } + this.chatTeamInfo?.setTeam(teamInfo) + return teamInfo + } + + //获取群信息和群成员信息,包括群成员信息、用户信息 + getTeamMemberListInfo(accountList: string[]) { + TeamRepo.getTeamMemberListByIds(this.targetId, V2NIMTeamType.V2NIM_TEAM_TYPE_NORMAL, accountList) + .then((teamMemberList: V2NIMTeamMember[]) => { + this.chatTeamInfo?.addTeamMember(teamMemberList) + }) + .catch((error: Error) => { + console.error('netease getTeamMemberListInfo:getUserList ', error.name) + }); + ContactRepo.getUserList(accountList).then((users) => { + this.chatTeamInfo?.addTeamUser(users) + + }).catch((error: Error) => { + console.error('netease getTeamMemberListInfo:getUserList ', error.name) + }); + } + + //获取群信息和群成员信息,包括群成员信息、用户信息 + async getTeamMemberUserInfo(teamMembers: V2NIMTeamMember[]) { + this.chatTeamInfo?.addTeamMember(teamMembers) + let accountList: string[] = []; + teamMembers.forEach((member) => { + accountList.push(member.accountId) + }) + const teamUserInfo = await ContactRepo.getUserList(accountList); + this.chatTeamInfo?.addTeamUser(teamUserInfo) + } + + // 获取群成员信息,包括群成员信息、用户信息 + async getTeamMemberInfoWithMessage(msgList: NIMMessageInfo[]) { + let senderList = new HashSet(); + if (msgList.length < 1) { + return + } + msgList.forEach((item, index, msgList) => { + senderList.add(item.message.senderId) + if (item.getMessageType() == V2NIMMessageType.V2NIM_MESSAGE_TYPE_NOTIFICATION) { + let attachment = item.message.attachment as V2NIMMessageNotificationAttachment + attachment.targetIds?.forEach(account => { + senderList.add(account) + }) + + } + }) + let requestAccountList: string[] = []; + let requestUserAccountList: string[] = []; + senderList.forEach(account => { + if (account !== undefined && !this.chatTeamInfo?.teamMemberMap.has(account)) { + requestAccountList.push(account) + } + if (account !== undefined && !this.chatTeamInfo?.teamUserMap.has(account)) { + requestUserAccountList.push(account) + } + }) + if (requestAccountList.length > 0) { + TeamRepo.getTeamMemberListByIds(this.targetId, V2NIMTeamType.V2NIM_TEAM_TYPE_NORMAL, requestAccountList) + .then((teamMemberList: V2NIMTeamMember[]) => { + if (teamMemberList) { + this.chatTeamInfo?.addTeamMember(teamMemberList) + } + }) + .catch((error: Error) => { + console.error('netease getTeamMemberInfoWithMessage:getTeamMemberListByIds', error.name) + }); + } + if (requestUserAccountList.length > 0) { + ContactRepo.getUserList(requestUserAccountList).then((teamUserInfo: V2NIMUser[]) => { + this.chatTeamInfo?.addTeamUser(teamUserInfo) + }).catch((error: Error) => { + console.error('netease getTeamMemberInfoWithMessage:getUserList ', error.name) + }) + } + } + + onDestroy(): void { + super.onDestroy() + ChatKitClient.nim.teamService?.off('onTeamInfoUpdated', this.teamUpdateFun) + ChatKitClient.nim.teamService?.off('onTeamMemberJoined', this.onTeamMemberJoinedFun) + ChatKitClient.nim.teamService?.off('onTeamMemberInfoUpdated', this.onTeamMemberInfoUpdatedFun) + ChatKitClient.nim.teamService?.off('onTeamDismissed', this.onTeamDismissedFun) + ChatKitClient.nim.teamService?.off('onTeamLeft', this.onTeamLeftFun) + ChatKitClient.nim.teamService?.off('onSyncFinished', this.onTeamSyncFinishedFun) + ChatKitClient.nim.userService?.off('onUserProfileChanged', this.onUserProfileChangedFun) + ChatKitClient.nim.friendService?.off('onFriendInfoChanged', this.onFriendInfoChangedFun) + + if (ChatKitConfig.messageReadState) { + ChatRepo.offReceiveTeamMessageReadReceipts(this.onReceiveMessageReadReceiptFun) + } + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/viewmodel/MergeMessageDetailViewModel.ets b/chatkit_ui/src/main/ets/viewmodel/MergeMessageDetailViewModel.ets new file mode 100644 index 0000000..f3cc973 --- /dev/null +++ b/chatkit_ui/src/main/ets/viewmodel/MergeMessageDetailViewModel.ets @@ -0,0 +1,96 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { ChatKitClient, ErrorUtils, MergedMessageAttachment, multiForwardFileName, StorageRepo } from '@nimkit/chatkit'; +import { V2NIMMessage, V2NIMMessageCallAttachment, V2NIMMessageType } from '@nimsdk/base'; +import Hash from '@ohos.file.hash'; +import fs from '@ohos.file.fs'; +import { NECommonUtils } from '@nimkit/common'; +import { MergeMessageInfo } from '../model/MergeMessageInfo'; + +@ObservedV2 +export class MergeMessageDetailViewModel { + @Trace mergeMessageInfo?: MergeMessageInfo; + + //初始化 + init(mergeMessageInfo: MergeMessageInfo): void { + this.mergeMessageInfo = mergeMessageInfo; + } + + loadMergeMessage(pathStack: NavPathStack, attachment: MergedMessageAttachment) { + const cachePath = getContext().cacheDir + const filePath = cachePath + multiForwardFileName + "_" + attachment.md5 + if (fs.accessSync(filePath)) { + this.decodeMessage(filePath, attachment.md5) + } else { + if (ErrorUtils.checkNetworkAndToast()) { + this.downloadAttachment(attachment.url ?? "", filePath).then(() => { + this.decodeMessage(filePath, attachment.md5) + }) + } else { + pathStack.removeByName("MergeMessageDetailPage") + } + } + } + + async decodeMessage(filePath: string, md5?: string) { + try { + const fileMD5 = await Hash.hash(filePath, 'md5') + if (fileMD5.toLowerCase() === md5) { + const line = await fs.readText(filePath) + const lineList = line.split('\n') + let messageList: V2NIMMessage[] = [] + if (lineList.length > 1) { + for (let index = 1; index < lineList.length; index++) { + const msgJson = lineList[index]; + const message = ChatKitClient.nim.messageConverter.messageDeserialization(msgJson) + if (message) { + // 语音消息 + if (message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_AUDIO) { + message.messageType = V2NIMMessageType.V2NIM_MESSAGE_TYPE_TEXT + message.text = getContext().resourceManager.getStringSync($r('app.string.audioMessageType').id) + } + // 话单消息 + if (message.messageType === V2NIMMessageType.V2NIM_MESSAGE_TYPE_CALL) { + message.messageType = V2NIMMessageType.V2NIM_MESSAGE_TYPE_TEXT + if (message.attachment) { + let attachment = message.attachment as V2NIMMessageCallAttachment + if (attachment.type == 1) { + message.text = getContext().resourceManager.getStringSync($r('app.string.msg_type_rtc_audio').id) + } else { + message.text = getContext().resourceManager.getStringSync($r('app.string.msg_type_rtc_video').id) + } + } + } + let msgInfo = this.mergeMessageInfo?.pushMessage(message); + if (msgInfo) { + msgInfo.isMergeDetailMsg = true + } + } + } + } + } else { + NECommonUtils.showToast($r('app.string.file_md5_check_failed')) + } + } catch (err) { + console.log(err) + } + } + + async downloadAttachment(url: string, filePath: string) { + try { + await StorageRepo.downloadFile(url, filePath, (progress: number) => { + + }) + } catch (err) { + console.error(err) + } + } + + onDestroy(): void { + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/viewmodel/TabBarItem.ets b/chatkit_ui/src/main/ets/viewmodel/TabBarItem.ets new file mode 100644 index 0000000..7bb2690 --- /dev/null +++ b/chatkit_ui/src/main/ets/viewmodel/TabBarItem.ets @@ -0,0 +1,12 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +export class TabBarItem { + name: Resource = $r('app.string.tab_name'); + icon: Resource = $r('app.media.ic_tabs_icon'); + selectIcon: Resource = $r('app.media.ic_tabs_icon_selected'); +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/viewmodel/TabsViewModel.ets b/chatkit_ui/src/main/ets/viewmodel/TabsViewModel.ets new file mode 100644 index 0000000..5955778 --- /dev/null +++ b/chatkit_ui/src/main/ets/viewmodel/TabsViewModel.ets @@ -0,0 +1,35 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { ChatConst } from '../constants/ChatConst'; +import { TabBarItem } from './TabBarItem'; + +/** + * Binds data to components and provides interfaces. + */ +export class TabsViewModel { + /** + * Get item information for the tab. + * + * @return {Array} tabItems + */ + getTabData(): Array { + let tabItems: Array = []; + for (let i = 0; i < ChatConst.TAB_SIZE; i++) { + let itemInfo: TabBarItem = new TabBarItem(); + itemInfo.name = $r('app.string.tab_name'); + itemInfo.icon = $r('app.media.ic_tabs_icon'); + itemInfo.selectIcon = $r('app.media.ic_tabs_icon_selected'); + tabItems.push(itemInfo); + } + return tabItems; + } +} + +let tabsViewModel = new TabsViewModel(); + +export default tabsViewModel as TabsViewModel; \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/viewmodel/TeamHistoryViewModel.ets b/chatkit_ui/src/main/ets/viewmodel/TeamHistoryViewModel.ets new file mode 100644 index 0000000..cfd6b62 --- /dev/null +++ b/chatkit_ui/src/main/ets/viewmodel/TeamHistoryViewModel.ets @@ -0,0 +1,95 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { ChatKitClient, ChatRepo, TeamMemberWithUser, TeamRepo } from '@nimkit/chatkit' +import { V2NIMMessage, V2NIMMessageType, V2NIMTeamMember, V2NIMTeamType } from '@nimsdk/base' + +@ObservedV2 +export class TeamHistoryModel { + keyword: string + message: V2NIMMessage + @Trace teamMember?: TeamMemberWithUser + + constructor(keyword: string, + message: V2NIMMessage, + teamMember?: TeamMemberWithUser) { + this.keyword = keyword + this.message = message + this.teamMember = teamMember + } +} + +@ObservedV2 +export class TeamHistoryViewModel { + teamId: string + teamType: V2NIMTeamType = V2NIMTeamType.V2NIM_TEAM_TYPE_NORMAL + mineTeamMember?: V2NIMTeamMember + teamMemberList: TeamMemberWithUser[] = [] + @Trace historyList: TeamHistoryModel[] = [] + + constructor(teamId: string) { + this.teamId = teamId + } + + async searchHistoryMessages(keyword: string) { + this.clearHistoryMessages() + try { + const messages = await ChatRepo.searchCloudMessages({ + keyword: keyword, + senderAccountIds: [], + messageTypes: [V2NIMMessageType.V2NIM_MESSAGE_TYPE_TEXT], + teamIds: [this.teamId] + }) + + const accountList = messages.map(msg => msg.senderId) + await this.getTeamMemberByIds(accountList) + + for (const message of messages) { + const member = this.teamMemberList.find(member => member.getAccId() === message.senderId) + const model = new TeamHistoryModel(keyword, message, member) + this.historyList.push(model) + } + } catch (err) { + console.error(err) + } + } + + clearHistoryMessages() { + this.historyList = [] + } + + /** + * 获取群成员,附带用户信息 + * @returns + */ + async getTeamMemberByIds(accountList: string[]) { + const loadedAccountList = this.teamMemberList.map(member => member.teamMember.accountId) + const fetchAccountIds = accountList.filter(account => !loadedAccountList.includes(account)) + try { + let teamMemberList = await TeamRepo.getTeamMembersByIds(this.teamId, this.teamType, fetchAccountIds) + this.teamMemberList.push(...teamMemberList) + + let mine = teamMemberList.find(member => member.getAccId() === ChatKitClient.getLoginUserId())?.teamMember + if (mine) { + this.mineTeamMember = mine + } else { + this.getMineTeamMember() + } + } catch (err) { + console.error(err) + } + } + + //获取自己的群成员信息 + getMineTeamMember() { + TeamRepo.getTeamMemberListByIds(this.teamId, + this.teamType, [ChatKitClient.getLoginUserId()]).then((members) => { + if (members.length > 0) { + this.mineTeamMember = members[0] + } + }) + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/ets/viewmodel/UserSettingViewModel.ets b/chatkit_ui/src/main/ets/viewmodel/UserSettingViewModel.ets new file mode 100644 index 0000000..1fee92e --- /dev/null +++ b/chatkit_ui/src/main/ets/viewmodel/UserSettingViewModel.ets @@ -0,0 +1,78 @@ +import { + ChatKitClient, + ConversationRepo, + IMKitConfigCenter, + LocalConversationRepo, + SettingRepo +} from '@nimkit/chatkit'; +import { V2NIMP2PMessageMuteMode } from '@nimsdk/base'; + +@ObservedV2 +export class UserSettingViewModel { + @Trace conversationId: string = ""; + accountId: string = ""; + //是否消息通知 + @Trace isMessageNotify: boolean = false + //是否置顶 + @Trace isStickTop: boolean = false + + async init(conversationId: string) { + this.conversationId = conversationId + this.accountId = ChatKitClient.nim.conversationIdUtil.parseConversationTargetId(conversationId) + await this.getConversationInfo().catch((e: Error) => { + console.error(e.message) + }) + } + + /** + * 获取是否置顶和通知 + */ + async getConversationInfo() { + try { + if (IMKitConfigCenter.enableLocalConversation) { + const conversation = await LocalConversationRepo.getConversation(this.conversationId) + this.isStickTop = conversation?.stickTop ?? false + this.isMessageNotify = !(conversation?.mute ?? false) + } else { + const conversation = await ConversationRepo.getConversation(this.conversationId) + this.isStickTop = conversation?.stickTop ?? false + this.isMessageNotify = !(conversation?.mute ?? false) + } + + } catch (err) { + console.error(err) + } + } + + /** + * 置顶或者取消置顶会话 + * @param stickTop 是否置顶 + */ + async stickTopConversation(stickTop: boolean) { + try { + if (IMKitConfigCenter.enableLocalConversation) { + await LocalConversationRepo.stickTopConversation(this.conversationId, stickTop) + } else { + await ConversationRepo.stickTopConversation(this.conversationId, stickTop) + } + this.isStickTop = stickTop + } catch (error) { + this.isStickTop = !stickTop + } + } + + /** + * 设置群消息是否通知 + * @param isOn + */ + async setP2PNotify(isOn: boolean) { + try { + await SettingRepo.setP2PMessageMuteMode(this.accountId, + isOn ? V2NIMP2PMessageMuteMode.V2NIM_P2P_MESSAGE_MUTE_MODE_OFF : + V2NIMP2PMessageMuteMode.V2NIM_P2P_MESSAGE_MUTE_MODE_ON) + this.isMessageNotify = isOn + } catch (e) { + this.isMessageNotify = !isOn + } + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/module.json5 b/chatkit_ui/src/main/module.json5 new file mode 100644 index 0000000..0a84356 --- /dev/null +++ b/chatkit_ui/src/main/module.json5 @@ -0,0 +1,54 @@ +{ + "module": { + "routerMap": "$profile:route_map", + "name": "chatkit_ui", + "type": "har", + "deviceTypes": [ + "phone", + "tablet", + "2in1" + ], + "requestPermissions": [ + { + "name": "ohos.permission.CAMERA", + "reason": "$string:chat_permission_camera_desc", + "usedScene": { + "abilities": [ + "FormAbility" + ], + "when": "always" + } + }, + { + "name": "ohos.permission.MICROPHONE", + "reason": "$string:chat_permission_micro_phone_desc", + "usedScene": { + "abilities": [ + "FormAbility" + ], + "when": "always" + } + }, + { + "name": "ohos.permission.LOCATION", + "reason": "$string:chat_permission_location_desc", + "usedScene": { + "abilities": [ + "FormAbility" + ], + "when": "always" + } + }, + { + "name": "ohos.permission.APPROXIMATELY_LOCATION", + "reason": "$string:chat_permission_location_desc", + "usedScene": { + "abilities": [ + "FormAbility" + ], + "when": "always" + } + } + ] + } +} \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/element/color.json b/chatkit_ui/src/main/resources/base/element/color.json new file mode 100644 index 0000000..8ff93d2 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/element/color.json @@ -0,0 +1,68 @@ +{ + "color": [ + { + "name": "color_chat_title", + "value": "#333333" + }, + { + "name": "color_chat_sub_title", + "value": "#666666" + }, + { + "name": "color_chat_desc", + "value": "#999999" + }, + { + "name": "chat_input_background", + "value": "#e3e5e7" + }, + { + "name": "color_chat_send", + "value": "#337EFF" + }, + { + "name": "color_chat_operation_item_text", + "value": "#333333" + }, + { + "name": "color_chat_send_message_bg", + "value": "#D6E5F6" + }, + { + "name": "color_chat_receive_message_bg", + "value": "#E8EAED" + }, + { + "name": "color_chat_converse_bg", + "value": "#50000000" + }, + { + "name": "color_chat_pin_bg", + "value": "#FFFBEA" + }, + { + "name": "color_chat_page_bg", + "value": "#FFFFFF" + }, + { + "name": "color_chat_pin_tips", + "value": "#3EAF96" + }, + { + "name": "color_chat_op_bg", + "value": "#EFF1F3" + }, + { + "name": "color_chat_bottom_bg", + "value": "#EFF1F2" + }, + { + "name": "color_chat_divider_line", + "value": "#F0F1F5" + }, + { + "name": "color_chat_mute_bg", + "value": "#ffE3E4E4" + } + ] +} \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/element/float.json b/chatkit_ui/src/main/resources/base/element/float.json new file mode 100644 index 0000000..4d609eb --- /dev/null +++ b/chatkit_ui/src/main/resources/base/element/float.json @@ -0,0 +1,24 @@ +{ + "float": [ + { + "name": "chat_title_text_font_size", + "value": "16vp" + }, + { + "name": "chat_subtitle_text_font_size", + "value": "14vp" + }, + { + "name": "chat_desc_text_font_size", + "value": "12vp" + }, + { + "name": "chat_message_text_font_size", + "value": "14vp" + }, + { + "name": "page_text_font_size", + "value": "50fp" + } + ] +} \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/element/string.json b/chatkit_ui/src/main/resources/base/element/string.json new file mode 100644 index 0000000..a8bb2fb --- /dev/null +++ b/chatkit_ui/src/main/resources/base/element/string.json @@ -0,0 +1,425 @@ +{ + "string": [ + { + "name": "p2p_chat_default_title", + "value": "会话消息" + }, + { + "name": "chat_edit_take_picture", + "value": "拍照" + }, + { + "name": "chat_edit_toke_video", + "value": "录制小视频" + }, + { + "name": "chat_media_permission_name", + "value": "云信" + }, + { + "name": "chat_team_notify_invite_title", + "value": "邀请" + }, + { + "name": "chat_team_notify_invite_join", + "value": "加入群聊" + }, + { + "name": "chat_team_notify_kick_title", + "value": "被移出了群聊" + }, + { + "name": "chat_team_notify_leave_title", + "value": "退出了群聊" + }, + { + "name": "chat_team_notify_dismiss_title", + "value": "解散了群聊" + }, + { + "name": "null_message_not_support", + "value": "不支持发送空消息" + }, + { + "name": "chat_send", + "value": "发送" + }, + { + "name": "chat_send_tips", + "value": "请输入消息" + }, + { + "name": "chat_audio_tips", + "value": "按住说话" + }, + { + "name": "chat_camera_take", + "value": "拍摄" + }, + { + "name": "photo_take", + "value": "图片" + }, + { + "name": "reply", + "value": "快捷回复" + }, + { + "name": "teach", + "value": "患教" + }, + { + "name": "outpatient", + "value": "出/停诊公告" + }, + { + "name": "shopping", + "value": "商城" + }, + { + "name": "hospital", + "value": "互联网医院" + }, + { + "name": "chat_send_location", + "value": "位置" + }, + { + "name": "chat_send_file", + "value": "文件" + }, + { + "name": "chat_operation_copy", + "value": "复制消息" + }, + { + "name": "chat_operation_reply", + "value": "回复 " + }, + { + "name": "chat_input_reply_text", + "value": "回复 | " + }, + { + "name": "chat_reply_not_exist", + "value": "该消息已撤回或删除" + }, + { + "name": "chat_operation_forward", + "value": "转发" + }, + { + "name": "chat_operation_multi_select", + "value": "多选" + }, + { + "name": "chat_operation_collection", + "value": "收藏" + }, + { + "name": "chat_collection_success", + "value": "已收藏" + }, + { + "name": "chat_operation_multi_forward", + "value": "合并转发" + }, + { + "name": "chat_operation_single_forward", + "value": "逐条转发" + }, + { + "name": "chat_operation_forward_desc", + "value": "%s的会话记录" + }, + { + "name": "chat_merged_message_title", + "value": "%s 的消息" + }, + { + "name": "chat_merged_message_desc", + "value": "聊天记录" + }, + { + "name": "chat_operation_delete", + "value": "删除" + }, + { + "name": "chat_operation_undo", + "value": "撤回" + }, + { + "name": "chat_operation_pin", + "value": "标记" + }, + { + "name": "chat_operation_unpin", + "value": "取消标记" + }, + { + "name": "chat_msg_undo_tips", + "value": "此消息已撤回" + }, + { + "name": "chat_msg_undo_edit_tips", + "value": " 重新编辑 >" + }, + { + "name": "chat_msg_delete_dialog_title", + "value": "删除" + }, + { + "name": "chat_msg_delete_dialog_desc", + "value": "删除此消息?" + }, + { + "name": "chat_msg_revoke_dialog_title", + "value": "撤回" + }, + { + "name": "chat_msg_revoke_dialog_desc", + "value": "撤回此消息" + }, + { + "name": "chat_msg_dialog_cancel", + "value": "取消" + }, + { + "name": "chat_msg_dialog_sure", + "value": "确定" + }, + { + "name": "chat_msg_call_canceled", + "value": "已取消" + }, + { + "name": "chat_msg_call_refused", + "value": "已拒绝" + }, + { + "name": "chat_msg_call_timeout", + "value": "未接听" + }, + { + "name": "chat_msg_call_busy", + "value": "忙线未接" + }, + { + "name": "chat_msg_call_completed", + "value": "通话时长 " + }, + { + "name": "chat_msg_unknown_type", + "value": "未知消息" + }, + { + "name": "chat_team_error_tip_content", + "value": "您已被移出群聊或该群聊已被解散" + }, + { + "name": "chat_team_error_tip_title", + "value": "提示" + }, + { + "name": "chat_msg_download_tips", + "value": "消息正在下载中..." + }, + { + "name": "chat_setting", + "value": "聊天设置" + }, + { + "name": "chat_current_user_name", + "value": "你" + }, + { + "name": "chat_team_name_update", + "value": "更新群名称为" + }, + { + "name": "chat_team_avatar_update", + "value": "更新了群头像" + }, + { + "name": "chat_team_extension_update", + "value": "更新了群扩展字段" + }, + { + "name": "chat_team_intro_update", + "value": "更新了群介绍" + }, + { + "name": "chat_team_notice_update", + "value": "更新了群公告" + }, + { + "name": "chat_team_verify_update", + "value": "更新群身份验证权限为" + }, + { + "name": "chat_team_invitation_permission_update", + "value": "更新了群权限'邀请他人权限'为" + }, + { + "name": "chat_team_permission_all", + "value": "'所有人'" + }, + { + "name": "chat_team_permission_manager", + "value": "'群主和管理员'" + }, + { + "name": "chat_team_modify_resource_permission_update", + "value": "更新了群权限'群资料修改权限'为" + }, + { + "name": "chat_team_cancel_all_mute", + "value": "群禁言已关闭" + }, + { + "name": "chat_team_full_mute", + "value": "群禁言已开启" + }, + { + "name": "chat_permission_camera_desc", + "value": "用于发送图片和视频消息" + }, + { + "name": "chat_permission_micro_phone_desc", + "value": "用于发送语音消息" + }, + { + "name": "chat_permission_location_desc", + "value": "用于发送地理位置消息" + }, + { + "name": "chat_speak_too_short", + "value": "说话时间太短" + }, + { + "name": "chat_read_receipt_title", + "value": "消息阅读状态" + }, + { + "name": "chat_read_receipt_read", + "value": "已读(%d)" + }, + { + "name": "chat_read_receipt_unread", + "value": "未读(%d)" + }, + { + "name": "chat_read_receipt_all_unread", + "value": "全部成员未读" + }, + { + "name": "chat_read_receipt_all_read", + "value": "全部成员已读" + }, + { + "name": "chat_team_appoint_manager", + "value": "被任命为管理员" + }, + { + "name": "chat_team_removed_manager", + "value": "被撤销管理员身份" + }, + { + "name": "forward_dialog_leave_message", + "value": "留言" + }, + { + "name": "chat_pin_message_tips", + "value": "s% 标记了这条信息" + }, + { + "name": "chat_team_all_mute", + "value": "当前群主设置为禁言" + }, + { + "name": "chat_network_error_tips", + "value": "当前网络不可用,请检查你的网络设置。" + }, + { + "name": "chat_pin_limit_error_tips", + "value": "PIN消息已达最大限制" + }, + { + "name": "chat_revoke_edit_error_tips", + "value": "已超过可编辑时间" + }, + { + "name": "pin_list_unpin_success_tips", + "value": "已取消标记" + }, + { + "name": "chat_message_copy_success_tips", + "value": "已复制" + }, + { + "name": "team_history_record_tip", + "value": "搜索聊天内容" + }, + { + "name": "team_history_record_empty_tip", + "value": "暂无聊天记录" + }, + { + "name": "chat_message_ait_select_tips", + "value": "选择提醒" + }, + { + "name": "chat_team_ait_all", + "value": "所有人" + }, + { + "name": "chat_forward_limit", + "value": "%s限制%d条消息" + }, + { + "name": "multiForward_exist_invalid_fail", + "value": "存在不可转发的消息体,是否去除后发送?" + }, + { + "name": "multiForward_exist_invalid_depth", + "value": "存在超出合并限制的消息,无法合并转发,是否去除后发送?" + }, + { + "name": "file_md5_check_failed", + "value": "文件校验失败" + }, + { + "name": "chat_multi_delete_limit_tips", + "value": "批量删除限制50条消息" + }, + { + "name": "chat_single_forward_limit_tips", + "value": "逐条转发限制10条消息" + }, + { + "name": "chat_multi_forward_limit_tips", + "value": "合并转发限制100条消息" + }, + { + "name": "chat_multi_forward_failed", + "value": "系统异常,转发失败" + }, + { + "name": "chat_team_at_permission_manager_tips", + "value": "更新@所有人权限更新为群主和管理员" + }, + { + "name": "chat_team_at_permission_all_tips", + "value": "更新@所有人权限更新为所有人" + }, + { + "name": "chat_message_empty_notification_text", + "value": "一条空的通知消息" + }, + { + "name": "chat_message_empty_tip_text", + "value": "一条空的 tip 消息" + } + + ] +} \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/add_drawle.png b/chatkit_ui/src/main/resources/base/media/add_drawle.png new file mode 100644 index 0000000000000000000000000000000000000000..1d062dbdf5a66e8bf64d9697f36b07da75c108e3 GIT binary patch literal 6432 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 AO#lD@ literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_audio_receive.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_audio_receive.svg new file mode 100644 index 0000000..57871f1 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_audio_receive.svg @@ -0,0 +1,15 @@ + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_audio_send.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_audio_send.svg new file mode 100644 index 0000000..595965a --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_audio_send.svg @@ -0,0 +1,15 @@ + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_call_audio.png b/chatkit_ui/src/main/resources/base/media/ic_chat_call_audio.png new file mode 100644 index 0000000000000000000000000000000000000000..69424fff29d2c417bbecd2ffc0023e6844ec0de1 GIT binary patch literal 1036 zcmV+n1oQieP)Px#1am@3R0s$N2z&@+hyVZswn;=mRA_sqL98;Br7{(z%I>I~z`Q}iGL`9C0JJv{+)ymxT3k*F&Pp)EA3&CqBKR6$7dtcG z?99$AfEF!Uv}n>4j5yiAPC+u^IJ3{ya_pgiF5AKTAMc!tnGlL$43CY z6`v=}{F#WXQYyc{zb^n3*4jd3LjYkA1Q9cb0A2%lvqsmbi6dJbFvf&I5Db|4tZE3$ zT^oC%O<{})wbnfV#{k}bLyYKZKA-=w&5?}`#BtnX=8piP(sZL8stbwm0N*;2JLmeF zY^`;m+wGna(Xcf2Lx@+g$`K;EOp@ec)q1^ZGLGX50Pkg3F!OI&mR-(fvuCAB6U=6_ z;_mKlytlXam56=;@DqSur_-V7bULZ7e-eQ>j)$du&z*B8*4o;2TXyis_kagOa=@GP z0MYdclEOrEl_bgeS_k4dzF_8o3@1W<>#iGPLZ#Fh5xv9q(wd_|$rLC4#InykNhhi- zy!A$$a|ddA9bhk#P52iZO6T)&P?71r8$E9JIv@~Y(rX`B7XzZ20Hk|uGBWi8JEoR{zPG7qh_A)=$oHKSIu+d?SRTHoL? zsv`j7QmT|W9053kM9Vq1@B6@T#eIJh3IL~Rn*Q}Y?p8s1MTC`} + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_file_excel.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_file_excel.svg new file mode 100644 index 0000000..e67e75d --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_file_excel.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_file_image.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_file_image.svg new file mode 100644 index 0000000..c2832a6 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_file_image.svg @@ -0,0 +1,16 @@ + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_file_mp3.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_file_mp3.svg new file mode 100644 index 0000000..a34f566 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_file_mp3.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_file_other.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_file_other.svg new file mode 100644 index 0000000..637dbe3 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_file_other.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_file_pdf.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_file_pdf.svg new file mode 100644 index 0000000..d9ec241 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_file_pdf.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_file_ppt.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_file_ppt.svg new file mode 100644 index 0000000..2e8f65a --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_file_ppt.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_file_rar.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_file_rar.svg new file mode 100644 index 0000000..ae106cc --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_file_rar.svg @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_file_txt.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_file_txt.svg new file mode 100644 index 0000000..e95d190 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_file_txt.svg @@ -0,0 +1,16 @@ + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_file_unknown.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_file_unknown.svg new file mode 100644 index 0000000..43d2834 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_file_unknown.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_file_video.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_file_video.svg new file mode 100644 index 0000000..d093d90 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_file_video.svg @@ -0,0 +1,18 @@ + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_file_word.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_file_word.svg new file mode 100644 index 0000000..9dd28e1 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_file_word.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_flle_keynote.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_flle_keynote.svg new file mode 100644 index 0000000..a5224c3 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_flle_keynote.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_location_default.png b/chatkit_ui/src/main/resources/base/media/ic_chat_location_default.png new file mode 100644 index 0000000000000000000000000000000000000000..b2e4548f6ff440440f98f18c9a89c0e1e7460a97 GIT binary patch literal 4436 zcmeHKX*kqt8z)m|>R4vTQX0#MNRmdTkcmcA9G$Z7O!i^2WZ#Y~gUJ%5h{8l2B6|)- zUR$>0ps~x4<;;vR27@f`M9W<7m-o8f_rv>sIA5OYe?8Crzn9;A-@oU%W3T<9!*k&9 z0S*ohp3Az(>l_?=G+Ez8zp-?Z;o~Yl3RMG&G7RzpcH$LQ-?}g2d&x<^Cu zhXR>2%bL*MLWg5&)6HfJH}q+O0<MDQC5}9-^I)K-If8$JR>th*h%t8 zY$BDa;z=fUgsN*D%$SpZ6~@(*0Q`q5RzgAqjOPPSfxrN9u;ztRP+f88TS+KT0~!%- zi%il$CS62=f{_5u2CPH~Rw4!~v5E!mi2!S^gEV=;nhRhs03a2yBpGo88u3vI3ItvP z%v}VWLjoFfkRT8a_-72z3k!@${M*p~5<2|Vj@j@veDR+YkI(PXnBXq;YZlI1c@!l^ z^SziZapCQZ>Vhdv#@#rD>EFE7Iuj3%pTd+wl(j=D@?iX6r-^r=EAVf zZPE3|w+U;s6+U6aCr5-Zo~`!YuglG0tT*amzRwF|#NpI4{TCsma}z6UZkdZeS;>Tp zx;+u}EX^X=Y?sPGoCUji*bBX#kRnX(YVr2qn%$NjQ?^po1wOm;qo$uyeiuQ*`1(?LbNsbLFsLGg8Wj@O3Io&HN zewrR7AJ3fbCo}Tg^M;Rz$*FXg)6Otc5zwtcJ<2-8iat^j$!32+aJm1XVwwkkLvjL7 z|8Qs47*`%DubZI2#T@iW3wY*MzvjB;=xMAqbW231iH7f(v!Zv|^3;2ZYq=Q#-Pr<>53-i`FG8j<@?yf-CF$-8#Sbgz z#6BB$I-f~P@2ZF2+*-zNy;w(dIVIcC%@-kTnV$$OV?4*=`bWaHTzZxJ?Z%_s%#8}$ zMobtNJ@57h_uV*deU-q*L$a2`qBa7*CAZt8YTQh~Js7C^2%%PSwKm;0W>_+co88*{ z*s>IrFMrx&tH`SWh%*cws%#}}&inTgNsiu=Cp}*p&KC!m*JcIl{2;b#{_l8|<6oQV zlX$uY2Xq?qn<}oam6gVHu1$#1(-#l1J04K~8HbHG+{#{Q`&7IwumUy7opuvMfQWjZ zkT#kA`fIx!DGSzYOd;x>tS+hCcRKmSUQeNoGvnL$fRBAT^*>}35QP@P#^yUH`aQ9V zz7M<3k8OB+b{X>WrNt3byM>CzUm@@=)b+cfq!W=+^pd(!{(9?`NpRL$6xrkeg-;cw zfwuctkNk+ATu0}I7+TYo=b753_|jt9(-7qI;eZK+FWR^>UnSb&NzqPK{qE$D6}_hKqEq_<$(@BNl^z7Ri-B;OP~IPK1rv-DQqzBA9O(KaodHvB*^ zCAqND!#_?y&0cBJh-P!D<7e;bvA?L$Q`hCt-7QsJuhC*I?UZ3hbYWP_7eQm(u8Wu` z_aLM#e(~9#G5S5uk3u>j)Vkjcnps8S+8w%MRcY7fT8DL)=aICmupwpr+e11pUHa3~ zJI9IYaz!QSWj)?2zv7fC?U5jc7xJ1vIhHRSW9$x2E=fOTZgYkTt6T9r^m6)o{2HrC zNR<8!?@?Zu62d{eRRkq}X&1&CE8$QDEhz{eoM79Y%d_I?LhbXvJ7~(porOVyg2J4> z2!A#3x}drbJ%4iesJ#?~X^bclkG3S%1u%=s;%>W0J$oBNd;an@lNaPbdhx#Vx%LZ zF4#z2Ofo$o@gTRh6Zgjqf95aXvvVTiMf^^7ZEf+((-wjj+CGK-qYfEeCLQn$gkr$8 zjk=1!rCvt0`t*cV(^n$pnMgf04)!e$}P!ufaf6X6ajy zZO+`4Vnt&w&8~#J+N@eeAL&No@MHtw?LR!}tzlj&Ym*fNmdqSEQPu?k=Kt2-Hek&` zzd~B=plQtt$lS#pyyQH3H7}LpiYS`|c~UPdC7^af5Pa;#hTWTP>0pB4mgVtSri>AH zW&BL!@ORddhdOU6Cs-@1S!_GeMe~QU@A0r`+ts%Ua>^=MiEf#6m|ZRHPL_Sy3y(DH zgH!JA{{2Vh3l0)51%AKY;(%VcA?PMb%`N37<^hF4pU|{`Dstpp0xsSS8uFd{v;oz( z?O2yHO~Wm;ueKHad_*Qk1~UF)JzEYv=ES@5AY)#Mbc~x#ey&Gd)s}bJ_@Rl$=Qn8g z0e6D+)7Z}%!0%@=(t3Z4XHWOW=PczlqIDhje zw$ckn{zw%_g3T;Imn~_W>}~RY@=GkRG)#as$t{fDeWpA=dhXuF$+ATD zzZpGw?tAYD&=rS%sFc?3x#(zbPh$SeUvt~r@)br%B5ha4)hjv8sCdrQfj9me=RP}f zdL7yc{uN%vxC(PFB03l5HwgbZsbkl*JJY61Z@ZGgjGzv1`9ZBR+7O&Oso?8b9@N~b zl2!Sl8Mv@Ef?c@f4p5Q7ekXjV95-(cix2XYziycAi(k>_nu6|xKUK3xZ%?GGn3ZJD zqEkX9IjW<9dyYbZYZUa7PoIZa$;4F{a{$hpht29p)965QpH^@gX(QDq3u zmvr^(+3z_WE!c&%J6FO?)Tu71_?g@gV}7)#1DQd8e;G+Q`AW znT4U(Z78Dq-zV(u=g9ibI%*e^%xYXdl=loQnMB*eDpq**I)4r4)^T62(!lb-JEN!l zY8z&KvO{ig9^L`7!B4uR)PU-{|90}*KH+_+-r_;H@YDS}fCd`{&!JK7g{$(uWjEcW zq+m}(vA<}9l3R{fVU*vT*+FA<3Q1W-UoNDiz#3!bOGO>5;6jPp4ewX`5WFoUMQ-iM zC)~}B79OLwdMt{D;gYY!b|a6E%Xu=QE~b!<5IBEGAwh_Ezq#E;?R?<6M~(J}((S!U YR-*SgPSnv@J;rfa`xj)9mTkm80mSofqyPW_ literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_menu_collection.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_menu_collection.svg new file mode 100644 index 0000000..bd205b5 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_menu_collection.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_menu_copy.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_menu_copy.svg new file mode 100644 index 0000000..0f94067 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_menu_copy.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_menu_delete.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_menu_delete.svg new file mode 100644 index 0000000..500451d --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_menu_delete.svg @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_menu_multi_select.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_menu_multi_select.svg new file mode 100644 index 0000000..a1943ed --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_menu_multi_select.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_menu_pin.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_menu_pin.svg new file mode 100644 index 0000000..0da9089 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_menu_pin.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_menu_reply.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_menu_reply.svg new file mode 100644 index 0000000..9ecae54 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_menu_reply.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_menu_revoke.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_menu_revoke.svg new file mode 100644 index 0000000..bc4da10 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_menu_revoke.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_menu_translate.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_menu_translate.svg new file mode 100644 index 0000000..55d1057 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_menu_translate.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_message_pin.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_message_pin.svg new file mode 100644 index 0000000..e64ee74 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_message_pin.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_message_sending.png b/chatkit_ui/src/main/resources/base/media/ic_chat_message_sending.png new file mode 100644 index 0000000000000000000000000000000000000000..535bd9b569edafb125b9539e680460ef2140a712 GIT binary patch literal 1131 zcmV-x1eE)UP)Px(B}qg|U zn&FQ*cM#MoUs{l~E&0C3Q1wQ?VU7z==-N5mg&got({k;uMha3}!NG})ol2Y}sH ztL5tt#W5BD5gEN+?*^!%$v?M$E;o%|XIL?Ny>-%q}A+YClf6j57>h0|<1BQ4!&e{8ch&;9|iOb7N1}fzh zfV;apf3vZsu{ClG>-9QsE}mn~O2)FRshV+ndpqhl&JiNo{eHht zE|-TMrJ(@o^*SFLcJ8mwf@N7#EuyWhE!LNdh_5IBh{MCfgSXjv1;C5?-TFktRm-xb zqFm{8+6aY0%#wo9W>WL~{A>+o<1GNba{e*uB4W<6EO}CokB@mHt}BZ2Gm%IPEr$@o za9wwYb%YR7XLEBijflL0{Si-;N~Ph)h+nAJ>+FzU-XDy*QmM#uOhms@sgyj&#bQx* zcQ%`q&hq(u6%qLy+l4|Qpl@C_B!?)KN_-synTU{_o}Q+OND>m}dC6ol$IcZ+kxRyP z-DL)m&*%A6OG1K(86m{MrJ5JPu!(Ki*Ix_nG xzT|zOP$-tkWTx5^zRgbqm}cL9r2Fjv{s#ge-7rQ2<)i=r002ovPDHLkV1l*+9pwN3 literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_message_status_fail.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_message_status_fail.svg new file mode 100644 index 0000000..2f44f67 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_message_status_fail.svg @@ -0,0 +1,13 @@ + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_message_video.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_message_video.svg new file mode 100644 index 0000000..102ee11 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_message_video.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_more_location.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_more_location.svg new file mode 100644 index 0000000..41fd5dd --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_more_location.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_read_status_read.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_read_status_read.svg new file mode 100644 index 0000000..c23a530 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_read_status_read.svg @@ -0,0 +1,13 @@ + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_read_status_unread.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_read_status_unread.svg new file mode 100644 index 0000000..2584762 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_read_status_unread.svg @@ -0,0 +1,9 @@ + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_reply_close.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_reply_close.svg new file mode 100644 index 0000000..926104a --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_reply_close.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_select_delete.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_select_delete.svg new file mode 100644 index 0000000..9c39249 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_select_delete.svg @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_select_delete_dis.png b/chatkit_ui/src/main/resources/base/media/ic_chat_select_delete_dis.png new file mode 100644 index 0000000000000000000000000000000000000000..ec49a49665074a6df676a7a869b42d0468356eda GIT binary patch literal 2473 zcmV;a30C%rP)Px#1am@3R0s$N2z&@+hyVZyQ%OWYRCt{2o!^fW*A>UV=f*#^RP%!w28zYP>JwRDMU(Mkg5a;x~NaxsLeyvrIjK| zL%Si}b_3dMQ)b7*%3i<-du^}o>4UG0*K2$IV?1Ls^Les8Gv}T;XXeiM-gD0(bSb83 z4oNBZF!OF9#27R0AR-OGATvJ>pbtP$?VbhjfQaq_NHDWWM7N}rvqW@L2r;i|+OkvU zQV()kfg*`SVkDQ#9U!7{Ddj#Q+5^CEk@!3_&kG^0G4pgF5V$fpIJjhy?6z>!0r7Zz zmy~jxh+YP;AHWuynqCEPm6$EbhNEb3XjL*F9P^AGwSV3wJGJ~A@$ zWxIkzy8;Zuc!7v!;2z@xz!(wD7>4meyMo$sfUfJu0ZakV+Et_n(Ev;-8?;Qz4$yV| zH6g_N00!DopvM^yLcFi*`fIHUXz3ZCjQ<-v9F254St;e~u~_WAW)E!I0lKaqS66;UzuIRke-aGSwo<|B>1 zqBispR)4ZC!ZUs&Xhd{T*Y!vvJ2&J2B03Fsz2~>fn6lZXY}y5>v7M$KEFL9}Z#H&R z*8zrM>;!NXkKVwVUEBt+zuqWn-7bik--c)WcG#|LSd*G}Ks+9Qk(vKcZy%3_U?O^{ z)}&5V<~$IPGh>P%L*K}6Sy=m*uNH>-9*Qp#hV@vVcI_ev>`Rok}V4oD`G1G!x8 zAH6bx-YXE%LLd=yaV(0GV=L+OUH-9A#5G!hqislV$E9S8D--?6@Tzm>~PXnb!w2#WH9^r z9Fi+5mdFc-LO6KfS%gDfF@k;)WezBHLGgHe7YebOj&tMYf@Q`B9y+v3IIL_9pzID% zQOZsS%Hm$?K5pp-fWnnKx@#x44)nJqE1g-z+`s3MUt2?RWd-+A_gj`_Az>-yIDmJ7 zG6$#-amUGIGNsRv$P;*K^vRZGMNqiwa5Vxm)#f zt86AO5_!UryM&0w0sNi-U}RQ2|P>C-*9Dtc07bs*M@o500aVoD=4J%?OKX4{^3vve*eZGj&L|s3b2Yq z+7D^$FssVug~+(U!NDcNFs=eP)x}{Ym#)$94-2l}CDL*1}m;HS}Ow6sQSodZ;E|Ig4xD=CaxB zv*k4k*3Aj44QFjv%RQW}ED*6_Qa%_AULc|c`*d;#M6?hL1}{|pzQF;JNF>F~XY5hS zJuvf`YE?O^hNTE0&a2`D9u`1E*M$)0t8J_50F~F~6oBrC+U;!^z^PiLP-+Hd4G#~0 z#LQD2Q_CeV^HjYOD0L&_i0Dle63=o*aQrIc?pTRj74v4~GB z7JE-h`8vEi0VrJgE!B?!+RO{B>dBmidrO+6q?8k_T=_-XP7wfLG4889GwV*79}2O2Pfi{5w1v^9iiZ zWxv(N2fUKzb?MoX=H-~C*(aquMnsdnk`|wc7MS^r5aN8TnJmlN>ZI^;lF8(N%AY@h z?u|Q|18_DN3|^=Q6#pCf^ zDrxx3D5OrdD|_!MfUC@WNeD4r9;<0LT~neekw}c>a=8OUG%lswr*fHEl}(Hi_t# nlyX)r1)bM4ZP}@FsmK2Tv9p}>Q6;?N00000NkvXXu0mjf8jY!D literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_select_forward.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_select_forward.svg new file mode 100644 index 0000000..130a473 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_select_forward.svg @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_select_forward_dis.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_select_forward_dis.svg new file mode 100644 index 0000000..828aeec --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_select_forward_dis.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_select_multi_forward.svg b/chatkit_ui/src/main/resources/base/media/ic_chat_select_multi_forward.svg new file mode 100644 index 0000000..130a473 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_chat_select_multi_forward.svg @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_chat_select_multi_forward_dis.png b/chatkit_ui/src/main/resources/base/media/ic_chat_select_multi_forward_dis.png new file mode 100644 index 0000000000000000000000000000000000000000..28662bc12f787d799d5fd2d3b56d25a34b49d842 GIT binary patch literal 3134 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 RX5c>nV2;0Zt_(+v|1U*Q-s%7V literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/base/media/ic_down_arr.svg b/chatkit_ui/src/main/resources/base/media/ic_down_arr.svg new file mode 100644 index 0000000..6bd94fb --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_down_arr.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_member_all.svg b/chatkit_ui/src/main/resources/base/media/ic_member_all.svg new file mode 100644 index 0000000..b10bb9f --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_member_all.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_public_back.svg b/chatkit_ui/src/main/resources/base/media/ic_public_back.svg new file mode 100644 index 0000000..7663beb --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_public_back.svg @@ -0,0 +1,24 @@ + + + + + icon_more备份 + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_public_chat_emoji.png b/chatkit_ui/src/main/resources/base/media/ic_public_chat_emoji.png new file mode 100644 index 0000000000000000000000000000000000000000..cb452bf4e71ffbcf1c3a7ae52b4916446417ea0b GIT binary patch literal 1648 zcmV-$29NoPP)@NutRt8f>DOC>n%78k zOoGu4_5*eRhG$#+4*Zs2t%KDL-U}hT3VhQSM{vDdWR&;*Qs5GtJGi5@Qd$Mfi!nX{ ztm|kEpi>}6c(a+n`G9r0dELAKEQ%rA34GMc0x0&!)GQI6j4;=P}Sa}N~) zfqZ6q{Xu#F$)eMf-2+pa)!&+^KV+tv+w;FWm|P#t>VYUvd|n8#@`;Q4T@4L3^k(yc zi?W|K#1IZD=9w*kc(b{{6b)8%N--YY4~|{+o`yT`-!DY7M`H+63tH-4N3`RE+!noa zO3Sjprx?OfIi2a&h&NLPomkUGSF%&wZYC!K;zh>-KZ{lXN|2i> z9`sz`Wv%bZaAu3e-k^){H4^>(&1RPh zd=2c?V2l{>KADC}mvCk;IXI&>Ad9Lwkk9gZBElp>Sl9x{pTMw^G1ma%W@WMm@LiMN zCjc)r-QR4Yhb}Ui(yAEaAp$beo9Tum8)FC~DzI4D^qwV~T?VK~DihK64GqjPAAch7 zR*Q=q=FLE zOsuImvn38r)1X=z;LRQYuFBLjGsbvVt3`lq0UhR?!dQV&qdy5;Gg0 zK*gLaX_+*#CNl@wn$o`1I}l`aMyGVvwF2^!YH9s1b95!QfgrnN4zIJW7ZBCivUvf~ zzkd$|6u>s#EN2m$1{IKYOsiXa{h&47c3INZ_B~9i9cTX@*sUKxXp0|!-J9&SrL(sg zeqRSf7$qveHufjj!gELR$5pA?UuUxW;a-)Hh{pWz1a?F)I4cI zEIJ3F8bccXs)?7<|JyQW_cb=%A8zH_0r~p zCUw#d5*XQXt{JVPXf`i%Tvd`qQJt;;q2@y#o%FjjA>V5XqEb63(@G}|I+>ZefW@wT zet5lBi491UrSpf;A~^Ykx|z+)N#iRw=rp)DEmPg70!AL1o0xg+CxzHqO`}s`1#h;X z@XXM>WvY3-Y+@_Vh{DMJr6JjW{#2)igTl2mplVVSq-irQ$I(d>yEb=FJS$|kFgPB1 zGB8{F>FwddGlFceqo=prJO{;NXbxsjJWqEAz`^jrKrtT-{7*RQvfF_FsHQ$!>oX^H u-!JavXHN5DjC%O#_s^Uf(T}bA;n~088^FCcf^mib0000 + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_public_chat_file.svg b/chatkit_ui/src/main/resources/base/media/ic_public_chat_file.svg new file mode 100644 index 0000000..3cfb92b --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_public_chat_file.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_public_chat_image.svg b/chatkit_ui/src/main/resources/base/media/ic_public_chat_image.svg new file mode 100644 index 0000000..795ca0e --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_public_chat_image.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_public_chat_more.png b/chatkit_ui/src/main/resources/base/media/ic_public_chat_more.png new file mode 100644 index 0000000000000000000000000000000000000000..e7799427a11542e8ae26ee757e548272b1dfc62f GIT binary patch literal 1109 zcmV-b1giUqP)?BReU8H zhzk`>CLjnd-1tO{k<22x(?}2v7@g{ty0_2e%<<05eVokXp59zIx4XLju6K0{^^Mi4 zdTW9k6RZ`u9JmM=&s+Qn{E=Wr;F!RdX7(xYOC2o8kVMvm5FP;TN95{(Xr*)%cqhjA zHgIAf8o;1Ht_!L=fqMZRbo0tO0}e*B=YengrP(i#OM~i*z(ZXQ;dFw}C8f_qum`xfL_8%plwdDr z9{_*%x^bSj64gxtlLEI_4(F7>l$pKP3(a1DtO%+v0aImy3Eod;PXpievQZCn)`{v< z0{2wr?ullP0sk&UV=*8Xit0gujRldE(s2!8`|RxOksg@qd&=0@*anMnw}@QP*%PLd zncL%E^ATJKh=VvHa8qgV{%H1aN$>k+w8sVGLG^WDO9{*u$!x=XVCDm|LR3F0Ng|Qb zlQG8UdSs-QX(5Cs5P7Dsoz#}hUES2IE0CbNyJQm%;*l7m8~T!u5W*B9ua+Ev+syVV zBmV=Ez0dmS^JWl*raxVRK4{qhLn3r7W%*G{zuS(wRjc7Jml2T`_ryXAxx)?+@ z*5G361cJNfn9_9SI7PD?igc!PLP6Cd=;oF*+QH8K_OPQ?AkIvVYempJ5X~l9-!rFc zg6d3803GS|HAU>&fdK1*>NlBpi)LOfoM-_FA?(Wj+NJSHGP`qFQ552@(MCF?MD=5V zJ6a#IS1o}2P}CC|gH~K>Yw`D`0l%V=D@Msp(&KTnhb)jgV z&73hz9GOEXgs=kPC5{;v(L{!{P&*`0dihYJ(GDo z(*$2AyL$ms_U$OVbf!h?ZwQ)Tp@a8z1EBmbzT+Vb*eP7eZGhkWL=FUI)Ray)bD*27!Y bhiCr*u*+|~tvQ@Q00000NkvXXu0mjfb0rWW literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/base/media/ic_public_chat_more_select.svg b/chatkit_ui/src/main/resources/base/media/ic_public_chat_more_select.svg new file mode 100644 index 0000000..50b6b7e --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_public_chat_more_select.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_public_chat_photo.svg b/chatkit_ui/src/main/resources/base/media/ic_public_chat_photo.svg new file mode 100644 index 0000000..9544a0c --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_public_chat_photo.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_public_chat_speaker.png b/chatkit_ui/src/main/resources/base/media/ic_public_chat_speaker.png new file mode 100644 index 0000000000000000000000000000000000000000..3fe0045e52c910453683269263937de854c9fc93 GIT binary patch literal 1842 zcmV-22hI42P)uY3I$o=icw0d(QdJc~eH| zq%&|1a0<{3I2za=Xm6JI7uW{;3akRY13m}VmtqTLEmU#@a5Zoha9okPegY-}Zv*R! z)IqU8P5{OL7XwbQiwEYpz*OKd;QOdLqXOv&JONw_jSgWu@FlPiSO%;HwgS3R5?!%_ zfMbE4z?nc_plx8&^}w6JC}49~Kv95P2D}IyU@6z49|NxgGl6v2h0VA&z+hkmaDL!$ z{sC?RCWp}(21o*U#wfLQegHfS{19fL5Mz!99t185jMd@Y4rF(yqd6e$%)LF&Qt}IM zGw?}>%@s4GKkx!@j5T?l@yD8`6z&d)Kxnh4Ta(`fZnW-wF&hmtNB;COaJe=38$cin zf@unfuG4J5w}gD*eqdafU6gRly}%=u@5nNP3SG0NfXK9RG>JgmVjR7Mdkn2g`*_|0 zBcIXL-bD%lQFNMQjk>Q?mgwmuFRQ`3ZmpZUAT*4f17(>kjsO{dpH0HXk~*otOvnEaDhVFMBESYkbsqn9kiUeUh&L33(q zR&J}W@1TV%9cOm6>s}ZEh=wX^$>Dw9J;|ptHW1ypOU)o9JMpNJO3y^%nq}Fn=m#;V z@0UpRo|morHsT`UV}87JWbAW+<-jI;qa9i znX%DzheiY<2C&rZT|`sm!aCm~icE^vl8=C>Q6;#Sen!tU%gXsNeUiybzRF~#=>Kxc zykQlo&Xa0uH$((82N-DP*GbQg zjK%L>>*XGgxR_kP55KBsssu!p-S0+`sJN(hR2CcDhfJTpK879prCuL5QQ6wXJh%s#V1L;m7OVNo^YSNp zUb14?yiD!%i0ewHs!7Rn+JLO!lS36bvmz=KJC;+Q0sL&ueZbT!dZZ?UqF94eI?nuR z*F8%Qy2j#T)_A$72dEsRVoowoK$O81!X!%j>TraWUch`MYm=yaQ)|9hs(&cDHX73) z6)>)LXWdT{CS*V-97WWr5uK9!Dj-{ogX@7D{jZSPP6ZZN4yUW71NqI&SJc{JUAvU| zod3F8JU(hwZfCSQFcy3DZ_gVUa$SFz7=j#LvQs3;>4e$UFEa;u@- z{%7eDAW0RVP??uriSpYPWp~IwIoNR~Z*g6_hzhX<88UxRk{!hYQ3N`wz-mFKRtH6u zrsQk`KL4R_n>IImnNGi?|2sL(v_D-pSgSV&rV)^0u2v7=Q{a%mYX7H28eOeoon8GY zW$eQZ82N~-NbjRjaeH# zk2Fe%twB+=zduB)%n9x`vkypC44s>)oe{wr8rq1Wv<7KZ8StUmm}jn@PfQt-NS!t# zTc>udpV!|F5ckf^iCy;6r}M|V7FUZ zT39IoDp~e1L{fa}3wxJ=dSvukFQ*QF6lt=sDs`zV)9Vha%-tnp_fDpUf1Rnz7jCK$ z2e+-LoU(oUF6D4Dh<01*YHq2U53o@?kO#zPUE@d<=tnc(>~=7gGcRK-`|>TnMz@+HL<%niC0#+*^xaG zi942OvrmWFy%`g^iS6rdwbu$~CfZ!TFq?iY0*IntD`<^<=0%Ud?CDo;D!TmF2-;6k zuikvi?-MUWeK7mP>uK93_xc|U*kJaFpK#cK_WB>y1jD~r^EKv$X-j_Qq!*oU?TMc` g70PFO^oM8v0gLfBUB=px4*&oF07*qoM6N<$g4QT=Q2+n{ literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/base/media/ic_public_chat_speaker_select.svg b/chatkit_ui/src/main/resources/base/media/ic_public_chat_speaker_select.svg new file mode 100644 index 0000000..1c892e1 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_public_chat_speaker_select.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_public_more_dot.svg b/chatkit_ui/src/main/resources/base/media/ic_public_more_dot.svg new file mode 100644 index 0000000..9aaafdd --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_public_more_dot.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_public_record_speaker.svg b/chatkit_ui/src/main/resources/base/media/ic_public_record_speaker.svg new file mode 100644 index 0000000..538b75e --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_public_record_speaker.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_public_record_speaker_press.svg b/chatkit_ui/src/main/resources/base/media/ic_public_record_speaker_press.svg new file mode 100644 index 0000000..728cc35 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_public_record_speaker_press.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/base/media/ic_sound_from_1.svg b/chatkit_ui/src/main/resources/base/media/ic_sound_from_1.svg new file mode 100644 index 0000000..05a9f2b --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_sound_from_1.svg @@ -0,0 +1,12 @@ + + + + + diff --git a/chatkit_ui/src/main/resources/base/media/ic_sound_from_2.svg b/chatkit_ui/src/main/resources/base/media/ic_sound_from_2.svg new file mode 100644 index 0000000..c62f358 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_sound_from_2.svg @@ -0,0 +1,12 @@ + + + + + diff --git a/chatkit_ui/src/main/resources/base/media/ic_sound_from_3.svg b/chatkit_ui/src/main/resources/base/media/ic_sound_from_3.svg new file mode 100644 index 0000000..d70f320 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_sound_from_3.svg @@ -0,0 +1,15 @@ + + + + + + diff --git a/chatkit_ui/src/main/resources/base/media/ic_sound_to_1.svg b/chatkit_ui/src/main/resources/base/media/ic_sound_to_1.svg new file mode 100644 index 0000000..c3fd40c --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_sound_to_1.svg @@ -0,0 +1,12 @@ + + + + + diff --git a/chatkit_ui/src/main/resources/base/media/ic_sound_to_2.svg b/chatkit_ui/src/main/resources/base/media/ic_sound_to_2.svg new file mode 100644 index 0000000..c7b72e1 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_sound_to_2.svg @@ -0,0 +1,12 @@ + + + + + diff --git a/chatkit_ui/src/main/resources/base/media/ic_sound_to_3.svg b/chatkit_ui/src/main/resources/base/media/ic_sound_to_3.svg new file mode 100644 index 0000000..5b33404 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/media/ic_sound_to_3.svg @@ -0,0 +1,15 @@ + + + + + + diff --git a/chatkit_ui/src/main/resources/base/media/ic_tabs_icon.png b/chatkit_ui/src/main/resources/base/media/ic_tabs_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..fe44f213b6dffefd81b606cc263797a386031bff GIT binary patch literal 3495 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 VMCtM12Q&Zx002ovPDHLkV1k?yk1PNH literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/base/media/ic_tabs_icon_selected.png b/chatkit_ui/src/main/resources/base/media/ic_tabs_icon_selected.png new file mode 100644 index 0000000000000000000000000000000000000000..78bddbe4e5e6226ea1cd7fd95267a735291df39d GIT binary patch literal 3207 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 literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/base/media/icon.png b/chatkit_ui/src/main/resources/base/media/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..514fd9577eff00bd72c2a6a0fab27064feb94f3b GIT binary patch literal 14248 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 KMNUMnLSTZd^ve_g literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/base/media/icon_chatting_file.png b/chatkit_ui/src/main/resources/base/media/icon_chatting_file.png new file mode 100644 index 0000000000000000000000000000000000000000..1dbcd0ded5d75c9db5cbcd1883bc1ba59ca622d6 GIT binary patch literal 11117 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 R9d~~#jr7cPtFO literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/base/media/im_icon_images.png b/chatkit_ui/src/main/resources/base/media/im_icon_images.png new file mode 100644 index 0000000000000000000000000000000000000000..5b4e90dfd95ca4f7ab518d34ae38801ea62f4722 GIT binary patch literal 4388 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 Q-Pf9Goz_z;P_YUAKbC0MTmS$7 literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/base/media/outpatient_true.png b/chatkit_ui/src/main/resources/base/media/outpatient_true.png new file mode 100644 index 0000000000000000000000000000000000000000..d4440880291342de303dc9484a68684bf103c422 GIT binary patch literal 2566 zcmaJ@3p7+~8y-X`5fM(YjS^z^4C6AxxXlnwBgV+BFwDkaF3k)kDY=ZOsQigAIXQ`w z#)xi`h+IxZ^;1kIO`TEc{A>NEf3LOo_kHhrpXa@N&wAI+_4V1JrmC+B zgTd6iJP9P(N?m-Fm1JMm<3h4*(c`)Yas8Rm+++$Hg1J(ekr3cTr^G-ch(g`H>sQDT z22(Jhk%PEF#I4vUCLKXp^g;0GEEyUGb9CmhC{ghc7l?#nXbc?ubyEu*piyz~KpP^G z$ihRhG|v<^8o^}8fG7+G10tgG=FAGC0Od z3|E_fU zH*XG?1pS@wKN54uyIBxOf;h}Xc9iVmqKy|rv9NeHMBy^oWF|9Vsf)g`OfHiX%VYs~ z{9@NIfN3C&L1iX$%syj?M64Hs!=*5yATI(AE@MH^XjClT8iR3lN84N5Vq8%ucUMfcz*cd?6dptEF=2@so>1W`TMOgiwnY%J~j zx!8V}?<)V*r6ezc zE15SkEePGVBVbL}kU_SdZbY_xrMx)A;)G6SvX)I}P^pqoU8+Hx&IF}!eJx@f$vLBw zKs+~iRy|A;>^DVU+-|W^@wQ-+R7~kjlHTKE?ykJZKgsF6dp@ncq*vGwBb^T`+B@$h z{ttiU@6YTfUtW#BS7d#*EFV*Gy4WTL!O4*p=^T7Q;^kkf~yo%aZkOdu=x!Yr!tpF>**B%5hFz zt6QdcRBpyS0u2MkA0KF~cAy3ZRYaI-Y8oyRt#oMkz%)&FSn zyU}(k?PvHwiD}%c0P>Y`!xW@EU86_(3++juzG#V9X7`?L2tO>TDV^Om;o`U`I8_l>S< zJ5LN~hn^YM7isyRUh&kANV03!0o{7}NMmLirSE+LQj->Ea9KS3247;}pjF{(@30Tt z&(ocZdWr}!+SibV_QR`$ok?A{BqiHBxqoiG$X2*NJ3WtN^Cgqg0=)M~-SdJQ z;ckQYxc4!1MxH~>h5{h&)t%Z5zESgVpApq^d<{_f(kxFHsvoOVx==3y^E8C{@#cYl zYSz0!R%#z~t3a2K@JGRWuiO7R==oy3;p^?XhMmFME`5H6yu3R@b_UlYM||R~*PZ<+ zjyA>LXq{?Sp1OGz>GXSMa;loa%qH!QtD@rfex*L+J4r_REqBwZo5L3vDQS*JTM&Y4)kdH&0&+hCJ{>!9sA;Kp(FHC7mwr2Cebh1~s)qR4$Gwn^+mF6?E(eN_u zr+Vw0q5sN9)we~ThI9M37guC0c zXDqm;kS*9HSxy{iiCtwjc)PW7cmcCkRO6X+N9x)n6+4s^*yWyJK6jxHEU%5p=G55~ zTu;{%^$3pz6|HB7BoE=Dv>&Zeahv#KeSEy)X7e1?w-7+exj}v|H!rVY9->X9ZN$0+Ail`@|6sAwG{OiC=+nU{Ivr87UhDZg58{dVNm z;7lO7yDgEm1{sS#Os#rB@{}OLXhPti3hAccR9rqsjcoP`hm>Msqa|OM2}l#&ciL z3i%vTR5LxepBo9g}H{k-Pxsg?mup*i09M0=Vt~Io<4Ym d0Y8GRFziKD_lGXeniv1fyxe^VwQdm^e*sA}D+K@m literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/base/media/patient_teach_call.png b/chatkit_ui/src/main/resources/base/media/patient_teach_call.png new file mode 100644 index 0000000000000000000000000000000000000000..f9291485f10b5eddbeb0e8f5bb4e56d8daa97a77 GIT binary patch literal 2703 zcma)8dpwhEA76;lLq%FC*)#PNu@l3_2s2hqT8ov)4mW1Dd$wsqq$3F>ourc-qU3Ew zPg(Njuu#sYtbDF!Az}$b2teG}AQOO*d5lni3NYBwk#&GG z1fu;Lhej9EDeLhpkcVJsd=OHeK#f+@xJm^K78el1m_R6pPk;~0E8s8=n*jI6Qcx6u z2N1^bju8TzVti<<7%mIPhP%4JoTYd*0S^!}U{YQLUxb$u;9q(1>b>R|35R`k5pxOf zzmlR;d|@7-5P)G3_BJfEts~3BG|0q2V(^Z|=^u+Q4Y#`pFX1T$&9 ziMrG;7Wd58CTVH8&l^c_hwR_F`-Go~zM>9{ZOI@INaX&_l8 zjfO?u9P?UsJ7HBuU(#`pWw82QN2Y_hQ2u{9rSSAca(GX~r6B&G?^2 z(mow(v!4Ihv5z&2qW$F)1Ig|(`zBB8emqG@IsGXYHF3R=9#?sU5mPt!eRN$}<<-Cp zQt6-a;IrO?Tc)--8+^Kb6KuTSaH!_gi1>*gexe!5G*j(sjBQ^W8M^cL?410T1>>rY z*zk43CwBDZn(p?^V4wVA)GbOq1vi={LN0u4H1Yms=lxLC@WPP0CJ&Ud0{`vEky@Yh z8Fk7g%fqTtZQJ^yeqiVeDW;`L(=|Q<*1&r8>{s$Zp^JJvto>F$gCK1 zQJJDe(4_Pa7p7K{ELKDn>4fm1@)0MA%ax&}%&52e<>6;ewYmD=ZY`!az)uuEXNDCF zAF7Y5$}y^~HRisZ!`$w8fF9_cIR3h1a|3lIx4hbrZ`0FEWNeT^A`CZ25pE@vPV<= zaEomxYpl9W#%k(|t$%5VoH_J~wj4+$0b|yx^73;-*Nq|Cb@fKb~;}1w7}YE;!Apb_(8Lf3H`%X$mTg$A3bQJ z=PxM>IWf^;LnV=bXM!aP&5jZ4Q3lLiik*H3haLDR^BDskiTxc^7Q zKi7J{xoUip9@6;bS=>E^ldj=fld;Y&)TN4KfL-y(YwP2WuBZ&rW06x<;YGG9n$^;dUMSCqY3nI#Jyqou z&#fKLoq5jhI_Ftb+}ysA;=O?NC8M_eI-MfT=NLrDBg~mm{-_0&~+)Umn(~(N=WW_)xE#xneoKP$!zTGShGvBBxGMB7+UETMYWEGmK*waM2 zY=Vv*V#bDL&n}tVW+`OmoN6p<;$#qY^WN0i#oSD}#NPiIr5JG{9>`5xC5a=HfsO0W<9Dq;;hqKu( z7buPXyqfycE!(zyL_+2Lu_TlDH>?j^sIAv)?nur~th?ry_`XlM?3ncG<6pwJTi^P% ziD0 z>MMiDAoJ#EhI;dJj7x@)>#5+-1&tdmRc z)w;OvWowLAk$Wmwt4ExDKd(~p=0F$ra_wxQ_whbzoAU_~*w=@>B{vsCABzeK^5}-2 zOb@*Q-5l~_Iz-+G=!561)J)Ukz4~R%UkKSP;h8DpF0I`K=`XvzKI};&?Mk!gHhqie zdGiE&J4Y`x{9#A!*ty_ax`*@>D^J?3tvT!4^CERJEzwD}Ylbcax%^-0v<$>C%`YO^ L(}!5>9=zv2b47tH literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/base/media/quck_message.png b/chatkit_ui/src/main/resources/base/media/quck_message.png new file mode 100644 index 0000000000000000000000000000000000000000..f92f10735dac858e3d8b1794d084815510bbfd3e GIT binary patch literal 2499 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 y2TZ-NSB`Y~4BkJV0Fl literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/base/media/ytx_chattingfooter_shopping.png b/chatkit_ui/src/main/resources/base/media/ytx_chattingfooter_shopping.png new file mode 100644 index 0000000000000000000000000000000000000000..744f0af74f2238a5cdbc7e1b08e745953528ad1a GIT binary patch literal 2602 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 M07*qoM6N<$g0wr&qW}N^ literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/base/profile/route_map.json b/chatkit_ui/src/main/resources/base/profile/route_map.json new file mode 100644 index 0000000..7e4eb38 --- /dev/null +++ b/chatkit_ui/src/main/resources/base/profile/route_map.json @@ -0,0 +1,68 @@ +{ + "routerMap": [ + { + "name": "ChatP2PPage", + "pageSourceFile": "src/main/ets/pages/ChatP2PPage.ets", + "buildFunction": "ChatP2PPageBuilder", + "data": { + "description": "this is p2p chat page" + } + }, + { + "name": "QuckMessagePage", + "pageSourceFile": "src/main/ets/pages/QuickMessagePage.ets", + "buildFunction": "QuickMessagePageBuilder", + "data": { + "description": "this is QuickMessagePage page" + } + }, + { + "name": "ChatTeamPage", + "pageSourceFile": "src/main/ets/pages/ChatTeamPage.ets", + "buildFunction": "ChatTeamPageBuilder", + "data": { + "description": "this is team chat page" + } + }, + { + "name": "UserSettingPage", + "pageSourceFile": "src/main/ets/pages/UserSettingPage.ets", + "buildFunction": "UserSettingPageBuilder", + "data": { + "description": "this is chat setting page" + } + }, + { + "name": "PinMessagePage", + "pageSourceFile": "src/main/ets/pages/PinMessagePage.ets", + "buildFunction": "PinMessagePageBuilder", + "data": { + "description": "this is pin messages page" + } + }, + { + "name": "ChatReadReceiptPage", + "pageSourceFile": "src/main/ets/pages/ChatReadReceiptPage.ets", + "buildFunction": "ChatReadReceiptPageBuilder", + "data": { + "description": "this is read receipt page" + } + }, + { + "name": "TeamHistoryPage", + "pageSourceFile": "src/main/ets/pages/TeamHistoryPage.ets", + "buildFunction": "TeamHistoryPageBuilder", + "data": { + "description": "this is team history search page" + } + }, + { + "name": "MergeMessageDetailPage", + "pageSourceFile": "src/main/ets/pages/MergeMessageDetailPage.ets", + "buildFunction": "MergeMessageDetailPageBuilder", + "data": { + "description": "this is merge message detail page" + } + } + ] +} \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/en_US/element/string.json b/chatkit_ui/src/main/resources/en_US/element/string.json new file mode 100644 index 0000000..b1e5592 --- /dev/null +++ b/chatkit_ui/src/main/resources/en_US/element/string.json @@ -0,0 +1,380 @@ +{ + "string": [ + { + "name": "p2p_chat_default_title", + "value": "Message" + }, + { + "name": "chat_edit_take_picture", + "value": "Photo" + }, + { + "name": "chat_edit_toke_video", + "value": "Video" + }, + { + "name": "chat_media_permission_name", + "value": "YunXin" + }, + { + "name": "chat_team_notify_invite_title", + "value": "invite" + }, + { + "name": "chat_team_notify_invite_join", + "value": " Enter Group" + }, + { + "name": "chat_team_notify_kick_title", + "value": " Removed from the group" + }, + { + "name": "chat_team_notify_leave_title", + "value": " Left Group" + }, + { + "name": "chat_team_notify_dismiss_title", + "value": " Dissolved Group" + }, + { + "name": "null_message_not_support", + "value": "Empty messages are not allowed to be sent" + }, + { + "name": "chat_send", + "value": "Send" + }, + { + "name": "chat_send_tips", + "value": "Send to %s" + }, + { + "name": "chat_audio_tips", + "value": "Hold to Talk" + }, + { + "name": "chat_camera_take", + "value": "Camera" + }, + { + "name": "chat_send_location", + "value": "Location" + }, + { + "name": "chat_send_file", + "value": "File" + }, + { + "name": "chat_operation_copy", + "value": "copy" + }, + { + "name": "chat_operation_forward", + "value": "forward" + }, + { + "name": "chat_operation_multi_forward", + "value": "multi forward" + }, + { + "name": "chat_operation_single_forward", + "value": "single forward" + }, + { + "name": "chat_operation_forward_desc", + "value": "history of %s" + }, + { + "name": "chat_merged_message_title", + "value": "Message From %s" + }, + { + "name": "chat_merged_message_desc", + "value": "Chat history" + }, + { + "name": "chat_operation_delete", + "value": "delete" + }, + { + "name": "chat_reply_not_exist", + "value": "This message is gone" + }, + { + "name": "chat_operation_undo", + "value": "Recall" + }, + { + "name": "chat_operation_pin", + "value": "Pin" + }, + { + "name": "chat_operation_unpin", + "value": "Unpin" + }, + { + "name": "chat_operation_collection", + "value": "Collection" + }, + { + "name": "chat_collection_success", + "value": "Favorite" + }, + { + "name": "chat_msg_undo_tips", + "value": "This message has been recalled" + }, + { + "name": "chat_msg_undo_edit_tips", + "value": " Edit >" + }, + { + "name": "chat_msg_delete_dialog_title", + "value": "Delete" + }, + { + "name": "chat_msg_delete_dialog_desc", + "value": "Delete Message?" + }, + { + "name": "chat_msg_revoke_dialog_title", + "value": "Recall" + }, + { + "name": "chat_msg_revoke_dialog_desc", + "value": "recall message" + }, + { + "name": "chat_msg_dialog_cancel", + "value": "Cancel" + }, + { + "name": "chat_msg_dialog_sure", + "value": "Sure" + }, + { + "name": "chat_msg_call_canceled", + "value": "Canceled" + }, + { + "name": "chat_msg_call_refused", + "value": "Refused" + }, + { + "name": "chat_msg_call_timeout", + "value": "Time Out" + }, + { + "name": "chat_msg_call_busy", + "value": "Busy" + }, + { + "name": "chat_msg_call_completed", + "value": "Call " + }, + { + "name": "chat_msg_unknown_type", + "value": "unkown message" + }, + { + "name": "chat_team_error_tip_content", + "value": "You have been removed from the group chat or the group chat has been dissolved." + }, + { + "name": "chat_setting", + "value": "Settings" + }, + { + "name": "chat_current_user_name", + "value": "You" + }, + { + "name": "chat_team_name_update", + "value": "Named as " + }, + { + "name": "chat_team_avatar_update", + "value": "Group avatar has been updated" + }, + { + "name": "chat_team_extension_update", + "value": "Group Extension update as" + }, + { + "name": "chat_team_intro_update", + "value": "Group introduction update as" + }, + { + "name": "chat_team_notice_update", + "value": "Modified group announcement" + }, + { + "name": "chat_team_verify_update", + "value": "permissions updated to" + }, + { + "name": "chat_team_invitation_permission_update", + "value": "Group inviting permission has been updated to" + }, + { + "name": "chat_team_permission_all", + "value": "everyone" + }, + { + "name": "chat_team_permission_manager", + "value": "admin only" + }, + { + "name": "chat_team_modify_resource_permission_update", + "value": "Group setting permission has been updated to" + }, + { + "name": "chat_team_cancel_all_mute", + "value": "Unmute all" + }, + { + "name": "chat_team_full_mute", + "value": "Mute everyone" + }, + { + "name": "chat_permission_camera_desc", + "value": "Used to send picture or video message" + }, + { + "name": "chat_permission_micro_phone_desc", + "value": "Used to send audio message" + }, + { + "name": "chat_permission_location_desc", + "value": "Used to send location message" + }, + { + "name": "chat_speak_too_short", + "value": "chat speak too short" + }, + { + "name": "chat_read_receipt_title", + "value": "Read Receipt" + }, + { + "name": "chat_read_receipt_read", + "value": "Read(%d)" + }, + { + "name": "chat_read_receipt_unread", + "value": "Unread(%d)" + }, + { + "name": "chat_read_receipt_all_unread", + "value": "All members unread" + }, + { + "name": "chat_read_receipt_all_read", + "value": "All members have read" + }, + { + "name": "chat_team_appoint_manager", + "value": "be as a admin" + }, + { + "name": "chat_team_removed_manager", + "value": "Dismissed as a admin" + }, + { + "name": "forward_dialog_leave_message", + "value": "Leave Message" + }, + { + "name": "chat_pin_message_tips", + "value": "Pined by %s" + }, + { + "name": "chat_team_all_mute", + "value": "Mute" + }, + { + "name": "chat_network_error_tips", + "value": "Network Error" + }, + { + "name": "chat_pin_limit_error_tips", + "value": "PIN Reached Limit" + }, + { + "name": "chat_revoke_edit_error_tips", + "value": "Time out" + }, + { + "name": "pin_list_unpin_success_tips", + "value": "Unpin Success" + }, + { + "name": "chat_message_copy_success_tips", + "value": "Copy success" + }, + { + "name": "team_history_record_tip", + "value": "search message history" + }, + { + "name": "team_history_record_empty_tip", + "value": "No message history" + }, + { + "name": "chat_message_ait_select_tips", + "value": "Select Notification" + }, + { + "name": "chat_team_ait_all", + "value": "Everyone" + }, + { + "name": "chat_forward_limit", + "value": "%s limits %d messages" + }, + { + "name": "multiForward_exist_invalid_fail", + "value": "There are messages cannot be forwarded. Can it be removed and sent?" + }, + { + "name": "multiForward_exist_invalid_depth", + "value": "There are messages exceeding the merging limit that cannot be forwarded. Can it be removed and sent?" + }, + { + "name": "file_md5_check_failed", + "value": "File verification failed" + }, + { + "name": "chat_multi_delete_limit_tips", + "value": "Delete limits 50 messages" + }, + { + "name": "chat_single_forward_limit_tips", + "value": "Forward one by one to limit 10 message" + }, + { + "name": "chat_multi_forward_limit_tips", + "value": "Delete limits 50 messages" + }, + { + "name": "chat_multi_forward_failed", + "value": "The system is abnormal. Forwarding fails" + }, + { + "name": "chat_team_at_permission_manager_tips", + "value": "Update Only admin and manager can @all" + }, + { + "name": "chat_team_at_permission_all_tips", + "value": "Update Everyone can @all" + }, + { + "name": "chat_message_empty_notification_text", + "value": "One empty notification message" + }, + { + "name": "chat_message_empty_tip_text", + "value": "One empty tip message" + } + ] +} \ No newline at end of file diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_00.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_00.png new file mode 100644 index 0000000000000000000000000000000000000000..5577f2a7d619b7f2271be174b5d3940d242cc4c4 GIT binary patch literal 1889 zcmV-n2cGzeP)XQL9#zzqn^~F$@=#vRjUwBhK ze8NNu6dzRRVj_){+O3HsR4FxWL`+MIz-}YEdpYOsZrPdLnc11$ZE4eAJKf#s%$@t6 zd*|G9&bZT5*AC|*jp(GC*C94_`H=&% z7Mw?+db;6uznyK1I~E-8y6trL-^WZM@Ht%f4vF=CN6)zmRNuGxYdD{f@M!z6$&CZ@#Hgs zXrxJO{w`p4km)n5hMq-apymdp5bkefzt_~hm>VrM&d#DWwhLSD=u-#G4>4d4b!9!0 zoS`NoSJb$L3&LMvZbHMAFl^p zA~bHOKx^|lI6+@l^GnsV)z~Q_(aL`PKT=v)J-a{~Y%ucoU7YIrT~&}7p9rc74-SpN zF4u>~Q_AAc4$AVTv)HL!+7q!Qmg)I*B<=po2K&tzxOOY;{{CyXVH1JyvJ_uCRj`n+ z!Y08`7`eiztkBf|u#J!}>vw4cD@S8)8!J62-CEnioN$|OgqLbG>AJL-e}W-R1WV~i zaOJ9HY4_LGlw&r_0vj%u>&4_9TEQ-?fdiVi)}&OlVs$aLG*rSajTu8edvoZRyU&XbsXB%Ht+G3tY);2weLIq0qw|lqLJc#;%6MC#|O?L>0N-j)_$) zJD~~cpI?cbkeKC&V>^jA*U=lTyv^y%8j1OOLTAu=k3sI4wjR+-;dt}KpO!Yn6o5;t>!O=VVxX(PEFf0c9mcD544$E-p}?^`e4PVN6k3 ztd9kaPX@_4hm|lcJ1rAXb*TNQnXXd+6C|an24E-{GGNs-T#q$v5y$LFh%U(y=fiL2eDL#=Owp1O?D;H~{u;eOUH$$fMs5rs_+S#_xBsGTSp6?V`$G?m z2Z7})s!+7F1cg*y*@`tNr;XoNK3h+p$vvR{f9mKy%{k?|MO z8wtJWu9F9G)VC93w{o4;m3VOP4i10Vg!5l(r;aLD6#Eer&!oRe)7dn zhQkIwbKI>Px9?J~kH=+USiATyu9G;vdB6N{LfL_IlrJyBryn%K1jA&!@yvro!oIxoh>r|ue~<{% zc9^aGFb@yi9v}4qQ`5Wu-7PaBdfnPG?0=`x{2*TJ!gV&mdP1C6?6@Kq0d1;8PrkZ0 zKeNqSEW0sd+LfovLk7qzt$V01Sk5N)^o`)$g+XJd-zH1Qt78L|K~%&}#y+v>e23M6 znJ;STZ8;cUac2sP?dcm;(=THVg|kp@)ooj=t)d}SHAvwTn{v3QWxC{;=mVLa$1TqD zOMg&QW95dh$coj=P)AM;XD%}ks;Xp1EMq&YQH#L@4%Ms%TLIk|^y^f-pL z2}Q-&N8_#K%AI7KEj{EZ)kS2;B&sp9 z)Hn-|yTOTACi~^XYVk|>%eWhwuNC%E1vCjmQP;qmH$T$G(Np$T&T6#&)Z zQJPfeO%r@rT`TF)P$Dl;Y~GRU??24smptkyJgSOaRm5IZ;-7Ni0+aDCdHj~|FL^Am bz&zs-EJMLMJqMPS00000NkvXXu0mjfgYSZF literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_01.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_01.png new file mode 100644 index 0000000000000000000000000000000000000000..2bf68732a599a5c13ee6bbf489c3dc67f57255ba GIT binary patch literal 1825 zcmV++2j2LJP)3SXiurj7?}F3n0a)3yH5ro5;-R_nmog=gxiK86XpW1_$mr_uTWp=R4o| z&SQWz)+i|iiin)-s=(r6BSfG9LN-F8g09v;h>BDO%%y8F2Pxu^$vX&z;-abl35rC) z1uK!smiJwCODVSh+D;lPj>w$NXX7tm`>k~VMVkiK<1s74M zo)H9t2mQ9VXTfRH?V-1S6w8UgSp=S+5=}8r{oIpad9$k#!Ng^9IyG1cBxVr`M!d9k z04|Y}o!tl|MpjHLBT$P(Vn*KTaBW?#1j~tN4-)b`{aS&QN6^1Ba-y@x-AxWrVx>5V z)rTaf*(+KGdYxo;Bv_7j9-;rwVf7*r6rYQxfeUsSZ3WA*t{SXM%wqNP7|BFL?EEcm zmB~_YYUoK!+Bv8f|Gh$d>LKPIJj3+t0$#p+g@wm2RNBT3<@8gAPowW+%jUNX@4t8d zDSo{=MfbeSyN^E`-rIz&bsJIs`Z`#my!Z2Ft0Bu;@I>cXt8tbqckTKtZcNN8(N@$` zg-;x6Gk6Ga`iD{Vvg~MWsYXY8y?P0z&^Rqx29KL1hs+X`Da(YZ*x~Cl7`irXD>Q>? zCFzxymD#jhnlXB@{1e?>Pr|nvXOcKd(cgesC~Dfmay&Xh$zlC<7I<-JN@i@g+0nx64kbm_qe%SNZzzM`&xV&R)Br>slJZax$D35$3mWC}Aj;X=_P6Xv;h6 z(Y@ca{}i2l(QR2L7}-^8mQ7&st)uxDb(lG;4BVfVvsJC&{%ko!891*T!79*5Bp#!5 zppf%WA1%+aLl!=m&ALs|%y(ve_}vcCFm7=PTJcaj}qR{6gIR=KMV;iUqO{`$D$9=CadDE(o{~Dxe z;+TQcVRQY2q9Uh(idk82P=9SD6W-%3X3q&ebb>oB!z7NjgZtmT`_ELR*`d@sS)o{l zvY->3>$H;cDFWU$Be+6bF)}>(rI2N*okA<3 zBlK^MrX0bkop%{S=@8Q|+2)VK5~J`5d)Y^twI?@7TDJX%7Vj23-mfhRGI>RRF+a2n zh0f8O*wqG=o{JO{^H|E`FfXFl*QSOQ<^Oeq01IUJ1@YSSpL8FGmaQ#YD57eDFGB0= z1+!UG01~rW^{|5%+QzW7j?A#&%F1&3%zY&9HtLVK!88pJg-l*|IEm2BBb!)k!}44RJoP6G;3{zixm}cvXWp z$R3erW~ylamp9*169wO}Dc9MZ>~VJF;bzAHGX9^jdf_1BnAmZ(&n}~*6%Vm<@H|Bb zzMNPQA+e&@iCD(fu#noXjfiqZn(Yz&ej8-#jPwr^( zcJz?9R9_=U=F@w7M5=SvGWfCB+3$Kf>uJ?ew2~(b1e??2w8Zj}3K>JeW-nqH|Hp^b zIj+T@(vyv1nYmPRS4Ry_+*cEN;ZDEwCdREsC~(h}%i-4xUAS(>h) zM2^zjysyyTe^|~hc{I>iUXyyNNPS94V#FNP;z{~T9)A`4OCD>iQDXcLz~SM6*F23^ P00000NkvXXu0mjftJ-N% literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_02.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_02.png new file mode 100644 index 0000000000000000000000000000000000000000..e8a4bb987ef3e89066fd634e58ea963d23452703 GIT binary patch literal 1954 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 IM6N<$f&kXUg#Z8m literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_04.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_04.png new file mode 100644 index 0000000000000000000000000000000000000000..b7dadb206bf2fcd0b3f1355399853ba26b0dd0a9 GIT binary patch literal 1835 zcmV+`2h{k9P)eSv`~q%GpLCsE);=<8)AXz#zeF(G{!_B zx`ISXTZ{`z2Ln`v(!oTMV$wFyh>O-1QHIFOT+VqjQ{MNyuXcu}KQeUYy*KyW|2yZN zd+x^o3oJ0N5ST^ePWouG>LR|6R-_0-qpq=dfsq`D*9B1j}FB>k&y679p1j=5>>1e z2T^=T3Yv$+hVDadE_NkYUf#Zk{{Ixki$qksCK|er<-0JiU^&oUgOb!Jik~T@Q_W)Y z4{@i99NVzk^(>+Q^=PmJBKo}?YI2M(&OuAys8_^JB-hd-vXb^j#Riz~DG0NwAi(#U=Rgy%zPaAO1_+$G*cqnvPd4 zDMRblI;^g(RNp&bYh`N-3$X_d^z;qm?D-OOvfA$JwpKP-*s1OE4L|?xGRFVBZ92!5s9RNm%JMQakULkcaOHls@Vzb$-o!XH z6MoOl#p<5>-)OY6HucSSDvW~+vtZ6oc|>A>MSlF%fX=FH#g;9r)Tf=t#R9{kd(K?P z_0dUP6XH7TfAcw1Q5!cQDFfToeNcPIEckLOwO!GqJ;nj#2#M9gLb*K!bzQIIgmXa4 z!F71+m5ttc7Gl;x=_%&l@{@oZsXxG_Izt{lIZzVp;wSX43} zR!NLqSzf%sh%snQ=NlohuvcHI#|;WBTesAjf>GnfYV=aBZOntMx-t%eTownN=I3io zmRq-G8IGSedw{2IF}Hq|#SpaGPST%t1cY7n1i30lT)sgwS&jpZ-?G^4Ick^E1L23f zZR=_;Md-3Ey@k{AHX^~7o7i&v;)ok`{lK<3>95hA^Ub>`Y!&U zK?tX(ztGI2F*oK)wUJnl8I=~(TviUnp@P1x%;V#WS8mLFP9&1*$S0AwpLe{=mThYe zBv$g~7rT?Tf_c`StV{t+c-~gPL&%?L{A*dR%|Xtj);_%qTh>3M=TS3`>?uzp8PtShR&9oOLd$saX9F{>99A5zk`Rfo?(<7n$R5K{{%p_czOp- zf$lI2KJwj5(==3(=V)x+8TRiV=JH1#>!>fU$=p?B{$?ir$EX(5*&liQHrqe)SYUy9 Z#sl5R{su=tovr`?002ovPDHLkV1i8rhVlRa literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_05.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_05.png new file mode 100644 index 0000000000000000000000000000000000000000..a4e175d328a9d37d8ae9f9ae925d3ca8527cfa7d GIT binary patch literal 2326 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 literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_06.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_06.png new file mode 100644 index 0000000000000000000000000000000000000000..3e6af8b9bd6aca681f5f953af730ea514a13bf15 GIT binary patch literal 1864 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 literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_10.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_10.png new file mode 100644 index 0000000000000000000000000000000000000000..299f7a7781398b661f11d4d6e3b119a444a3567a GIT binary patch literal 2050 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 R9cTam002ovPDHLkV1h^g_}l;h literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_15.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_15.png new file mode 100644 index 0000000000000000000000000000000000000000..c0de9f4c95941d81883f130ff3b1b931a8b8dad4 GIT binary patch literal 2267 zcmV<12qgE3P)NpWSvdef4qRPlnL5;&1uoHmteh)Gh^DoqVhTQz+M;Iw^-6hoCf zv=uJyLt8ZxhD2(Wq!hcRF9?jS7$b!Q+ihtJsAj<=q^Vuo$X=p)cPHn}{^Z`>`?u@$ zkB~pvd-u+rIWylqXU?4YSzsBq&E5c|G!rPI`ImV)Mz~WWqDYKjO;RIjaR=R{b((-ed|dV<9JvB3B!QjQmjtI+lckEqkvQD*|gqfCY3Cr_Me)_Z>(B~WH zrt6R;e6z)~yVDab39F&!9&%8N3`zQWd&aqT6A&(!Ye#ybwT9I=yExuhi+_H+4r64} zIiUWVCvN$*38sXVDKBtPVTQr*M&t^2#NDL5H`j1MqytL?*Z;o;IfBjlA#H*oVHF=k z)ME*N`|pj}oCzbHhp~o**o(UaQc7KjnL#){450~21`_3-G2{vXd0l&-sbNoa36YJ@ zZfc7zB1cH!qJ;zvG6@UmIDT6we6{2>a)H-1GwBkuecCh~VHIdB5oe{v3fBytF8u?t z1(or2_`jv=!ya7@wcwW9n!x3eG2Fa$8{s>%@D>%IvZ4eJ1ab-%GGwg_l;N?8Q@Bpv zy5C`lxzpE$M~cr8r{W;g8d)5A!Vp1ZiSdarj{b27S4PG&o|Tn)@xu4EsH+p){9p=i z{N<9NEGE7CsW9$cIffG!vnH=AjGZgH@L0*IM2gfA)~Qpz(|8mv(F}*+1|E9#Ji;H( zn&$Bq7T_D(*JJC(Doa@d7f10{_a$3dFMNM13hxb2xcMO7CT)jfUWBC=YYT4R!NPwj ztukqR%CJM!c0ZfE)oa*=wQva5tQ}bfKW8FqDpo2pH^LanI`)?3Vq;3yq2CPXfM0un>M;_p`(K z_ePb58QixjNqcKZd)mIr4I3qszjAF{^-0curhf$6AALY4t7l-uk*v!k<0?6`QF3N% z5ogYgprI~c-`M0XhaurC5d6YwRUtRhDi4DRb)UY1vQ^%^$a>@CCC8319eStrZsTAs zo_dMntk~4OEqRmHheZf?IrM~Mate1FL}G_B0X<fS~fTCCbB=mlmnolmlJm*EC|zPG@?;hVU#M@l4Wp1 zc<3<-3HfELBJb=i^yt!(<&qdDV)1JjPQXLsqjlBlC0oKXt+QGkVcvNsPu*)ZW8ycR zYWNBt!ZXQkZ*130D*Qn{T!V;PiN+LeP+M#W_lga@7PBRWL>~#RhXaIXCh=VBpHyQm z|E&)<|2>R5)04P4GNh+(egmDYr+qE^j31Tv2eE4PTCAzAL1o|}y!^x3R34s5SwKR@ zy3!Lf341(;$*fyVgs8r%#hbrvLCep35UkTLl#Kr;gz*nUsqc*N^ptu@TCkOPi{n~i zg5F{uis+xeYcY1~8rpucO<%UqCT{W+WDquVC1loT&CHrj^u?c@rfVdX#*Jgr1@v+sw9%gSAN`J6;JEJNnKg95{bhqrW^dgBd^hQ>uJs)6G z{=v65r>2S-kQjl-U2Aoc&vL~>6^y!{psy1~&w2j3t8qOR0!((-*S}~^mg#!j4R*&C zZI^h&mpX@NU8u$EIZxc3#k9GDham2=+v-e*Jq|MVoAp~Q9J^3*Vh0i@?hKJ!)N>jO zI|cXI=bqj~0gq`2No2)AvH8#WKU|t1{gPQZ4oZ6Zuc786NbvZVWL*iK7hNx8Mtfl)2-)qxXQ p3m2G7{K(_4+5E_38OvA(J^{6JgN&(q799Wp002ovPDHLkV1i~MR4M=f literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_16.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_16.png new file mode 100644 index 0000000000000000000000000000000000000000..bdfa1b4280de972ee9a80048b9e884088ad47a6e GIT binary patch literal 2342 zcmV+>3EB3EP)=45z zopyJ2W_G@LZ{B47?ajBU||m2kGK6$ATSPnoI#v(tzVMmAuXx(D~i(R zbuwHL-u>d}792s71k$f@5aC?)eNqC}6%E7s6~nM@#fZ4BRK~=SFq*6o$1yw(-wePf zH`l@N>^ewjzFb|4iO@jn0nR#(@2czuhsa5oB#9kA#x=eV97vAHY`fzW+*AA^+>1Xi zxIA+YTuju$h3Psm8M(n@NTpkr{p{FFH<~BJ(gA5Bj(UqtbvnsE5|ToyD}M0M|#Cgp~< zy_xIWlJM@6*V@nswV2D%AhjOfQF&0D_cr-K(+=Pa?1QBQgTo+A9%8lK@!cm!Y5a## zFppW(Z2$L;ibpb=n}E^{s+u}v(E-R`$z?Qa{GFyS$Z9*zKoD*PI1GUzH|&kQ5aR%4 znx=kfRclt7t@>~CT`_&3WUhs-CI~i2u1bb^@9$bbQlqzwEP+7?RCVzAAGhq&wAm)R zYD!WGW|UJvxu!}N0!jHH2{ zB&x_aEL~GpKa7#pK_)?qmFfSMVnWljL;uqT_tNz=x5hp5PMuzoq#-$n3;tugX7>UR-mHH2jyk%e6_xP;O-ydu?X@&hFTi~ z56nX1Vh6A2JbeYuyg4KWoksor0cd=Zp>hb^RVvO=Az*siC1Dece)xQ(*R7@Q z`{1hZn_C|Y*}5K*;_JB119z8ZObS`?@rh|@_+`k}=ce1&;_|4jDhHP^?3_%58{5Gq zk98ZvK-j3#8ov(94Gd!XOS94HgXIN|X{vsGfyrp`+m9X9k3Os`-gyw}g2u?Im+zW{Stfo|p#k)ZcqB`bmmw^23E9 zo+f&(cVs>~t61%W$NyCCbdQaDVYv#mHl{DM&RV)i(b7)l>F3^>CrzLMQGifiw-zI% z3diJ$P$r5PoKANpx`#z?#Xg&+3JY1!LiAlQqG=RdB6AYg@TEHa44aQ!&(bXoL9z!^PDisvOnw$C@BFAvT=mCYT+-*#9GM-fN&(ucvrdz4ozG|BJrJ(e-P0S?{IA*P+7VE_OC M07*qoM6N<$f~xgrhX4Qo literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_17.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_17.png new file mode 100644 index 0000000000000000000000000000000000000000..77b052dfe26695e8462915c40961e44c77657b88 GIT binary patch literal 2602 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 literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_19.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_19.png new file mode 100644 index 0000000000000000000000000000000000000000..a9d5a6eadee2f2b137a0e00c37fa2d7b1e62ba42 GIT binary patch literal 2234 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 IM6N<$f)qR|B>(^b literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_20.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_20.png new file mode 100644 index 0000000000000000000000000000000000000000..f785fa2a6cb54ba03a12083e3208a2439f75f90b GIT binary patch literal 2338 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 literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_24.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_24.png new file mode 100644 index 0000000000000000000000000000000000000000..6cbfb6c7f07939ab514ebc2d183183f1ef9d10e6 GIT binary patch literal 2504 zcmV;(2{-nMP)$?ktX%5WIj1yX{gUK>)M4fkxm!t5&KFv{KSWtyCpyesl=|(l%8$AX59IX`0Ze zQh&6hq`#6zidho164a(r0f8M1X(C}#+dy%QgN=#tf@irs=f0Wo+_%n~85=3$v&L`U zefQmSzI)C+cOBp^?&4Dgfk}isyR8(_Xe~rw1%#}HL@A|KL5NZ#1G*DhbVG`E$oM&g zLhWK@(;y}Zc_*w$#^cXG%6hu3M|Nl-)tV3t93=AH$RqMbSe|L9C(G?d_9UIqM3uKs ztUc0#JRoPnlStHzW(0#z=4$b*2`5~4H`V?QOeF+fLSX25v9cwrcAgbsd3swdg0Z(K z=v3iOK%xtw;HGS>?VGSXyXD)6$(QMCsrlLU8zboG>_nBV!Sq zY`cPy(Fo?vnT{D{MVLQ(x~(eow@a)&{4#vN7h&1fKrSryz@*@@e|M6S|5HTM(Xe?j z8o%%W{NRlv|Dp1_w6uz{Vl1wyKqHmM-_up1__0^4KC~AZB9v)HGg&5jKvW1B?XJMC`exe_+Ip4i!BG&Yl+ zOrmx;ac^Y4z@=4!KsDmi ze(6?*BVpyri9yAco|_i3&px%z95JT^Gf3txlWZp4(Rtmtk=UU|e-3cAa5(yE@+$|a zB<>{HB}!8WQ!%`}Ncn%%6Rq8VKBJvPm%M?|y5I(uMV69n(8{aLZ6(52dHlzDmO=Lt4oJso|cVNK8Epy&v}w%#L6DQ*k@j( zyw1%)hG$}I(TkpBRo;S1j4ybObojbgRza?3naNoR3%M08P?q%;2D6g47yQKW`R#d6 zt2}-XseBYMa(`C{xxt*I5mp0@v|wc`X!aAf>7&Dgc<on#Cd*(&|M1fUR13`-Z)2gQw8>uHO*uh#}EFVWc|=0 zKU!7~cSwzsPFPA;!tsKc+C398ll6KQD_P=L9tYNc9eTw=Hi^^6{%TW+Rd9hoAh0|= zK_?u*LbtbNVYPP8ZOjb=eci6lVblIbhi^J&XR-s=OqCJv=qchT)3U<{M5Irof;!IB9n}gifBfl4X2cW_(ft5<8R$n1j~D0$7i8jTbaE z+Y7Tn%Ce>iuPH&(NtK84dO}J?w%{KpobybyWl76aTHk3}mzM1*FZT!lOqeYlsb7O= zt#z?oM6S{NwFRN;Z`)edn!gW49p6*KSDqN~uu*$HdK;qmI>N`>Y=fr;O?Tl!m^Pyk ziy>2Ruu#_i`w7JFuTa5^14)3=#kzOQ!6PH^SUc2n3h{Thrh+4vDF$z;tN#LTY0I`6 zVcvPCNZsN!V={vkvDA7NWK*DM8|dvv)+k7g7h1d*03?k09Y?!tQ96X2k&FE4N{Vq zyqZ<;icnnppa!_;I&(Cv!3yT1{icJv7@D{whqsPcNS3X=U{sXD5-r1-uyI&rVm+pt zMqQU?(3*^S%V(=|MRWI~SF&jKD7f0~B%k+&IG@-F#QsTN%isfcXEibf?>Rr#u+;BsuCAPf=K_GJYig%;pERUa*QdXH7!wh_%Ad|$@ruUWAnq+D4~sVcA<;bddOR<1r*4#jNUmys&m#d_%#(@e8ShdbP{461&2UzRpRWH#MHqUGKPYyvLVaJ z{rIrjK#%TE%%LaC&83>qNIakGx#@f#5Z{i8RnL5soj0OMd$;f S%tvssI9IZu)h_w(*ObeBO|4Atk4G?+x2P6s( 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 DyJe;` literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_28.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_28.png new file mode 100644 index 0000000000000000000000000000000000000000..0feb768f7b5169e488a040cb7e8e97e20da7f1b1 GIT binary patch literal 1466 zcmV;r1x5OaP) z*(q=yrk7!OBSB4@hpJpB@muf_-vsl!kuX_q8s0@ZF;5q7mYuqhfDcqHxQ0Tl#G$I^ zs43A3SXI+mU~l$7-BiQgyw^j)0|;L z3p14zu1GLno|vNFSJAw1sO(cVu<%2P-EU}3Z_;hct2>@CdL6j~ccE0^5EEqw1DJ~h zEfQ{$EG})9h!y-8yKh_!S)Qe-w=Axg92cLl_~!-ooWf@wZLlZqmwQ#{2SCXZZix;mwtmhjXjBbo&>7K8-Cb9U|59MAV2 zc@47k9y#E6uA4mco3eElRyp!iWnqCBbDapi{RU)t*QLG_$K~s@Vs%>5x!$q&`faW3 zDNrD~smqEw?T(8&r75gm<*^P+TaZME`ttMBbU)|BiAY8?IP&2!c;%DGaT0gzWqpSa zb>ZS?Bc3jx6?3F@Co%_xO~NB$i0ULuNJc}Bh_O6Pfk;(C8LqLR*tx<>tJ6xN3UW@& zAF%>aSCv-fl%`rMK49t6yeh%X33Cxli_vH|wEs++OoDSO?>vF_AyGa7z;O%h0c9_< z*R2Oj2T)DBN^@eV1uB7+*<1>FIaSIz8p!&WG%(~^~TM=QA-{@ zPGMYTZ0E4uAEG!Eu4pB$Ksxn^5&n9h z8y~#iCo{&!**mdOyA#fWbDLFKWg)E?%44bhPTL_IXG^)YnWkP7w!`SkZhJr6r-!OG zLw%rilJa7+i)gb8u7Zs~L|4y3EH*bk9GW^-Zrftn1OOYJPf}j!BAOc!WL&6Z8&gFY z4>lZ|qvU|pP*q1rESq7cex0qPu+*9gdG1U3Rk@n(!j&K|cA;WpNH^Tr490K;jTbHa z$^{y4%kJDM#@p6Iv81|B|DCRHALEX=)W^Dg6I#IkM*s|qXK7Jg{Fo*m zxVq{*rUyO0Ya1N Uy{)OX+yDRo07*qoM6N<$g3BShrT_o{ literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_29.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_29.png new file mode 100644 index 0000000000000000000000000000000000000000..0b92198bf6800c5a6e516a87d49a21aee6c60da1 GIT binary patch literal 1280 zcmV+b1^@bqP)%*(8d^QIIhL;!!Y?ax?{^WVrx#Dz(@FQvqDsfMpeEZ1FxiMB4>BB1@%NFsJ2h z8m*C+sx87aZix6Dw2`(6=DV4+SZ)rji}YeqZr%c&xtT{BIJDpn3aw`uruoHTE#9)= zO4FT_yZocFhu$Ox# zRzVnoZEx}2Y35`Fjoh3&W((X>94Ipn`#dc_o`d!rn&zvxkyBMU%f3{0jN@VQ1<&CIeJ7H~}($ z=JmAi_~JikIrD4}M`K;o=v{j48~-96M5rm(!?GBf@>+^|TR2ht5z$1ZEAq5*Q^C&q z7?ehINtZP=(%iyCvxqjHR&MCS5$?P7$lUz!Wc?$n(CS~#ZNHUrO9%ilamy@f!crk6#EBH5tf0M z6Bu|Y;aleay?y8q<};zXtYN%cd%!K&z*`7lS1R`H_bbkS9X`#R#`zD1o1V+v-o(vY z|3HVq69f4A;<;eaCD~NepzY$>+}hO^t5{k4xA_SMHvaw(x~Mv+x&%V(GNM~BQ3?T! zoPNW(yE-TC;G++R!t8&mEYo|rsb(j<1(%amq7q1}Mf_Oi zuva>S=YF^xo9XMAa5J2y?3erD?*K5Zd9}SlR8Yw-s?I+63U(GEws`?6*xdgxEc1L& z+G3!Khb9*b;urb~{f$~=TndxM6w0SXlez2S9MGDox`>FSc{=m!LYTr@iD@!&U#>*u zI+}&6K}GCRXk%zs+(`x_Tt)9it8wL$%(sD=JGHcydZwpWQa0RoedufMfBJ1l85AYx5EGT{T_95qU@U<_qn9{-K)>d5p+ho+^JUmH#`A qfANJA?pGf2_^Z%y)px literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_30.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_30.png new file mode 100644 index 0000000000000000000000000000000000000000..80e8932ebe3c8aa15f40611fac876b3c345179c3 GIT binary patch literal 1912 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 literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_32.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_32.png new file mode 100644 index 0000000000000000000000000000000000000000..bef42e33abdfb501f8109ea26b4f1df39b2d8fbd GIT binary patch literal 1567 zcmV+)2H^RLP)O`mD$tBIx08l^1y zBmzc)X-ip})CV4bghu-SLW2bpclUbE?9%Ma?#%9;nPqngKf=e(T<*+&&b{ZJd+r_J zkV6g>0$D^Z^p+zWZi4VNLdYgal+)2#2vHs@fYtb2tU`(qWONal781>4TgVcg3)V$O zqy3OFKpz8e#x&j982rAwBz_eh;+bH1zdJyd8-#O_R*ccZ8xd_2)9?V-g0m>p%oP0o zi*7CMSa7`Q4${;A0{e-;4fwXNiRNiX{oIjYd9Sw#{>TsHbZU_cBvzpLyPR0t2SwyU zPak}dsho*r1nLlpEX(^Blv|gQU^(ACh=?4eKg*GO1bq$5`JO?wf65SDtQ1#~e@Jqg zL!xzjD3ih&36>9f`swFQwv3a|~JjqD5uomgX!9XBf zmK1Ai$;IURs*|XlfB!@9=Orxu@f4NEOVH6;gL5r4a6^ddnw(w6#^x?g)mP%e`BPMP zsZt%Jr8DVJ;s-s@h(tD_0E@kT>sPw59mDaykD45do||98=y%3|iN#*I)QQsKA}Em5 ztc^{Y6K;x3&aNbhWxfqQ)*pr{&v&V{OfDrI=W9&~&nWmQqPD-Eo!zkQ`M=c!(|mv?6$vP(coL~1kG$WMmMA$b_S6O=8U+hc3kBG7mKJN4 z=WD8uL6w^7GRt#E$wQx1t#facBaSNzGd$*6(e%~{sPeW=eP>Rq*JsA;w3Ktb=ijMM zX=O)&0&$d@EZ3RpIM=Dn-uhJ>^RToEMOf6ApPi%r923Wp4Bv3~dkt{P$K9t%T*Hg{ zswzrx`O^+Z573M;(z@3@3ZLkMLwJZPAxkJmLzeJZzDt3KE1?3nMQiZl-bb_33c&?2 zC+3Y5gad4PUp8$}U!G0on zG&FvDR{zi%CdH@e#b@Y=Xj_Vy-zWR_1x@9ZJ)%MfoCc zP+qE`u1e2OoqV;-)A2e5Q{rr}E7b|>sg4UPbHp|L^_<=}IYjJww=UZP6Op|6#pX0E%{(Khim+k|7Wh9oN z`CILF@}*x8=N&t~$S;5~Rg#BrQ?5_9vnOo=K(vpAC@*vw`3(md1DR}N$|&O@+JmDM z0%f#mBnOaKF(lf49Lc1xQVc^&kXPfYa#`Jlt3X`rc*e$1zHxmsn7}Y{FPfKx257uZ zyK^TIXIl?>N%aUhG6nDLAyUs%N&knse^JCy)>3qkbMX0F;(NEeo8P1-7BXu77AImE z_uGf{1@!PY@h~)7&0Om9bct(j_f31fLHrW^+3R85o(bK<`&R&Ti$`fuoxcr}k95~c z=o-4n8Je4qc>Vsve!k?rnsz literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_33.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_33.png new file mode 100644 index 0000000000000000000000000000000000000000..a50885bba612f44e0fea4fd2b31f649c1b44d95e GIT binary patch literal 2274 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 literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_35.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_35.png new file mode 100644 index 0000000000000000000000000000000000000000..119b4642bf13f416ee91fded9c0ed5fbabc79f63 GIT binary patch literal 2061 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 literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_37.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_37.png new file mode 100644 index 0000000000000000000000000000000000000000..3f57be88e6fd8ac0d5f415e3082a9661f038e104 GIT binary patch literal 2598 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 literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_41.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_41.png new file mode 100644 index 0000000000000000000000000000000000000000..6a1f7cc621d41d1de11c253e0c002e32454f557c GIT binary patch literal 1734 zcmV;%208hOP)o2E}(9zq(G$xvH=VW2qp^vdjkb36-Xi#X9L)M zstQpc8wjp?q3R2~G*GbT@BfcIW-v3vm%(__eAejL=i)iv`LA=%0B`XYZxobY18pUv z*722l&{kX#VwSS9=8eZWbQ$R95h(`9pgAZNEfc*kBPyc?SBqZ#Jqgps*rcT>&EKM~ z+I?f_(fjB!9RFeyPHT;sQw<7>+Q4i*aqa$LOLb#(jis46O;*P1BDxSt+1IaU8VKW7 z3G2t3Be&euHNrxcO1*hflyv>wzD1NJ!h|vphS7yEZ?1wA7A#;Gq*Gi~bTtn!!F75z zde5n-skBJeO_qRyVKPw|jE?Q~z4Q2gLYX4~DD z)mRF)SK~+2RNbHS8N&4rj8SB=6K<#Q+eqq`sW{MU#My?T@J6vrcxn(b{i~TG8YJ0w z1(RHkyC;v+Gu~Gg3Zzx8|A+Y{sdBt_soa~^q$W?gRvgvo;V!VM#4J;7x$L#5O$bF(RB6 zxXwv7*vgP_G_;m!amVo!vK#_Xo^{CfUO~Q1vVs`jEx$WDRm*xzrN)_THKw)>p4$}9 zab4zWL=K6sDV%t6WdIMHz9+dfxjY>w-aSK=ghI&jlEo1e6fN$uY5XyoO7iyw1O%Sr zppa%Kg;J?+kEMFwX|t21YIay7Y$+`Si*m_RhScqjrDg&p>p)|Tz4|-?hLHa2o79}d zU|!6EWQRB#931F^42xP65i+IN^jVCvRkDE>U~Z}dQjrR#u!d2J(ePbAJo5`IU`U%mA;e*`+(ue!J9B)8)1hJ2T#Jh;q?L`M;YE6 zya^Ku2selyJqun9o`jEjZNj0p>P;Kc6?! zu_3}&mowXPn1=3zJlV}Qa(*RfNTnTgqiQqT=hv1qA2-^+Aql(wU3T-kXE&2$E}tZR z)y$BlBrN!QEEVS`k>{<94H(2{M%TsMniv*H$tuWr1y}CFj~{pzf8wi$%pFFK1d_?6&Q&gQVLgD+t8#R7pR;#W}J-$O;0R z;Gd(Zlv0>O@T95ws>BikK%kSWhAeq~XaGTg<1DAOw_EYXerU-{`=J`L60Cn)Xb+Mb z=lMzmNmg)S$wM1k2`jBk5sP+TX&P zxOiaMVax{MgvLB}5esZ&JX c;{SsG0K!9%lnleEF#rGn07*qoM6N<$f+{gU+W-In literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_42.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_42.png new file mode 100644 index 0000000000000000000000000000000000000000..ef2dadf6c9d4dafd21ffdd0176f708177f455ae9 GIT binary patch literal 1781 zcmV_C~-*vYvPMt?h5#ym>S8HUR(g z?*?HLaVcv{lR&~L1@O8Y5UA7pCqAEpHnC|0FMn-IGej|UmfQZCOQaAo`^Kj;&;}wE zeD34-q)91MliVhsdhJ!Pw!}B;O4`wf2S2hGAS4PRB&Mt>7Mta_$#`FHGqD1qvW`L< zh*Yp9ntb@)aXkAX(&%E=?uU>>CivVZqe*TO)nlhr_7mOTQ-LIeB)SpSkgq)?7F)Sj z@VWyn3#TC@kqI98>P(KCI?;E3|HJbh0!)TA>qzG?ldC;=P$>ADwN|4Lf~cL=#oA*r z>(a`K*DYuvh4R+Xj<8l28&4H)-txSK&3ZVDSw|~a!BXR?@|`=rOVn1aQqb~OM#+{( z1q;Q$ZhGB?3h8}lkw^ur66M)ObB*Uq`Bl&R!kBfWf)U+USIxTXf-jw#NiAo;a6?Lm zNM6@B>enf=?pn4aLOIP#!+JQ$@9i7sFG$Ka&I!b9WB+(xAM85tiq}VyF6oyBkJ~v2 zKnyxeqtGgvz<&PiH{r(lpXX&(HX>&2luDdIZE5z=2ysktYeN7!B3K;CcCf~XXbKvH z*21FG18==?{m%P8+xA`X!<=C!aER-d|5E1J*h;ZOV2H8c z<*c1#uX_SI%+@ELV9)$)-MI$^?@9=fGX#bh3+8z`1+A0k+&6<2Ek7*h*SU9Kz!hGl zQYd=%M^L-L5M!ssll?`4U=Yv(HtZa*4;bNTu?Rj>;_*ER9@(PnxyyIGO`0p3#>GA3 z5$5IQqG?|d%Io9Efr<1;<2K3QxSiu`ADDcOtids!*Sg~Pbv5=U<|d8q{PpsLc@}!I zD%2|&kZYVb_%0>Y?yIBO@j%6mZdA-*rTA-mrxTf%4l-%f94)IbEZo}mCLi4 z6TFU2`t_5w*ow!!;%eii$#)JfXJ^m>J#1-pR3okO56tkNJFijoLs>5b%~onbH((%M zQqXe_N{H!4&wbad!wKe0N19o7GATkgssT5%QMhy;^~liiU?bXyMqbeYKU9Q2@!?MB z0)BHi#d9t7=xI#$=upd)%iwrMDwh(-d@Q!wYTlg+RB&pi_ck4lST*hF zDVT$~>z>!OYH3G){fQl$omE>rJ%7%UXbhz@3E62fGFx_;(paT0P1w@2tS)B1dKT z9s*({cx{xsm$Mo`Y;|+3R9k}8v}Q9|z9j|GbCs8(z0d-Il7~2w)S!%`nhvqTJOA%O ziv$uZrp=-cM<`lqU{hfVhk?_>s%Q;#8a8@Xp>wcT2HC|3wC*<2Qa&uA2Pe|w?8qkg z@EUX;lKOX1>ClcdbO&$gvI2LAkZ%2LgV1XygGGd1RmC@P2of;vtmSpgUPg@_ Xf{3uc&}lfn00000NkvXXu0mjftJ_Q< literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_43.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_43.png new file mode 100644 index 0000000000000000000000000000000000000000..77a79e890b2682baa6f5db1376708d208c3d82c9 GIT binary patch literal 1625 zcmV-f2B!ImP)|Srae9Q1%M+lOIehUV+OED0cuWQ34x7 zHF14e!LsZYS~}-=o@vi?+MSm(oteWVyT4?Z;q-KvKj-E7pXUs~3kC^OdAD9GO#)O* zs(kPYfSqw4zbADabrj6>prrZ^1|SVGY_++-^I3Z^lN zMLOqC>}#Wthw`nrVe-Zeh=EF;YU?r;Jq6>q#T!9FXu1wD!sjCLzDz~K^A0!@hnmBK z(X(0m+Unj<&UsnJE~8!39?xcHFwQA2W8JRf+8kW-1A9yH=9^NH!&5K=Rw6Mg&P-1O z;VsMh4|;ld1aW}#!bBl2CD?lmllZ$ccH{i~93+8JDDa4~5h&UKgp{r!(`9cLHE z-XO-ho^g~LhFy-=ymk3e0Fwd=-t)V^Qo(3A1SqC_>n%%&b8JU|5W?1iDk&3;Ti*Pp>IEIx8cA{ru>B4T5f^4QT!On4d*=#=Nr{jWT z4c~69Yz$}1B_O{$WAGu&uB;5r%5L<`NY^$c!fXgLB8&*0HA9EO!orf@{gesDFv8uC zwOT^3g&+U4&leCSJH(*78VKszjw%F%UYWiYQ*9jXJl~Dm&CqLjU$QgBs^90z1Yi7n z0#E;V1W^#(Uzia4+@BwCnaOAW3N97BvLQ+YV>f;JXdo6%2f8Ed%6KiD)8O25Sfheu znFLk=567iMaQnaES$Y25+kul+6e!iJ;2~H^SVF-9Ts$Nx76R7BN(56!&dSK=A!)d$ z_HZz3o7F{k*tZaxe$cBiRj%12O$j#4I+`gB%;7cBogn#zJ>7bluBcc)c$gMDO z!J`gqif^2u%fg2zx?#6c0$3B*=)O~;f^ov>^8B-4c4c|2O|x<7uZcFGt;uMJ)Cr+)T^yy=F`y^*N<&`mtO6 z#9J62X!f0DXg>VaHO1pZm&n+&s;+q-@j)&tj+Fty#|r!7#3i+er4@FD?QtN z*0PNQ{xinNYA~0A2LHLuOt$UTjh%RJmolpMz8cS~O-bS_xIY0%j}M|n zdqYnJfnJ(2_7zB?5%vkBoIt_4N$-OsxIcSTuR)p#6ukV|<{l3fJ0J(foK$yfspTPM zWE&)j`lfBtND0nrbPFW$OM<5XDZxwJ$w+r=rp-W#kDFmRS}$A9cdui~7lu%RX<%p~ z(!Tq;2-m{IS}q<#FOxBJ@LbZDD|f#54pPooNt}akYE_Lui4v`sui@E@pj^^Ru8IEv XmA$72{`{}F00000NkvXXu0mjf-tYep literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_44.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_44.png new file mode 100644 index 0000000000000000000000000000000000000000..eecb3d3b16d9f81f2ce031aca56fa41c3d8e16dc GIT binary patch literal 1712 zcmV;h22c5kP)xQHP)w(t>8DOVcM2wXfqv<9rWZo{0KGgx z-4|$JI)#v4Fr-aOhKmRRY-8+I#6|DH7f&lv7~iAsuv+1DW0UJePq46RE+H6rF_xqiyh(@XnxPFz^f{ z7;S@#7>YC?KwpLgqirx@RLkI`qirxH{4IC}&@vbW2YO(gvK-hpBpAIGW^@)bA;h=~ z2}a9cO5j7#gpx|4Tezi`uIlG4(8HRZUl@i2)3SxD`dJGOd=(OoMwcdUfG(W;2ni?9 z;Ek_u&4JJC$P3Qc)7`=b;bEqG*35gkJR}@nrxns!A(lu2$gBq={D^a~s$WsS|1m4V zz`16Kys_WBfbW2es%k8;jzAl_^_&*cqv|}UFA-Nsg-C@ddQ)&&45@!?9 zF&CC&Kf&?XFSgC)TLsa(@-}7Ph#r#yJM}lrKRTh>4ZsRL0PF1}kWs z_RwGMf3bLT>iwmrsNw6S34r#v2;#}ZhZoNjEz>tT0;z$^a&x+}0iA%o1}mw2d<>6w z9=Ml>xoLdoRle&je73h=J05)LMd-US>RAq7n%OpRvEd$j2Cr1)F{|El@8dl$F7@}R zr-_Yr?!0H%KSLy)80dpe&@Pv16@)L`+wgosWzr(AUh8@b ztI!U+Z{4$S?3(=$matjNP~aF6+_D_By41JHYA#B=5ri__{&r)8Wx{qGS(iC;yX?eF9DHLuUa zVlc){)mXEy4~DN@mE99x)@^w#=e|7d-H_8N{(8WR2M2kt8?hLCvb$S5#_l(AeY!RV zW&CwD@qpg*RFUGG*H?s8bR&bF$;4O;t|$Tom6nFX38YD+G*^^0m0j>0!(9zaUXTdI zhaW-7#8?b=y(m&?kegj%&F@Am24k3TDas^(w)1HR?q*56h-D1pq=D=h(#hbqx4sUS z`WzkX#!gp;stEw+{NlPULQ?v+a4ZJn%MVRt!1~=u1YrEcxZDm+6{4szyoXNFOH#VT zHd{jRfim;SKmS4}v{Ga2yt4Y*$DjEoFJhe@q6V%%H);t1ob0;-qz$1_!#*zuF6PB% zuvA+f0;F*Y=><;qx!q79ilnS%LVJ6le{3vp^&>Weam=bMrfV!Bg^GWcQiU^{{T%o# zhzWJ<^@#DTYiwA892OFr!9g7+tDotyKYErxjHqUIkYM_I_KhDK5Vi3Dr5NI$RYTuGm0K(R)OSRwQbTJhZ^y zOQRl*ZY@oMjta%c@y_3Y<SA#?RB;`ZN!=TEmKgXYMOV zggDRWhpB9?V81W zD_x&o{D=`Y!JO9Ks(w*hn~23+#MZiN)HK_9)*<73>6Eb7{eIryMO%?p{;^gCZcqYg zMyST01vIn&>pIwH#i7(_`Y1g)5$dzRSOF&qVSc^y-10wMzP$rSblG+Q0000-e25=rbW1z38Eoa(J`($t?9rI-BKfnn70LM%p;%Udm ze(H3R6zKHXf;^{#{E!+*jO2J?;*1?(^AUu#dvneeOIFhE-PITJO!D)r#qJ*M?r+bz z=j&bp{LH|hN)XdML3qK#aKM;j=VA%iCsdE{r>Ei|AcTJ=VO@WX4ae48zw^l{`UvCJ z#D4$3+fW2JR0|ohgrNNACjMz3sz*fd&uQFliI4jtPz0(+xB!TMp=Q(U90)eHcaT97 z6oDFe$$?`X|JOUf(5|9Y>>d>>nRdF?otYDXmB}*s^;W%nk)NpbpA@i6a zAW{lx>5&Dygxjd)@Fe@g=hvVFltef>8kVNJqig+OA!~w2FW;D$f&wAOt%lY| z&I-^UbT<5V2KOTvd*22_pJ0EC#Z=EFK7NNj`ca+|lk>PuV{&ooNEB z)DC>VxFoOC($xi;uU7T-gpo1^h_v`;PY7zYF-XJg{mn3u8`42o%|DK^gXRkY6-jQK z-W}^!D-!sk`f^`XL4@z!m>A*=^2Ve|+R$}qInfCR{C?GC_DItXIz0Ml-VuBy=Yi$v zT+*4ijB>h0S|n}u+ukJ;tMkH_E8*zHa6bnlYyhkse(U7%8oz(YPR>fYsUrk+&B`Gw zNq>7c76PUR4|TlJ>}w6)bdZg+wEkY_U&f`TFbAh+Ua^F#T+HD%gTv&u-I!Mrj*h$= z=AccR`?Z09)SwfHbn>hFklxyor0ZJ`Im*(D`F?R($}&xZBYi!fKoUt0z7d!u(j9O> zTgf>;hbBD_8|iCqj!j7zJ#ZXy!c9Y48#KK73V0#nMfUkh0=C!Iz<=a0G#+aQ1u(H> z!<~Uys*=!|8E0{S9*NFiY@P#;a3qYT9O6vG?asLoAv}vGqz5mvtPlb&pLqXD(aDEn z93HqnlfaLJ^_b~_Hy%BLjc-;#1u|*>(Zil)iKquz#u!{JC4rSjy51Vw@{ww;q27JL?t8g>(`Z;77-=~MKW$#8F}t!=)uXNTr)TU(_7rQ z&^sJ)&9(CgTggfRjFGKxo^&Ph97%h5IMQ75%ln>W3rkzY!WI*QZlv=}+DcaLQ(RqI zQkj-aFeo80((bZ*$qNobH(4Th=&h6T`jpV9Wbv)^`USh=R+ZU};k-8_-?YoaQT|Mp z;Drduww&mavSi}Q2Sf{_aozf6x3o4jSnol>{;j-T?g2wE+vb=_`UPfCPLN}Bm&lVZ z{_jbaVz5`xFmMA}X#e7kiBYHXwoYsQ;+b0*;?LWD0pGG)MO0uRQ3(hvPF}MsEp5Zn z>FfU)LQU_rQz-FhXnRHGyJTWdF$|f7za32NX+9sU;n-8jRtQY#*bZ3n?Tj0Ac7@OMeiVvmR6?9+*!@8bhHhCzjD(C)5Rlu>SC& zGWX>&q;*R#>m{cyGZ@p@*}Q{xlF^ZH7~fA%!_l_6#$#4-$x`F z(_1=+e`{*E(d_S1eu8uXldPHi<4&;zX;~U>RlKU#sjqS=>w^BfF zDf@4GeXU%R9!0;Nl}1u}r-G?nGFi8nS`8Qm@3-#r>>ZwG^C`?}DHZfu9Jmz{`wWJ4 z)p6^AEW!r$g=|2iy;eEokzJ~s{e|FJNkFzq*8#OoY}-0Sk0Z+T$dckWuEd7u7hb`WFoExYrX0%2K6`XzwCbSrCa$+f42 zg~YJ6kjT0kdTqBtqS_Ft^j+(|=gBlGB(O2>*bjCqB&vjkt_xTCtOq<#h*Kf4t7&0( z-mQ?R0%&R`Z-%0v6#$Ynu*={;x(XGM3OGZlf0lc&;3W?OAI)4tP1DT!%S>7rLfp3N zcoe^sCB@6&$;-+np$SQOm$TW@1L#IV?^LR>Fk5e@V zMWEt8@*ro1k3GgSb5+IOkDSsRPLxexdOHUtpyGs0Scp?+H0a^pGIcE%Q4{+{*a}+C zh~)bjV{Zd3d=r*6mJDL3&Ih#m7V5OwVomoK{9N%P?j2fIgca0%00000NkvXXu0mjf DrG8pW literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_46.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_46.png new file mode 100644 index 0000000000000000000000000000000000000000..20c0d175fccae355cd213076469f26eebcf22b16 GIT binary patch literal 1636 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 literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_49.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_49.png new file mode 100644 index 0000000000000000000000000000000000000000..196c2f9dd50e712cdcafb487a4a0242c7c33ca1a GIT binary patch literal 2878 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 literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_52.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_52.png new file mode 100644 index 0000000000000000000000000000000000000000..7121c6c3e46d185e8f89fbf2ee13c735761d614c GIT binary patch literal 1225 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 literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_54.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_54.png new file mode 100644 index 0000000000000000000000000000000000000000..af2ab462ca32d92f7a0e212fcaa165258f1769e7 GIT binary patch literal 2080 zcmV+*2;cXKP)xtl)Esne^H1`l9sX@kn8&3?vWxS;t&pz|`W+{zcL(@Z=(CCQ-JX{kQ zD%>VBSs>VeGf)4#XZg0D^j7*$wntjl3r%b`BsOFrLfp%upsyvJZ)*=HsdZ43=xadc zrQUcl3B?pym@Qi;eFO9e5q)|ZmrkCyOpXOBe)HlfeOsh|72#>}&O%%Tz!-fjr7e|vP% z&!7M=6miRKo%s4a-KOBfZym*vH;+Ogf~~zR8g6@fD6tg|P-5X=D3}w=tnKbXonlKf z6d$&b=x5*nC4#@YI#%S$>GU+*fJ8sMJ+k;msF8|-HLur<(7sQjG2?A$FxxzVIe~>@ z*`=9as1Ytekx)LdBNC3G1}X{`9*_At@;A;sxG9+0@&)HJo=oM&@6u%*2sXJRS_(XY z8c^cW`5buekGbPuQxI#{b-^9PdQNCy6QzRLl~c(px$_&_S}A%jCrd}+0_57_r?81K z!TGMtuyq$*7dDT-^__3JV#MDX#W zgY#UOlMpWX@Voku=y6t>GiQth>61n5>;ubRrDFs{lyPNJaud7N-q=c>4 zQ&DO;czPA;>(j8qSn8Nr-_aE_v#e_QG~dUT<{Ma2&LJp3)ZX zqF}|v4qK^{xVVY(1%Rs^$Aaqv_VRA0q|-BSg0gjKt7Il7A$2`>?ho3TBTHNvPr(U} z1=j_pEZ>`^y|LuKhvu~{Ty~RX(c_e1IbHt!OfAf-pP`$gkl8s4^D3xSIIVPwW5Gk` zj-#Ws$UDb)fra9^4T|Qz&mAs<{Ea>zgqCr&HCxh!>~sU0Kx3u6(4NbxAMnqrLs`2J?R*bmvCsehg-R3t zF-|B2j|YXzic$R}YF zM}qUMTL?e!>62$o;T^OFU2Wl=GpGUD!8q1GXbz8Rkahd^4cq@+m!mOUXx&2C+OHmb z&0K!1MuJu+xs#@?rH)cJw8u~b&ID&UUm|3q`J z^3KHNR5Om9yAw7U)}eocvX5b_qKjR6(iewfGJ5qzIbE;G+1fqu{Ef^OvHF1`!99Jq zb8Z@kLdM8?)fgFDgc@nr;Mu=t=MhUcmke4G@=Yk@qtRAOP1lvZK1tX3o?4-CxsIy! zR_@hGe}Qob3dxeY^7t$zn#b;O`(w8Vk0C5=jF%iZdb;jKPaw00l-E96FJNlA9&exM zMswrkTmWNNAG@*;3J_AW_7mlj7UpqG(=H`H*DZtv4t>~R7DZxhQ8w`~gx*Voxwc(y z7nn*<;G@L*n8`R>rY$SDXYZQ0t{F9@Z*E{ngJMCJ7C3Y`p<-&;^Q*7*l54+#FA!C8 zX(R31_(c+3RWJvzNB6G2o8Ha4VJ;zkzOg)8dUS8sF3MY@B)pGQ4`WvR)mExvD}m)e zM%5NR-m~NF7=$kZ%~1BPu85H4A3kJ_EIo8l;F6S#+giQ+((pgFe%_dsegp#m0000< KMNUMnLSTX~mj=)P literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_55.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_55.png new file mode 100644 index 0000000000000000000000000000000000000000..fd009ab23c3d5195326882e133281b412cfd9c70 GIT binary patch literal 2635 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 literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_56.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_56.png new file mode 100644 index 0000000000000000000000000000000000000000..37d86aa3d261b1607eebab51514530b25ca776bf GIT binary patch literal 2572 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 bK8^SfSb*Lu@LgB(00000NkvXXu0mjfr~>k> literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_60.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_60.png new file mode 100644 index 0000000000000000000000000000000000000000..ac570df3f4d42fc399465caa162c5efe105e5179 GIT binary patch literal 2824 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 P00000NkvXXu0mjfC$-52 literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_62.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_62.png new file mode 100644 index 0000000000000000000000000000000000000000..ebd86c170e7468b89a9608c283284eb7df29fe9e GIT binary patch literal 2261 zcmV;`2rBo9P)`0K~#7F?OWY% zRL2$n&0X8OHvU*sY@oqm`DoQPRWU>&%|l`@s8t`RFs{^Am69ltA|+9!hJPTKyjQYS zsh~!JhKES46tE?p`p^X`RSlJbX+=mv$S#2-V1u)3n`PJb-pM(`?sD(muh}m`NPg1V zdp~CG{O*~VbIxyOfo~WD?gJ99jzp0|l%6&SX+-T;%@hhq$KRNo#(hB32q#_|88#tC z3Z{P5%{Gyx4ItSq@?`~ecL(qR?~G!ICer+Hx9Z7A3X^B9yl zF)oC74i5upD8MuiT8Wnlt8Ocd1e)J9?>CYNn>$L~-6)-v5My}w$TBt|ZyYHdC<_;@ zo5aHlNmgFXR#p}+h>%`j@HK{+Ge-D-3;z*PMjPRgMJR+&xDBoC?drI&w1h%_N&VLW zmu;c42Gvt4znr~8u}1-oLJJyz_BG$3&uX-Fb-7+&&SsIlF^i@71qXS4NvqcNBOL8P zYe$D``K5&g+_^bNpIfLGim()d{THeQTcc-lj2hbRdmj_&*|bqvd-1c+%MB0rM$r@7 z2%{zBTb^Gee>%Ur9&_)1sNG|%FgQs;k#HznI7KsAHRY96nM5_>x(7Dks|F7xZi@z_A&fFNduaLcDEs1=Uuo`=+?^i;y^@x zV`?VzkJFu}+{&}Be9+M1;S!}}ndtbK<9^q>;jTf2!eImRi{!>5p*o+-0l^x8nCddmNkk{9kfwyL+%gDee%byOpAV!@^3z@JO(g|MbDkd={_0 z{V!a&c2g1m(?8zD*~_0p7m4>i!I9JdSM_lD15_7(_k-{bT38iv7|ubMl}3*WRHWpG zzy0STZj)tg=ia#p9Y~jZ7pbnG@^Zy9&KAUFZ{M+Gof{Db(jA3LqdmI|_x z-+liL=pluryyrDHE-vw;ceKSpydNs9TY?VZtVi$hsPnyo*>OeX7i0YPAbfBfAp3OqhSe@}-BTHJaEkK2V$u4&aNO|#c}T(iWJ zNnTMiWMvZ11osSXMXliSe!YS%t4o$aJ;yc)R1g+bWd};Gxphm)G;Q5oXeL+>3Q}2YRY>8QYz=>>e9C%5u5^4e>{ zNkqJRsDCUi!9>&acLEV}LYHU>HSf;4yQSC|rW#&@ zg*Yb>)?k00(!i;|pQKs)rf+=%u>t(zm%ANZdGXV7cdm3=N!fCM z9`ank^Au59`IyKVg^BIYk2P%(>%RPq=iJe;Xt)p>CZ8}QAhr>?s8EuyOp#AHPeiA4 jhB?(tqTk|MJf!#%jRQ#UDH)kX00000NkvXXu0mjf9MMj{ literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_63.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_63.png new file mode 100644 index 0000000000000000000000000000000000000000..68148062b4ca8fbbc76c14c87b0a5b54faa9dbd8 GIT binary patch literal 1481 zcmV;)1vdJLP)tz>_!e zrb$!QUi47ffta$0+6jpTQMyZM%K|&^`MqIx*j*N!omt9E`6a_LZ{|JbH{YB0-o7^g zdkltWfMj1(e#8JHvYryq>$(#0Qs??wI4k;=0)CA?BSnXG&e=fS7gPQDiM|zHy4oN= zdN{-7?apHmeFwXyyEpcINH((d6xl!X)0O=-U{wJai;wb?1x30$7inJ#KkPdpult4o zi^+Xfy$`{LV+hn9Fpu-}D$FmaIex z(hX>Q#f)~A5KyI>$KX4Ha#QnDst$)Xoh7AZ`y=6xhD_R?+fC_N^Qf@gMVEI z;}mf&U?d-!;&RK(KcKK%)m(5GonQT!OvoKi3Y)Sts9=oAK?MV2EmFGm{D(99syTH> zi16oLz>^o7abWi5y7U%s;0i_e>)gKQgo|WzNa+~oEA6kIYC4)rG^!8bQMd(x^g^oo z@k}tk903uh?c=(x=^+#pR3T2NXH**FsEjj}N<9X%?<@F2x)9KW!p76cXu77Qip$tS zwtx#CT*UeJFIxK)?R!;BIUD)mZJl;!K^w&B1`H)8 z#)i$ZY{=%wN#|r=Z>-m06Gy_Ps1WkPVsMX6Weu4(jIqz{W_s^jYx2^ikDAMom6RnM zRn-U+fk9M8)GdN;RPWu1+r8yvvfXGkHl6-Vf$}Z=8ihBoT5s89+0SHyldm-o(qO#< z-b4t-&L*^5aXTkhZFexDs-YSY_)d7E3YUZ$xhs=4WhL7VEuZ(!^I8&;?Y*nr>M1AB zmcrCcT&Bpj!J{~lHS?89jGk)lUm_QvIVhYpjp09+dy{Uyme7Mx&j=d>Ny?F|LLSPXNF@-Y$Lx-Jyf-YoR3aunvM!k zQdkyF&&vgvuTbnN)GA|uCg00i^xlpw7sUUayRRP(hZpI2eh0hr)~&qRBa`D}6{*TO zwtWL&VQ%)9U6PiO9bRU}Cn;)3Q9*1;G^(fDsM)wmr`KcWF{|;UHr9n5z;@KKtBUe} z3u4%zXw$&rL58u;-?XtE8vvDk;Zc>=js?D?tPxaB+>GinjNVc&tW^@n7hC~xK@m++ z2RkejW1v#q&i~;$LfN4+9n@n`X*dPWuCk>aUe j1p(~|*7T<>xaau~bOY)dS*J8100000NkvXXu0mjfxd_4r literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_64.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_64.png new file mode 100644 index 0000000000000000000000000000000000000000..a992cceb3ba55cc02ccd34c637008578612fbdd1 GIT binary patch literal 1193 zcmV;a1XlZrP)FVNl~;R5soG|2%&thcI?DSWNb73&3Ixfvf`EgyIRQs$jQmc$w@B)Qb75z!yiQ<)$izpuZ?d?Cm=Fp*Z6|K95W3e!t0YDLfRYxnoeNirzwD*Qy;lB_)WKEI+%1;G!x^y}{p{xO325Hjshs%h+8v`5)eTKB=ApzJgL*++ znN|r3^4PtwgUvl|2iD}#mGV8r1ijW+(XWk5x_b1Ti9+Ky}a=msu&r?sh?=yaeWFidvCN<@BRD(9wSLlI^yi}u=MVHf03X+yy?l-tj z^I!uaqqf{YLyni9)nd+ol#cwYD|5PB6=WN&S?$&(~1x^IszM!2pjaV2npaZ*xI+{IWkwW ze-;o{u^`XgGV+g(wOh8+Jd*G7G$|WLZb*oz(^3h2^C}s`Q=b-w@zXcg&Y^LR;hz-z;C3BluHI@k-VaM2tcYTWI?Va*l$S~u4nCI0m z?uG5QDkLAy5P>7iev3kNgtiqEw2sXpBR=fbvC&aap8w(P8 zJ(XCBI4gc1F6w^E@P8IXaEi#wy$eVvMVu9n!L()A0AGqo3+Rm?Pv`d>lsT5^bgKM2 zX*@nmcD;rvkU~6%jNx58fZCQQR-)eAn{$siCnqN-C&$ZQ30u;aoLX!L00000NkvXX Hu0mjfDgP^K literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_65.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_65.png new file mode 100644 index 0000000000000000000000000000000000000000..80d83d7121806e2e23ae457853fe876bd6918d52 GIT binary patch literal 1491 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 T67hmp00000NkvXXu0mjfn91)d literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji/emoji_68.png b/chatkit_ui/src/main/resources/rawfile/emoji/emoji_68.png new file mode 100644 index 0000000000000000000000000000000000000000..34ba16b42d31b82bf7dfbc53923b6f44ad1b7834 GIT binary patch literal 2241 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 literal 0 HcmV?d00001 diff --git a/chatkit_ui/src/main/resources/rawfile/emoji_en.json b/chatkit_ui/src/main/resources/rawfile/emoji_en.json new file mode 100644 index 0000000..68261f0 --- /dev/null +++ b/chatkit_ui/src/main/resources/rawfile/emoji_en.json @@ -0,0 +1,350 @@ +{ + "sourceData": [ + { + "file": "emoji_00.png", + "id": "emoticon_emoji_0", + "tag": "[大笑]" + }, + { + "file": "emoji_01.png", + "id": "emoticon_emoji_01", + "tag": "[开心]" + }, + { + "file": "emoji_02.png", + "id": "emoticon_emoji_02", + "tag": "[色]" + }, + { + "file": "emoji_03.png", + "id": "emoticon_emoji_03", + "tag": "[酷]" + }, + { + "file": "emoji_04.png", + "id": "emoticon_emoji_04", + "tag": "[奸笑]" + }, + { + "file": "emoji_05.png", + "id": "emoticon_emoji_05", + "tag": "[亲]" + }, + { + "file": "emoji_06.png", + "id": "emoticon_emoji_06", + "tag": "[伸舌头]" + }, + { + "file": "emoji_07.png", + "id": "emoticon_emoji_07", + "tag": "[眯眼]" + }, + { + "file": "emoji_08.png", + "id": "emoticon_emoji_08", + "tag": "[可爱]" + }, + { + "file": "emoji_09.png", + "id": "emoticon_emoji_09", + "tag": "[鬼脸]" + }, + { + "file": "emoji_10.png", + "id": "emoticon_emoji_10", + "tag": "[偷笑]" + }, + { + "file": "emoji_11.png", + "id": "emoticon_emoji_11", + "tag": "[喜悦]" + }, + { + "file": "emoji_12.png", + "id": "emoticon_emoji_12", + "tag": "[狂喜]" + }, + { + "file": "emoji_13.png", + "id": "emoticon_emoji_13", + "tag": "[惊讶]" + }, + { + "file": "emoji_14.png", + "id": "emoticon_emoji_14", + "tag": "[流泪]" + }, + { + "file": "emoji_15.png", + "id": "emoticon_emoji_15", + "tag": "[流汗]" + }, + { + "file": "emoji_16.png", + "id": "emoticon_emoji_16", + "tag": "[天使]" + }, + { + "file": "emoji_17.png", + "id": "emoticon_emoji_17", + "tag": "[笑哭]" + }, + { + "file": "emoji_18.png", + "id": "emoticon_emoji_18", + "tag": "[尴尬]" + }, + { + "file": "emoji_19.png", + "id": "emoticon_emoji_19", + "tag": "[惊恐]" + }, + { + "file": "emoji_20.png", + "id": "emoticon_emoji_20", + "tag": "[大哭]" + }, + { + "file": "emoji_21.png", + "id": "emoticon_emoji_21", + "tag": "[烦躁]" + }, + { + "file": "emoji_22.png", + "id": "emoticon_emoji_22", + "tag": "[恐怖]" + }, + { + "file": "emoji_23.png", + "id": "emoticon_emoji_23", + "tag": "[两眼冒星]" + }, + { + "file": "emoji_24.png", + "id": "emoticon_emoji_24", + "tag": "[害羞]" + }, + { + "file": "emoji_25.png", + "id": "emoticon_emoji_25", + "tag": "[睡着]" + }, + { + "file": "emoji_26.png", + "id": "emoticon_emoji_26", + "tag": "[冒星]" + }, + { + "file": "emoji_27.png", + "id": "emoticon_emoji_27", + "tag": "[口罩]" + }, + { + "file": "emoji_28.png", + "id": "emoticon_emoji_28", + "tag": "[OK]" + }, + { + "file": "emoji_29.png", + "id": "emoticon_emoji_29", + "tag": "[好吧]" + }, + { + "file": "emoji_30.png", + "id": "emoticon_emoji_30", + "tag": "[鄙视]" + }, + { + "file": "emoji_31.png", + "id": "emoticon_emoji_31", + "tag": "[难受]" + }, + { + "file": "emoji_32.png", + "id": "emoticon_emoji_32", + "tag": "[不屑]" + }, + { + "file": "emoji_33.png", + "id": "emoticon_emoji_33", + "tag": "[不舒服]" + }, + { + "file": "emoji_34.png", + "id": "emoticon_emoji_34", + "tag": "[愤怒]" + }, + { + "file": "emoji_35.png", + "id": "emoticon_emoji_35", + "tag": "[鬼怪]" + }, + { + "file": "emoji_36.png", + "id": "emoticon_emoji_36", + "tag": "[发怒]" + }, + { + "file": "emoji_37.png", + "id": "emoticon_emoji_37", + "tag": "[生气]" + }, + { + "file": "emoji_38.png", + "id": "emoticon_emoji_38", + "tag": "[不高兴]" + }, + { + "file": "emoji_39.png", + "id": "emoticon_emoji_39", + "tag": "[皱眉]" + }, + { + "file": "emoji_40.png", + "id": "emoticon_emoji_40", + "tag": "[心碎]" + }, + { + "file": "emoji_41.png", + "id": "emoticon_emoji_41", + "tag": "[心动]" + }, + { + "id": "emoticon_emoji_42", + "tag": "[好的]", + "file": "emoji_42.png" + }, + { + "file": "emoji_43.png", + "id": "emoticon_emoji_43", + "tag": "[低级]" + }, + { + "file": "emoji_44.png", + "id": "emoticon_emoji_44", + "tag": "[赞]" + }, + { + "file": "emoji_45.png", + "id": "emoticon_emoji_45", + "tag": "[鼓掌]" + }, + { + "file": "emoji_46.png", + "id": "emoticon_emoji_46", + "tag": "[给力]" + }, + { + "file": "emoji_47.png", + "id": "emoticon_emoji_47", + "tag": "[打你]" + }, + { + "file": "emoji_48.png", + "id": "emoticon_emoji_48", + "tag": "[阿弥陀佛]" + }, + { + "file": "emoji_49.png", + "id": "emoticon_emoji_49", + "tag": "[拜拜]" + }, + { + "file": "emoji_50.png", + "id": "emoticon_emoji_50", + "tag": "[第一]" + }, + { + "file": "emoji_51.png", + "id": "emoticon_emoji_51", + "tag": "[拳头]" + }, + { + "file": "emoji_52.png", + "id": "emoticon_emoji_52", + "tag": "[手掌]" + }, + { + "file": "emoji_53.png", + "id": "emoticon_emoji_53", + "tag": "[剪刀]" + }, + { + "file": "emoji_54.png", + "id": "emoticon_emoji_54", + "tag": "[招手]" + }, + { + "file": "emoji_55.png", + "id": "emoticon_emoji_55", + "tag": "[不要]" + }, + { + "file": "emoji_56.png", + "id": "emoticon_emoji_56", + "tag": "[举着]" + }, + { + "file": "emoji_57.png", + "id": "emoticon_emoji_57", + "tag": "[思考]" + }, + { + "file": "emoji_58.png", + "id": "emoticon_emoji_58", + "tag": "[猪头]" + }, + { + "file": "emoji_59.png", + "id": "emoticon_emoji_59", + "tag": "[不听]" + }, + { + "file": "emoji_60.png", + "id": "emoticon_emoji_60", + "tag": "[不看]" + }, + { + "file": "emoji_61.png", + "id": "emoticon_emoji_61", + "tag": "[不说]" + }, + { + "file": "emoji_62.png", + "id": "emoticon_emoji_62", + "tag": "[猴子]" + }, + { + "file": "emoji_63.png", + "id": "emoticon_emoji_63", + "tag": "[炸弹]" + }, + { + "file": "emoji_64.png", + "id": "emoticon_emoji_64", + "tag": "[睡觉]" + }, + { + "file": "emoji_65.png", + "id": "emoticon_emoji_65", + "tag": "[筋斗云]" + }, + { + "file": "emoji_66.png", + "id": "emoticon_emoji_66", + "tag": "[火箭]" + }, + { + "file": "emoji_67.png", + "id": "emoticon_emoji_67", + "tag": "[救护车]" + }, + { + "file": "emoji_68.png", + "id": "emoticon_emoji_68", + "tag": "[便便]" + } + ] +} + diff --git a/chatkit_ui/src/main/resources/zh_CN/element/string.json b/chatkit_ui/src/main/resources/zh_CN/element/string.json new file mode 100644 index 0000000..c8b37af --- /dev/null +++ b/chatkit_ui/src/main/resources/zh_CN/element/string.json @@ -0,0 +1,380 @@ +{ + "string": [ + { + "name": "p2p_chat_default_title", + "value": "Message" + }, + { + "name": "chat_edit_take_picture", + "value": "拍照" + }, + { + "name": "chat_edit_toke_video", + "value": "录制小视频" + }, + { + "name": "chat_media_permission_name", + "value": "云信" + }, + { + "name": "chat_team_notify_invite_title", + "value": "邀请" + }, + { + "name": "chat_team_notify_invite_join", + "value": "加入群聊" + }, + { + "name": "chat_team_notify_kick_title", + "value": "被移出了群聊" + }, + { + "name": "chat_team_notify_leave_title", + "value": "退出了群聊" + }, + { + "name": "chat_team_notify_dismiss_title", + "value": "解散了群聊" + }, + { + "name": "null_message_not_support", + "value": "不支持发送空消息" + }, + { + "name": "chat_send", + "value": "发送" + }, + { + "name": "chat_send_tips", + "value": "请输入消息" + }, + { + "name": "chat_audio_tips", + "value": "按住说话" + }, + { + "name": "chat_camera_take", + "value": "拍摄" + }, + { + "name": "chat_send_location", + "value": "位置" + }, + { + "name": "chat_send_file", + "value": "文件" + }, + { + "name": "chat_operation_copy", + "value": "复制消息" + }, + { + "name": "chat_operation_forward", + "value": "转发" + }, + { + "name": "chat_operation_collection", + "value": "收藏" + }, + { + "name": "chat_reply_not_exist", + "value": "该消息已撤回或删除" + }, + { + "name": "chat_collection_success", + "value": "已收藏" + }, + { + "name": "chat_operation_multi_forward", + "value": "合并转发" + }, + { + "name": "chat_operation_single_forward", + "value": "逐条转发" + }, + { + "name": "chat_operation_forward_desc", + "value": "%s的会话记录" + }, + { + "name": "chat_merged_message_title", + "value": "%s 的消息" + }, + { + "name": "chat_merged_message_desc", + "value": "聊天记录" + }, + { + "name": "chat_operation_delete", + "value": "删除" + }, + { + "name": "chat_operation_undo", + "value": "撤回" + }, + { + "name": "chat_operation_pin", + "value": "标记" + }, + { + "name": "chat_operation_unpin", + "value": "取消标记" + }, + { + "name": "chat_msg_undo_tips", + "value": "此消息已撤回" + }, + { + "name": "chat_msg_undo_edit_tips", + "value": " 重新编辑 >" + }, + { + "name": "chat_msg_delete_dialog_title", + "value": "删除" + }, + { + "name": "chat_msg_delete_dialog_desc", + "value": "删除此消息?" + }, + { + "name": "chat_msg_revoke_dialog_title", + "value": "撤回" + }, + { + "name": "chat_msg_revoke_dialog_desc", + "value": "撤回此消息" + }, + { + "name": "chat_msg_dialog_cancel", + "value": "取消" + }, + { + "name": "chat_msg_dialog_sure", + "value": "确定" + }, + { + "name": "chat_msg_call_canceled", + "value": "已取消" + }, + { + "name": "chat_msg_call_refused", + "value": "已拒绝" + }, + { + "name": "chat_msg_call_timeout", + "value": "未接听" + }, + { + "name": "chat_msg_call_busy", + "value": "忙线未接" + }, + { + "name": "chat_msg_call_completed", + "value": "通话时长 " + }, + { + "name": "chat_msg_unknown_type", + "value": "未知消息" + }, + { + "name": "chat_team_error_tip_content", + "value": "您已被移出群聊或该群聊已被解散" + }, + { + "name": "chat_setting", + "value": "聊天设置" + }, + { + "name": "chat_team_name_update", + "value": "更新群名称为" + }, + { + "name": "chat_current_user_name", + "value": "你" + }, + { + "name": "chat_team_avatar_update", + "value": "更新了群头像" + }, + { + "name": "chat_team_extension_update", + "value": "更新了群扩展字段" + }, + { + "name": "chat_team_intro_update", + "value": "更新了群介绍" + }, + { + "name": "chat_team_notice_update", + "value": "更新了群公告" + }, + { + "name": "chat_team_verify_update", + "value": "更新群身份验证权限为" + }, + { + "name": "chat_team_invitation_permission_update", + "value": "更新了群权限'邀请他人权限'为" + }, + { + "name": "chat_team_permission_all", + "value": "'所有人'" + }, + { + "name": "chat_team_permission_manager", + "value": "'群主和管理员'" + }, + { + "name": "chat_team_modify_resource_permission_update", + "value": "更新了群权限'群资料修改权限'为" + }, + { + "name": "chat_team_cancel_all_mute", + "value": "群禁言已关闭" + }, + { + "name": "chat_team_full_mute", + "value": "群禁言已开启" + }, + { + "name": "chat_permission_camera_desc", + "value": "用于发送图片和视频消息" + }, + { + "name": "chat_permission_micro_phone_desc", + "value": "用于发送语音消息" + }, + { + "name": "chat_permission_location_desc", + "value": "用于发送地理位置消息" + }, + { + "name": "chat_speak_too_short", + "value": "说话时间太短" + }, + { + "name": "chat_read_receipt_title", + "value": "消息阅读状态" + }, + { + "name": "chat_read_receipt_read", + "value": "已读(%d)" + }, + { + "name": "chat_read_receipt_unread", + "value": "未读(%d)" + }, + { + "name": "chat_read_receipt_all_unread", + "value": "全部成员未读" + }, + { + "name": "chat_read_receipt_all_read", + "value": "全部成员已读" + }, + { + "name": "chat_team_appoint_manager", + "value": "被任命为管理员" + }, + { + "name": "chat_team_removed_manager", + "value": "被撤销管理员身份" + }, + { + "name": "forward_dialog_leave_message", + "value": "留言" + }, + { + "name": "chat_pin_message_tips", + "value": "%s 标记了这条信息" + }, + { + "name": "chat_team_all_mute", + "value": "当前群主设置为禁言" + }, + { + "name": "chat_network_error_tips", + "value": "网络异常" + }, + { + "name": "chat_pin_limit_error_tips", + "value": "PIN消息已达最大限制" + }, + { + "name": "chat_revoke_edit_error_tips", + "value": "已超过可编辑时间" + }, + { + "name": "pin_list_unpin_success_tips", + "value": "已取消标记" + }, + { + "name": "chat_message_copy_success_tips", + "value": "已复制" + }, + { + "name": "team_history_record_tip", + "value": "搜索聊天内容" + }, + { + "name": "team_history_record_empty_tip", + "value": "暂无聊天记录" + }, + { + "name": "chat_message_ait_select_tips", + "value": "选择提醒" + }, + { + "name": "chat_team_ait_all", + "value": "所有人" + }, + { + "name": "chat_forward_limit", + "value": "%s限制%d条消息" + }, + { + "name": "multiForward_exist_invalid_fail", + "value": "存在不可转发的消息体,是否去除后发送?" + }, + { + "name": "multiForward_exist_invalid_depth", + "value": "存在超出合并限制的消息,无法合并转发,是否去除后发送?" + }, + { + "name": "file_md5_check_failed", + "value": "文件校验失败" + }, + { + "name": "chat_multi_delete_limit_tips", + "value": "批量删除限制50条消息" + }, + { + "name": "chat_single_forward_limit_tips", + "value": "逐条转发限制10条消息" + }, + { + "name": "chat_multi_forward_limit_tips", + "value": "合并转发限制100条消息" + }, + { + "name": "chat_multi_forward_failed", + "value": "系统异常,转发失败" + }, + { + "name": "chat_team_at_permission_manager_tips", + "value": "更新@所有人权限更新为群主和管理员" + }, + { + "name": "chat_team_at_permission_all_tips", + "value": "更新@所有人权限更新为所有人" + }, + { + "name": "chat_message_empty_notification_text", + "value": "一条空的通知消息" + }, + { + "name": "chat_message_empty_tip_text", + "value": "一条空的 tip 消息" + } + ] +} \ No newline at end of file diff --git a/chatkit_ui/src/test/List.test.ets b/chatkit_ui/src/test/List.test.ets new file mode 100644 index 0000000..5a7099d --- /dev/null +++ b/chatkit_ui/src/test/List.test.ets @@ -0,0 +1,12 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import localUnitTest from './LocalUnit.test'; + +export default function testsuite() { + localUnitTest(); +} \ No newline at end of file diff --git a/chatkit_ui/src/test/LocalUnit.test.ets b/chatkit_ui/src/test/LocalUnit.test.ets new file mode 100644 index 0000000..c7f1321 --- /dev/null +++ b/chatkit_ui/src/test/LocalUnit.test.ets @@ -0,0 +1,40 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { afterAll, afterEach, beforeAll, beforeEach, describe, expect, it } from '@ohos/hypium'; + +export default function localUnitTest() { + describe('localUnitTest', () => { + // Defines a test suite. Two parameters are supported: test suite name and test suite function. + beforeAll(() => { + // Presets an action, which is performed only once before all test cases of the test suite start. + // This API supports only one parameter: preset action function. + }); + beforeEach(() => { + // Presets an action, which is performed before each unit test case starts. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: preset action function. + }); + afterEach(() => { + // Presets a clear action, which is performed after each unit test case ends. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: clear action function. + }); + afterAll(() => { + // Presets a clear action, which is performed after all test cases of the test suite end. + // This API supports only one parameter: clear action function. + }); + it('assertContain', 0, () => { + // Defines a test case. This API supports three parameters: test case name, filter parameter, and test case function. + let a = 'abc'; + let b = 'b'; + // Defines a variety of assertion methods, which are used to declare expected boolean conditions. + expect(a).assertContain(b); + expect(a).assertEqual(a); + }); + }); +} \ No newline at end of file diff --git a/common/BuildProfile.ets b/common/BuildProfile.ets new file mode 100644 index 0000000..cab3453 --- /dev/null +++ b/common/BuildProfile.ets @@ -0,0 +1,17 @@ +/** + * Use these variables when you tailor your ArkTS code. They must be of the const type. + */ +export const HAR_VERSION = '1.1.0'; +export const BUILD_MODE_NAME = 'release'; +export const DEBUG = false; +export const TARGET_NAME = 'default'; + +/** + * BuildProfile Class is used only for compatibility purposes. + */ +export default class BuildProfile { + static readonly HAR_VERSION = HAR_VERSION; + static readonly BUILD_MODE_NAME = BUILD_MODE_NAME; + static readonly DEBUG = DEBUG; + static readonly TARGET_NAME = TARGET_NAME; +} \ No newline at end of file diff --git a/common/Index.ets b/common/Index.ets new file mode 100644 index 0000000..aef2068 --- /dev/null +++ b/common/Index.ets @@ -0,0 +1,78 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +export { Logger } from './src/main/ets/utils/Logger'; + +export { BreakpointSystem, BreakPointType } from './src/main/ets/utils/BreakpointSystem'; + +export { NavigationBackBuilder } from './src/main/ets/builder/NavigationBackBuilder'; + +export { NavigationTitleBuilder } from './src/main/ets/builder/NavigationTitleBuilder'; + +export { ViewItemBuilder } from './src/main/ets/builder/ViewItemBuilder'; + +export { CustomLoadMoreBuilder } from './src/main/ets/builder/CustomLoadMoreBuilder'; + +export { CommonTextInput } from './src/main/ets/builder/CommonTextInput'; + +export { CommonEmptyResult } from './src/main/ets/builder/CommonEmptyResult'; + +export { NetworkBrokenBuilder } from './src/main/ets/builder/NetworkBrokenBuilder'; + +export { ListGroupHeader } from './src/main/ets/builder/ListGroupHeader'; + +export { DoubleAlertDialog } from './src/main/ets/builder/DoubleAlertDialog'; + +export type { ViewItem } from './src/main/ets/model/ViewItem'; + +export type { ViewItemArrow } from './src/main/ets/model/ViewItemArrow'; + +export type { ViewItemSwitch } from './src/main/ets/model/ViewItemSwitch'; + +export { CommonAvatar, AvatarItem, AvatarColorUntil, buildAvatar } from './src/main/ets/view/CommonAvatar' + +export { initalLetter, StringIsEmpty, TailString, GetUnreadCountStr } from './src/main/ets/extend/StringExtend'; + +export { NECommonUtils } from './src/main/ets/utils/NECommonUtils'; + +export { FileUtils } from './src/main/ets/utils/FileUtil'; + +export { JSONUtil } from './src/main/ets/utils/JSONUtil'; + +export { MediaUtils } from './src/main/ets/utils/MediaUtils'; + +export { SelectResult } from './src/main/ets/utils/MediaUtils'; + +export { PermissionsUtils } from './src/main/ets/utils/PermissionsUtils'; + +export { PermissionsRequestResult } from './src/main/ets/utils/PermissionsUtils'; + +export { CommonConstants } from './src/main/ets/constants/CommonConstants'; + +export { TextEditParams, TextEditPage } from './src/main/ets/pages/TextEditPage' + +export { DateConst } from './src/main/ets/constants/DateConst'; + +export { ChooseAvatarDialog } from './src/main/ets/view/ChooseAvatarDialog'; + +export { windowSizeManager } from './src/main/ets/utils/WindowSizeManagers'; + +export { ImagesIndexModel } from './src/main/ets/ImageViewDialog/model/ImagesIndexModel'; + +export { CommonChooseDialog } from './src/main/ets/view/CommonChooseDialog'; + +export { ImageViewDialog } from './src/main/ets/ImageViewDialog/ImageViewDialog'; + +export { VideoViewerDialog } from './src/main/ets/VideoViewDialog/VideoViewDialog'; + +export { CommonConfirmDialog } from './src/main/ets/view/CommonConfirmDialog' + +export { MatchSearchText } from './src/main/ets/view/MatchSearchText' + +export {CommonLongLoadingProgress } from './src/main/ets/builder/CommonLongLoadingProgress' + +export { BreakpointConstants} from './src/main/ets/constants/BreakpointConstants' \ No newline at end of file diff --git a/common/build-profile.json5 b/common/build-profile.json5 new file mode 100644 index 0000000..41f23de --- /dev/null +++ b/common/build-profile.json5 @@ -0,0 +1,28 @@ +{ + "apiType": "stageMode", + "buildOption": { + }, + "buildOptionSet": [ + { + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } + }, + ], + "targets": [ + { + "name": "default" + } + ] +} diff --git a/common/consumer-rules.txt b/common/consumer-rules.txt new file mode 100644 index 0000000..e69de29 diff --git a/common/hvigorfile.ts b/common/hvigorfile.ts new file mode 100644 index 0000000..9d34d19 --- /dev/null +++ b/common/hvigorfile.ts @@ -0,0 +1,13 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { harTasks } from '@ohos/hvigor-ohos-plugin'; + +export default { + system: harTasks, /* Built-in plugin of Hvigor. It cannot be modified. */ + plugins: [] /* Custom plugin to extend the functionality of Hvigor. */ +} diff --git a/common/obfuscation-rules.txt b/common/obfuscation-rules.txt new file mode 100644 index 0000000..272efb6 --- /dev/null +++ b/common/obfuscation-rules.txt @@ -0,0 +1,23 @@ +# Define project specific obfuscation rules here. +# You can include the obfuscation configuration files in the current module's build-profile.json5. +# +# For more details, see +# https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/source-obfuscation-V5 + +# Obfuscation options: +# -disable-obfuscation: disable all obfuscations +# -enable-property-obfuscation: obfuscate the property names +# -enable-toplevel-obfuscation: obfuscate the names in the global scope +# -compact: remove unnecessary blank spaces and all line feeds +# -remove-log: remove all console.* statements +# -print-namecache: print the name cache that contains the mapping from the old names to new names +# -apply-namecache: reuse the given cache file + +# Keep options: +# -keep-property-name: specifies property names that you want to keep +# -keep-global-name: specifies names that you want to keep in the global scope + +-enable-property-obfuscation +-enable-toplevel-obfuscation +-enable-filename-obfuscation +-enable-export-obfuscation \ No newline at end of file diff --git a/common/oh-package-lock.json5 b/common/oh-package-lock.json5 new file mode 100644 index 0000000..b39d858 --- /dev/null +++ b/common/oh-package-lock.json5 @@ -0,0 +1,19 @@ +{ + "meta": { + "stableOrder": true + }, + "lockfileVersion": 3, + "ATTENTION": "THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.", + "specifiers": { + "@ohos/pinyin4js@^2.0.0": "@ohos/pinyin4js@2.0.1" + }, + "packages": { + "@ohos/pinyin4js@2.0.1": { + "name": "@ohos/pinyin4js", + "version": "2.0.1", + "integrity": "sha512-qmYDelku5gcgKVmJyMqa7kWf0a+e8nnGS9ts5FRLA0LdRf+Iz36X/4Vub6hhh/RusuDmmWG9h153KZe+kraIVg==", + "resolved": "https://ohpm.openharmony.cn/ohpm/@ohos/pinyin4js/-/pinyin4js-2.0.1.har", + "registryType": "ohpm" + } + } +} \ No newline at end of file diff --git a/common/oh-package.json5 b/common/oh-package.json5 new file mode 100644 index 0000000..63459bc --- /dev/null +++ b/common/oh-package.json5 @@ -0,0 +1,11 @@ +{ + "name": "@nimkit/common", + "version": "1.1.0", + "description": "Please describe the basic information.", + "main": "Index.ets", + "author": "", + "license": "Apache-2.0", + "dependencies": { + "@ohos/pinyin4js": "^2.0.0" + } +} \ No newline at end of file diff --git a/common/src/main/ets/ImageViewDialog/ImageItemView.ets b/common/src/main/ets/ImageViewDialog/ImageItemView.ets new file mode 100644 index 0000000..7a3cb61 --- /dev/null +++ b/common/src/main/ets/ImageViewDialog/ImageItemView.ets @@ -0,0 +1,248 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { image } from '@kit.ImageKit'; +import { matrix4, window } from '@kit.ArkUI'; +import { OffsetModel } from './model/OffsetModel'; +import { ScaleModel } from './model/ScaleModel'; +import { runWithAnimation } from '../utils/FuncUtils'; +import { WindowSizeManager } from '../utils/WindowSizeManagers'; + + +/* + 图片查看器 item + */ +@ComponentV2 +export struct ImageItemView { + @Local isEnableOffset: boolean = false; + @Local imageScaleInfo: ScaleModel = new ScaleModel(1.0, 1.0, 1.5, 0.3); + @Local imageOffsetInfo: OffsetModel = new OffsetModel(0, 0); + @Local matrix: matrix4.Matrix4Transit = matrix4.identity().copy(); + @Local imagePixelMap: image.PixelMap | null = null; // 当前图片pixelMap,用于Image组件显示 + @Local fitWH: "width" | "height" | undefined = "width"; // 表示当前图片是根据宽度适配还是高度适配 + @Local imageDefaultSize: image.Size = { width: 0, height: 0 }; // 图片默认大小,即,与屏幕大小最适配的显示大小 + @Param imageUri: string = ""; // 当前图片uri + imageWHRatio: number = 0; // 图片原始宽高比 + imageW: number = 0; // 图片原始宽 + imageH: number = 0; // 图片原始高 + windowSizeManager: WindowSizeManager = new WindowSizeManager(getContext(this)); + + /** + * 根据图片宽高比及窗口大小计算图片的默认宽高,即,图片最适配屏幕的大小 + * @param imageWHRatio:图片原始宽高比 + * @param size:窗口大小{with:number,height:number} + * @returns image.Size + */ + calcImageDefaultSize(imageWHRatio: number, size: window.Size): image.Size { + let width = 0 + let height = 0; + if (imageWHRatio > size.width / size.height) { + // 图片宽高比大于屏幕宽高比,图片默认以屏幕宽度进行显示 + width = size.width; + height = size.width / imageWHRatio; + } else { + height = size.height; + width = size.height * imageWHRatio; + } + return { width: width, height: height }; + } + + /** + * 根据图片大小(宽高<=屏幕宽高)和屏幕大小计算图片放大适配屏幕进行显示的缩放倍率 + * @param imageSize:图片当前大小 + * @param windowSize:窗口大小 + * @returns:缩放倍率 + */ + calcFitScaleRatio(imageSize: image.Size, windowSize: window.Size): number { + let ratio: number = 1.0; + if (windowSize.width > imageSize.width) { + ratio = windowSize.width / imageSize.width; + } else { + ratio = windowSize.height / imageSize.height; + } + return ratio; + } + + /** + * 在图片消失时,将当前图片的信息设置为默认值 + */ + resetCurrentImageInfo(): void { + this.imageScaleInfo.reset(); + this.imageOffsetInfo.reset(); + this.matrix = matrix4.identity().copy(); + } + + /** + * 在偏移时评估是否到达边界,以便进行位移限制与图片的切换 + * @returns:长度为4的boolean数组,表示上下左右是否到达边界 + */ + evaluateBound(): boolean[] { + return [false, false, false, false]; + } + + build() { + Stack() { + Image(this.imageUri)// 宽高只根据其尺寸设置一个,通过保持宽高比来设置另一个属性 + .width(this.fitWH === "width" ? '100%' : undefined) + .height(this.fitWH === "height" ? '100%' : undefined) + .aspectRatio(this.imageWHRatio) + .objectFit(ImageFit.Cover)// 保持宽高比进行缩放,可以超出父组件,以便实现多图切换的增强功能 + .autoResize(false) + .transform(this.matrix)// 通过matrix控制图片的缩放 + .defaultFocus(true) + .offset({ + // 通过offset控制图片的偏移 + x: this.imageOffsetInfo.currentX, + y: this.imageOffsetInfo.currentY + }) + .onComplete(data => { + if (data) { + this.imageW = px2vp(data.componentWidth) + this.imageH = px2vp(data.componentHeight) + this.imageWHRatio = data.width / data.height; + this.imageDefaultSize = this.calcImageDefaultSize(this.imageWHRatio, this.windowSizeManager.size); + if (this.imageDefaultSize.width === this.windowSizeManager.size.width) { + this.fitWH = "width"; + } else { + this.fitWH = "height"; + } + this.imageScaleInfo.maxScaleValue += this.fitWH === "width" ? + (this.windowSizeManager.size.height / this.imageDefaultSize.height) : + (this.windowSizeManager.size.width / this.imageDefaultSize.width); + } + }) + } + .onBlur(() => { + this.resetCurrentImageInfo(); + }) + .backgroundColor(Color.Black) + .alignContent(Alignment.Center) + .expandSafeArea([SafeAreaType.SYSTEM], [SafeAreaEdge.TOP, SafeAreaEdge.BOTTOM]) + .width('100%') + .height('100%') + .gesture( + GestureGroup( + GestureMode.Exclusive, + // 双击切换图片大小 + TapGesture({ count: 2 }) + .onAction(() => { + let fn: Function; + // 已经是放大状态下,双击缩小 + if (this.imageScaleInfo.scaleValue > this.imageScaleInfo.defaultScaleValue) { + fn = () => { + this.imageScaleInfo.reset(); + this.imageOffsetInfo.reset(); + this.matrix = matrix4.identity().copy(); + }; + } else { + // 已经是缩小状态,双击放大 + fn = () => { + const ratio: number = this.calcFitScaleRatio(this.imageDefaultSize, this.windowSizeManager.size); + this.imageScaleInfo.scaleValue = ratio; + this.imageOffsetInfo.reset(); + this.matrix = matrix4.identity().scale({ + x: ratio, + y: ratio, + }).copy(); + this.imageScaleInfo.stash(); + } + } + runWithAnimation(fn); + }), + // 双指捏合缩放图片 + PinchGesture({ fingers: 2, distance: 1 }) + .onActionUpdate((event: GestureEvent) => { + this.imageScaleInfo.scaleValue = this.imageScaleInfo.lastValue * event.scale; + // 缩放时不允许大于最大缩放因子+额外缩放因子,不允许小于默认大小-额外缩放因子,额外缩放因子用于提升用户体验 + if (this.imageScaleInfo.scaleValue > this.imageScaleInfo.maxScaleValue * + (1 + this.imageScaleInfo.extraScaleValue) + ) { + this.imageScaleInfo.scaleValue = this.imageScaleInfo.maxScaleValue * + (1 + this.imageScaleInfo.extraScaleValue); + } + if (this.imageScaleInfo.scaleValue < this.imageScaleInfo.defaultScaleValue * + (1 - this.imageScaleInfo.extraScaleValue)) { + this.imageScaleInfo.scaleValue = this.imageScaleInfo.defaultScaleValue * + (1 - this.imageScaleInfo.extraScaleValue); + } + // matrix默认缩放中心为组件中心 + this.matrix = matrix4.identity().scale({ + x: this.imageScaleInfo.scaleValue, + y: this.imageScaleInfo.scaleValue, + }).copy(); + console.debug(this.imageScaleInfo.toString()); + }) + .onActionEnd((event: GestureEvent) => { + /** + * 当小于默认大小时,恢复为默认大小 + */ + if (this.imageScaleInfo.scaleValue < this.imageScaleInfo.defaultScaleValue) { + runWithAnimation(() => { + this.imageScaleInfo.reset(); + this.imageOffsetInfo.reset(); + this.matrix = matrix4.identity().copy(); + }) + } + // 当大于最大缩放因子时,恢复到最大 + if (this.imageScaleInfo.scaleValue > this.imageScaleInfo.maxScaleValue) { + runWithAnimation(() => { + this.imageScaleInfo.scaleValue = this.imageScaleInfo.maxScaleValue; + this.matrix = matrix4.identity() + .scale({ + x: this.imageScaleInfo.maxScaleValue, + y: this.imageScaleInfo.maxScaleValue + }); + }) + } + this.imageScaleInfo.stash(); + }), + // 滑动图片 + PanGesture({ fingers: 1 })// 默认大小下左右滑动应当是切换图片 + .tag('pan_darg') + .onActionUpdate((event: GestureEvent) => { + this.imageOffsetInfo.currentX = this.imageOffsetInfo.lastX + event.offsetX; + this.imageOffsetInfo.currentY = this.imageOffsetInfo.lastY + event.offsetY; + }) + .onActionEnd((event: GestureEvent) => { + const maxX = (this.imageScaleInfo.scaleValue * this.imageW - this.windowSizeManager.size.width) / 2.0 + const maxY = (this.imageScaleInfo.scaleValue * this.imageH - this.windowSizeManager.size.height) / 2.0 + + this.windowSizeManager.topRectHeight + this.windowSizeManager.bottomRectHeight + if (Math.abs(this.imageOffsetInfo.currentX) > maxX || Math.abs(this.imageOffsetInfo.currentY) > maxY) { + runWithAnimation(() => { + if (maxX > 0 && Math.abs(this.imageOffsetInfo.currentX) > maxX) { + if (this.imageOffsetInfo.currentX < 0) { + this.imageOffsetInfo.currentX = Math.max(this.imageOffsetInfo.currentX, -maxX) + } else { + this.imageOffsetInfo.currentX = Math.min(this.imageOffsetInfo.currentX, maxX) + } + } + + if (maxY > 0 && Math.abs(this.imageOffsetInfo.currentY) > maxY) { + if (this.imageOffsetInfo.currentY < 0) { + this.imageOffsetInfo.currentY = Math.max(this.imageOffsetInfo.currentY, -maxY) + } else { + this.imageOffsetInfo.currentY = Math.min(this.imageOffsetInfo.currentY, maxY) + } + } + }) + } + + this.imageOffsetInfo.stash(); + }) + ), + ) + .onGestureJudgeBegin((gestureInfo: GestureInfo, event: BaseGestureEvent) => { + if (gestureInfo.tag === 'pan_darg') { + if (this.imageScaleInfo.scaleValue === this.imageScaleInfo.defaultScaleValue) { + // 默认大小下不允许移动 + return GestureJudgeResult.REJECT + } + } + return GestureJudgeResult.CONTINUE; + }) + } +} \ No newline at end of file diff --git a/common/src/main/ets/ImageViewDialog/ImageViewDialog.ets b/common/src/main/ets/ImageViewDialog/ImageViewDialog.ets new file mode 100644 index 0000000..0428d32 --- /dev/null +++ b/common/src/main/ets/ImageViewDialog/ImageViewDialog.ets @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { ImageItemView } from './ImageItemView'; +import { ImagesIndexModel } from './model/ImagesIndexModel'; + +/* + 图片查看器 + */ +@CustomDialog +export struct ImageViewDialog { + controller?: CustomDialogController + @BuilderParam imagesIndexModel?: ImagesIndexModel; + swipeController: SwiperController = new SwiperController(); + + build() { + Swiper(this.swipeController) { + ForEach(this.imagesIndexModel?.imageUrls, (item: string, index: number) => { + ImageItemView({ imageUri: item }) + .width('100%') + .height('100%') + }) + } + .width('100%') + .height('100%') + .expandSafeArea([SafeAreaType.SYSTEM], [SafeAreaEdge.TOP, SafeAreaEdge.BOTTOM]) + .autoPlay(false) + .loop(false) + .indicator(false) + .effectMode(EdgeEffect.Fade) + .index(this.imagesIndexModel?.currentIndex) + .cachedCount(this.imagesIndexModel?.imageUrls.length) + .onClick(() => { + this.controller?.close() + }) + } +} \ No newline at end of file diff --git a/common/src/main/ets/ImageViewDialog/model/ImagesIndexModel.ets b/common/src/main/ets/ImageViewDialog/model/ImagesIndexModel.ets new file mode 100644 index 0000000..1f1042e --- /dev/null +++ b/common/src/main/ets/ImageViewDialog/model/ImagesIndexModel.ets @@ -0,0 +1,22 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +/* + 图片查看器模型 + 包含图片 url 列表和当前图片下标 + */ + +@ObservedV2 +export class ImagesIndexModel { + @Trace imageUrls: string[] = []; + currentIndex: number = 0; + + constructor(imageUrls: string[] = [], currentIndex: number = 0) { + this.imageUrls = imageUrls; + this.currentIndex = currentIndex; + } +} \ No newline at end of file diff --git a/common/src/main/ets/ImageViewDialog/model/OffsetModel.ets b/common/src/main/ets/ImageViewDialog/model/OffsetModel.ets new file mode 100644 index 0000000..b24f84b --- /dev/null +++ b/common/src/main/ets/ImageViewDialog/model/OffsetModel.ets @@ -0,0 +1,38 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +/* + 图片偏移模型 + */ +@ObservedV2 +export class OffsetModel { + public currentX: number; + public currentY: number; + public lastX: number = 0; + public lastY: number = 0; + + constructor(currentX: number = 0, currentY: number = 0) { + this.currentX = currentX; + this.currentY = currentY; + } + + reset(): void { + this.currentX = 0; + this.currentY = 0; + this.lastX = 0; + this.lastY = 0; + } + + stash(): void { + this.lastX = this.currentX; + this.lastY = this.currentY; + } + + toString(): string { + return `[currentX: ${this.currentX} currentY: ${this.currentY} lastX: ${this.lastX} lastY: ${this.lastY}]`; + } +} \ No newline at end of file diff --git a/common/src/main/ets/ImageViewDialog/model/ScaleModel.ets b/common/src/main/ets/ImageViewDialog/model/ScaleModel.ets new file mode 100644 index 0000000..36c1c23 --- /dev/null +++ b/common/src/main/ets/ImageViewDialog/model/ScaleModel.ets @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +/* + 图片缩放模型 + */ +@ObservedV2 +export class ScaleModel { + /** + * scaleValue: 本次缩放因子,用于控制图片的大小显示 + * lastValue:记录上次缩放完后的缩放因子 + * defaultMaxScaleValue:默认的最大放大值 + * defaultScaleValue:默认缩放值,1 + */ + public scaleValue: number; + public lastValue: number; + public maxScaleValue: number; + public extraScaleValue: number; + public readonly defaultScaleValue: number = 1; + + constructor(scaleValue: number = 1.0, lastValue: number = 1.0, + maxScaleValue: number = 1.5, extraScaleValue: number = 0.2) { + this.scaleValue = scaleValue; + this.lastValue = lastValue; + this.maxScaleValue = maxScaleValue; + this.extraScaleValue = extraScaleValue; + } + + reset(): void { + this.scaleValue = this.defaultScaleValue; + this.lastValue = this.scaleValue; + } + + stash(): void { + this.lastValue = this.scaleValue; + } + + toString(): string { + return `[scaleValue: ${this.scaleValue} lastValue: ${this.lastValue}]`; + } +} \ No newline at end of file diff --git a/common/src/main/ets/VideoViewDialog/VideoItemView.ets b/common/src/main/ets/VideoViewDialog/VideoItemView.ets new file mode 100644 index 0000000..4345b46 --- /dev/null +++ b/common/src/main/ets/VideoViewDialog/VideoItemView.ets @@ -0,0 +1,506 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import media from '@ohos.multimedia.media'; +import audio from '@ohos.multimedia.audio'; +import window from '@ohos.window'; +import { getTimeString } from '../utils/TimeUtils'; +import fileIo from '@ohos.file.fs'; + +// 倍速对象 +interface speedObj { + text: string, + value: number +}; + +const WINDOW_SYSTEM_BAR: Array<'status' | 'navigation'> = ['navigation', 'status']; +const LAYOUT_WEIGHT: number = 1; // 自动分配剩余空间 +const VIDEO_Z_INDEX: number = 100; // 组件zIndex +const ANIMATE_DURATION: number = 400; // 动画持续时间 +const SPEED_POPUP_LIST_SPACE: number = 20; + + +class AVPlayerConstants { + // 倍速 + static readonly SPEED_ARRAY: speedObj[] = [ + { + text: '0.75x', value: 0 + }, + { + text: '1.0x', value: 1 + }, + { + text: '1.25x', value: 2 + }, + { + text: '1.75x', value: 3 + }, + { + text: '2.0x', value: 4 + }]; +} + +@ComponentV2 +export struct VideoItemView { + @Local currentTime: number = 0; // 视频当前时间 + @Local totalDuration: number = 0; // 视频总时长 + @Param videoRatio: number = 0; // 元素宽高比 + @Local videoRatioLocal: number = 0; // 元素宽高比 + @Local isPlaying: boolean = false; // 是否播放状态 + @Local isLandscape: boolean = false; // 是否横屏状态 + @Local isSpeedShow: boolean = false; // 是否倍速状态 + @Local showFullScreen: boolean = false; // 是否展示全屏按钮 + @Local showSpeed: boolean = false; // 是否展示倍速按钮 + @Local speed: string = '1.0x'; // 倍速大小 + @Param videoUrl: string = ''; // 视频url + @Local topRectHeight: number = 0; // 系统状态栏高度 + @Local bottomRectHeight: number = 0; // 系统状态栏高度 + private avPlayer: media.AVPlayer = {} as media.AVPlayer; // 视频播放器对象 + private surfaceID: string | undefined = undefined; // 视频播放器ID + private isCreate: boolean = false; // 视频播放器是否被创建 + private xComponentController: XComponentController = new XComponentController(); + + aboutToAppear() { + // 获取系统状态栏高度 + window.getLastWindow(getContext(this)).then((lastWindow) => { + const areas = lastWindow.getWindowAvoidArea(window.AvoidAreaType.TYPE_SYSTEM); + this.topRectHeight = px2vp(areas.topRect.height); + this.bottomRectHeight = px2vp(areas.bottomRect.height); + }); + // 设置播放状态 + this.setCompleteCallback(() => { + console.log('completed state called') + this.isPlaying = !this.isPlaying + }); + // 时间上报函数 + this.setTimeUpdateCallback((time) => { + this.currentTime = time + }); + this.videoRatioLocal = this.videoRatio + this.init() + } + + aboutToDisappear() { + this.release(); + this.isLandscape = false; + } + + // 初始化AVPlayer + async init(): Promise { + await this.release(); + const context = getContext(this); + // 获取applicationContext + let applicationContext = context.getApplicationContext(); + // 通过applicationContext注册应用前后台状态监听 + let that = this + applicationContext.on('applicationStateChange', { + onApplicationForeground() { + if (that.currentTime > 0 && that.currentTime < that.totalDuration) { + that.isPlaying = true + } + }, + onApplicationBackground() { + that.isPlaying = false + } + }); + + // 获取fdSrc用于注册AVPlayer + // context.resourceManager.getRawFd(this.fileName).then(async (value: resourceManager.RawFileDescriptor) => { + // this.avPlayer = await media.createAVPlayer(); + // this.isCreate = true; + // await this.setSourceInfo(); // 视频信息上报函数 + // await this.setStateChangeCallback(); // 状态机上报回调函数 + // this.avPlayer.fdSrc = { + // fd: value.fd, + // offset: value.offset, + // length: value.length + // }; + // }); + + // 创建avPlayer实例对象 + this.avPlayer = await media.createAVPlayer(); + this.isCreate = true + // 创建状态机变化回调函数 + await this.setSourceInfo(); // 视频信息上报函数 + await this.setStateChangeCallback(); // 状态机上报回调函数 + let fd: number = fileIo.openSync(this.videoUrl, 0o0).fd; + this.avPlayer.fdSrc = { + fd: fd + } + } + + // 创建或注销AVPlayer + @Monitor('videoUrl') + createOrFinish(): void { + if (this.videoUrl !== '') { + this.init(); + } else { + this.getStop(); + this.release(); + } + } + + // 释放AVPlayer资源 + async release() { + if (this.isCreate) { + await this.avPlayer.release(); + this.isCreate = false; + this.isPlaying = false; + } + } + + getPlay() { + if (this.isCreate) { + this.avPlayer.play(); + } + } + + getPause() { + if (this.isCreate) { + this.avPlayer.pause(); + } + } + + getStop() { + if (this.isCreate) { + this.avPlayer.stop(); + } + } + + // XComponent和AVPlayer通过surfaceId绑定 + setSurfaceID(): void { + console.log('play video: surfaceID is:' + this.surfaceID); + this.avPlayer.surfaceId = this.surfaceID; + } + + setCompleteCallback(func: () => void) { + this.callbackComplete = func; + } + + setTimeUpdateCallback(func: (nol: number) => void) { + this.callbackTimeUpdate = func; + } + + setBitrateUpdateCallback(func: (bitrateList: number[]) => void) { + this.callbackBitrateUpdate = func; + } + + setErrorCallback(func: (error: string) => void) { + this.callbackErrorUpdate = func; + } + + // 视频信息上报函数 + async setSourceInfo(): Promise { + // 时间上报函数 + this.avPlayer.on('timeUpdate', (time: number) => { + console.log('timeUpdate called: time is :' + time); + console.log('timeUpdate called: currentTime is :' + this.avPlayer.currentTime); + this.callbackTimeUpdate(time); + }); + // 音量变化回调函数 + this.avPlayer.on('volumeChange', (vol: number) => { + console.log('volumeChange success,and new volume is :' + vol); + }); + // 视频播放结束触发回调 + this.avPlayer.on('endOfStream', () => { + console.log('endOfStream success'); + }); + // seek操作回调函数 + this.avPlayer.on('seekDone', (seekDoneTime: number) => { + console.log('seekDone success,and seek time is:' + seekDoneTime); + }); + // 视频总时长上报函数 + this.avPlayer.on('durationUpdate', (duration: number) => { + console.log('durationUpdate success,and durationUpdate is:' + duration); + }); + // 设置倍速播放回调函数 + this.avPlayer.on('speedDone', (speed: number) => { + console.log('speedDone success,and speed value is:' + speed); + }); + // bitrate设置成功回调函数 + this.avPlayer.on('bitrateDone', (bitrate: number) => { + console.log('bitrateDone success,and bitrate value is:' + bitrate); + }); + // 缓冲上报回调函数 + this.avPlayer.on('bufferingUpdate', (infoType: media.BufferingInfoType, value: number) => { + console.log('bufferingUpdate success,and infoType value is:' + infoType + ', value is :' + value); + }); + // 首帧上报回调函数 + this.avPlayer.on('startRenderFrame', () => { + console.log('startRenderFrame success 1'); + }); + // 视频宽高上报回调函数 + this.avPlayer.on('videoSizeChange', (width: number, height: number) => { + this.videoRatioLocal = width / height + console.log('videoSizeChange success,and width is:' + width + ', height is :' + height); + }); + // 焦点上报回调函数 + this.avPlayer.on('audioInterrupt', (info: audio.InterruptEvent) => { + // 触发焦点上报后调用暂停接口暂停播放 + console.log('audioInterrupt success,and InterruptEvent info is:' + JSON.stringify(info)); + }); + // HLS上报所有支持的比特率 + this.avPlayer.on('availableBitrates', (bitrates: number[]) => { + console.log('availableBitrates success,and availableBitrates length is:' + bitrates.length); + this.callbackBitrateUpdate(bitrates); + }); + // 设置错误监听 + this.avPlayer.on('error', (error) => { + console.log('error happened,message is :' + error.message); + this.callbackErrorUpdate('Error ' + error.code + ' - ' + error.message); + }); + } + + // 状态机上报回调函数 + async setStateChangeCallback(): Promise { + this.avPlayer.on('stateChange', async (state: string, reason: media.StateChangeReason) => { + console.log('stateChange callback function is triggered,state is:' + state + ',reason is :' + reason); + switch (state) { + case 'idle': + this.release(); + console.log('state idle called'); + break; + case 'initialized': + console.log('state initialized called'); + this.setSurfaceID(); + this.avPlayer.prepare(); + break; + case 'prepared': + console.log('state prepared called'); + this.isPlaying = true; + this.totalDuration = this.avPlayer.duration; + this.getPlay(); + // 设置全屏播放展开动画 + animateTo({ + duration: ANIMATE_DURATION, + onFinish: () => { + this.isLandscape = false; // 设置横屏 + } + }, () => { + }); + break; + case 'playing': + console.log('state playing called'); + break; + case 'paused': + console.log('state paused called'); + break; + case 'completed': + console.log('state completed called'); + this.callbackComplete(); + break; + case 'stopped': + console.log('state stopped called'); + break; + case 'released': + console.log('state released called'); + break; + case 'error': + console.log('state error called'); + break; + default: + console.log('unknown state :' + state); + break; + } + }) + } + + // isPlaying状态变化时调用 + @Monitor('isPlaying') + onChangePlay() { + this.isPlaying ? this.getPlay() : this.getPause(); + } + + @Monitor('isLandscape') + changeOrientation() { + // 获取UIAbility实例的上下文信息 + let context = getContext(this); + // 调用该接口手动改变设备横竖屏状态(设置全屏模式,先强制横屏,再加上传感器模式) + window.getLastWindow(context).then((lastWindow) => { + if (this.isLandscape) { + // 设置窗口的布局是否为沉浸式布局 + lastWindow.setWindowLayoutFullScreen(true, () => { + // 设置窗口全屏模式时导航栏、状态栏的可见模式 + lastWindow.setWindowSystemBarEnable([]); + // 设置窗口的显示方向属性,AUTO_ROTATION_LANDSCAPE表示传感器自动横向旋转模式 + lastWindow.setPreferredOrientation(window.Orientation.AUTO_ROTATION_LANDSCAPE); + }); + } else { + // 设置窗口的显示方向属性,UNSPECIFIED表示未定义方向模式,由系统判定 + lastWindow.setPreferredOrientation(window.Orientation.UNSPECIFIED, () => { + // 设置窗口全屏模式时导航栏、状态栏的可见模式 + lastWindow.setWindowSystemBarEnable(WINDOW_SYSTEM_BAR, () => { + // 设置窗口的布局是否为沉浸式布局 + lastWindow.setWindowLayoutFullScreen(false, () => { + + }); + }); + }); + } + }); + } + + // 倍速弹框 + @Builder + speedPopup() { + List({ space: SPEED_POPUP_LIST_SPACE }) { + ForEach(AVPlayerConstants.SPEED_ARRAY, (item: speedObj) => { + ListItem() { + Row() { + Text(item.text) + .fontColor('rgba(255,255,255,0.90)') + .fontSize(15) + .onClick(() => { + if (this.isCreate) { + this.avPlayer.setSpeed(item.value); + } + this.speed = item.text; + this.isSpeedShow = false; + }) + } + .padding({ left: 10 }) + .width('100%') + .height(20) + } + }, (item: speedObj) => { + return JSON.stringify(item); + }) + } + .width(80) + .padding(10) + } + + build() { + Stack({ alignContent: Alignment.Center }) { + Column() { + XComponent({ + type: XComponentType.SURFACE, + controller: this.xComponentController + }) + .width('100%') + .aspectRatio(this.videoRatioLocal) + .onLoad(() => { + this.surfaceID = this.xComponentController.getXComponentSurfaceId(); + }) + } + .borderRadius(0) + .justifyContent(FlexAlign.Center) + .width('100%') + .height('100%') + .aspectRatio(-1) + .layoutWeight(LAYOUT_WEIGHT) + .backgroundColor(Color.Black) + .zIndex(0) + + Flex({ direction: FlexDirection.Column, justifyContent: FlexAlign.SpaceBetween }) { + Blank().layoutWeight(1) + Row() { + // 播放icon + Image(this.isPlaying ? $r("app.media.media_full_screen_icon_play") : + $r("app.media.media_full_screen_icon_pause")) + .width(24) + .height(24) + .margin({ + top: 0, + bottom: 0, + left: 10, + right: 10 + }) + .onClick(() => { + this.isPlaying = !this.isPlaying + }) + // 时间轴 + Row() { + Text(getTimeString(this.currentTime)) + .fontSize(16) + .fontColor(Color.White) + .fontWeight(500) + .opacity(0.6) + Slider({ + value: Math.round(this.currentTime / this.totalDuration * 100) + }) + .selectedColor(Color.White) + .layoutWeight(1) + .trackColor(Color.Gray) + .onChange((value: number) => { + if (this.isCreate) { + this.currentTime = this.totalDuration * value / 100; + this.avPlayer.seek(this.currentTime); + } + }) + Text(getTimeString(this.totalDuration)) + .fontSize(16) + .fontColor(Color.White) + .fontWeight(500) + .opacity(0.6) + } + .layoutWeight(1) + .height(25) + .margin({ + right: 10 + }) + + // 全屏icon + if (this.showFullScreen) { + Image($r("app.media.media_full_screen_icon_large")) + .width(24) + .height(24) + .margin({ + top: 0, + bottom: 0, + left: 10, + right: 10 + }) + .opacity(0.6) + .onClick(() => { + this.isLandscape = !this.isLandscape; + this.videoRatioLocal = this.videoRatioLocal > 0 ? 1 / this.videoRatioLocal : 0 + }) + } + + // 倍速icon + if (this.showSpeed) { + Text(this.speed) + .fontColor('rgba(255,255,255,0.90)') + .fontSize(18) + .margin(15) + .onClick(() => { + this.isSpeedShow = !this.isSpeedShow; + }) + .bindPopup(this.isSpeedShow, { + builder: this.speedPopup, + placement: Placement.Top, + popupColor: 'rgba(0,0,0,0.6)' + }) + } + } + .margin({ + bottom: this.bottomRectHeight > 0 ? this.bottomRectHeight : 20 + }) + } + .visibility(Visibility.Visible) + .width('100%') + .height('100%') + .zIndex(1) + } + .visibility(Visibility.Visible) + .width('100%') + .height('100%') + .aspectRatio(-1) + .position({ x: 0, y: 0 }) + .zIndex(VIDEO_Z_INDEX) + } + + private callbackComplete: () => void = () => { // 播放至结尾状态回调 + }; + private callbackTimeUpdate: (nol: number) => void = (nol: number) => { // 时间上报函数回调 + }; + private callbackBitrateUpdate: (bitrateList: number[]) => void = (bitrateList: number[]) => { // 比特率更新回调 + }; + private callbackErrorUpdate: (error: string) => void = (error: string) => { // 错误状态回调 + }; +} \ No newline at end of file diff --git a/common/src/main/ets/VideoViewDialog/VideoViewDialog.ets b/common/src/main/ets/VideoViewDialog/VideoViewDialog.ets new file mode 100644 index 0000000..5ca860f --- /dev/null +++ b/common/src/main/ets/VideoViewDialog/VideoViewDialog.ets @@ -0,0 +1,35 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { VideoItemView } from './VideoItemView'; + +/* + 视频查看器 + */ +@CustomDialog +export struct VideoViewerDialog { + controller?: CustomDialogController + videoUrl?: string + videoRatio?: number = 2 // 元素宽高比 + + build() { + Column() { + VideoItemView({ + videoUrl: this.videoUrl, + videoRatio: this.videoRatio + }) + .width('100%') + .height('100%') + } + .width('100%') + .height('100%') + .expandSafeArea([SafeAreaType.SYSTEM], [SafeAreaEdge.TOP, SafeAreaEdge.BOTTOM]) + .onClick(() => { + this.controller?.close() + }) + } +} \ No newline at end of file diff --git a/common/src/main/ets/builder/CommonEmptyResult.ets b/common/src/main/ets/builder/CommonEmptyResult.ets new file mode 100644 index 0000000..4fce783 --- /dev/null +++ b/common/src/main/ets/builder/CommonEmptyResult.ets @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +@ComponentV2 +export struct CommonEmptyResult { + @Param emptyImage?: Resource = $r('app.media.empty_image') + @Param tips?: ResourceStr = $r('app.string.empty_tips') + @Param emptyImageHeight?: number =136 + @Param emptyImageWidth?: number = 118 + @Param fontSize?: number = 14 + @Param fontColor?: ResourceStr = '#B3B7BC' + + build() { + Column() { + Image(this.emptyImage) + .width(this.emptyImageWidth) + .height(this.emptyImageHeight) + .objectFit(ImageFit.Contain) + .margin({ top: 80 }) + + Text(this.tips) + .fontSize(this.fontSize) + .fontColor(this.fontColor) + .margin({ + top: 8 + }) + + } + .width('100%').height('100%') + .backgroundColor(Color.Transparent) + } +} \ No newline at end of file diff --git a/common/src/main/ets/builder/CommonLongLoadingProgress.ets b/common/src/main/ets/builder/CommonLongLoadingProgress.ets new file mode 100644 index 0000000..2df1efe --- /dev/null +++ b/common/src/main/ets/builder/CommonLongLoadingProgress.ets @@ -0,0 +1,45 @@ +/** + * CommonLongLoadingProgress + * NIM-WS-TS + * + * @author hongru + * @since 2025−04-11 + * + * Copyright © 2025 Netease. All rights reserved. + */ + +@Extend(Column) +function cardStyle() { + .backgroundColor(Color.White) + .width('100%') +} + +@Extend(Text) +function centerTitleStyle() { + .fontColor('#182431') + .fontSize(14) + .height(22) + .alignSelf(ItemAlign.Center) + .margin({ left: 12, top: 6 }) +} + +@ComponentV2 +export struct CommonLongLoadingProgress { + @Param contentText?: Resource | undefined = undefined + build() { + Column() { + Column() { + LoadingProgress() + .width(50) + .height(50) + .color('#51AFF8') + } + .cardStyle() + .width('100%') + Text(this.contentText) + .centerTitleStyle() + } + .height('100%') + .width('100%') + } +} \ No newline at end of file diff --git a/common/src/main/ets/builder/CommonTextInput.ets b/common/src/main/ets/builder/CommonTextInput.ets new file mode 100644 index 0000000..60dcd3c --- /dev/null +++ b/common/src/main/ets/builder/CommonTextInput.ets @@ -0,0 +1,66 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +@ComponentV2 +export struct CommonTextInput { + @Param placeHolderText?: ResourceStr = $r('app.string.text_input_placeholder') + @Param leftIcon?: Resource = $r('app.media.text_input_icon') + @Param onSubmit?: (enterKey: EnterKeyType, event: SubmitEvent) => void = undefined + @Param onTextChange?: (value: string, previewText?: PreviewText) => void = undefined + @Param keepEditableState: boolean = true // 是否保持键盘弹出 + + build() { + Stack({ + alignContent: Alignment.Start + }) { + TextInput({ + placeholder: this.placeHolderText + }) + .type(InputType.Normal) + .height(36) + .margin({ + left: 20, + right: 20 + }) + .padding({ + left: 36 + }) + .cancelButton({ + style: CancelButtonStyle.INPUT, + icon: { + src: $r('app.media.input_clean'), + size: 16, + color: "#B3B7BC" + } + }) + .borderRadius(4) + .backgroundColor('#F2F4F5') + .placeholderColor('#A6ADB6') + .onSubmit((enterKey: EnterKeyType, event: SubmitEvent) => { + if (this.onSubmit) { + this.onSubmit(enterKey, event) + } + if (this.keepEditableState) { + event.keepEditableState() + } + }) + .onChange(this.onTextChange) + .onAppear(() => { + + }) + + Image(this.leftIcon) + .height(16) + .width(16) + .margin({ + left: 36 + }) + } + .width('100%') + .height(32) + } +} \ No newline at end of file diff --git a/common/src/main/ets/builder/CustomLoadMoreBuilder.ets b/common/src/main/ets/builder/CustomLoadMoreBuilder.ets new file mode 100644 index 0000000..939ebec --- /dev/null +++ b/common/src/main/ets/builder/CustomLoadMoreBuilder.ets @@ -0,0 +1,29 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +// 自定义加载更多布局 +interface CustomLoadMoreBuilderParams { + isVisibleLoadMore?: Boolean; +} + +@Builder +export function CustomLoadMoreBuilder(params: CustomLoadMoreBuilderParams) { + + Flex({ justifyContent: FlexAlign.Center, alignItems: ItemAlign.Center }) { + LoadingProgress() + .width(18) + .height(18) + + Text('加载更多中...') + .margin({ left: 7, bottom: 1 }) + .fontSize(17) + } + .width('100%') + .height(40) + .backgroundColor('#f4f4f4') + .visibility(params.isVisibleLoadMore ? Visibility.Visible : Visibility.None) +} \ No newline at end of file diff --git a/common/src/main/ets/builder/DoubleAlertDialog.ets b/common/src/main/ets/builder/DoubleAlertDialog.ets new file mode 100644 index 0000000..4118405 --- /dev/null +++ b/common/src/main/ets/builder/DoubleAlertDialog.ets @@ -0,0 +1,71 @@ +/// 两个按钮的提示弹框 +/// 【取消】|【确定】 +@CustomDialog +export struct DoubleAlertDialog { + pathStack: NavPathStack = new NavPathStack() + controller?: CustomDialogController + title: ResourceStr = "" + message?: ResourceStr + sureText: ResourceStr = $r('app.string.common_sure') + cancelText: ResourceStr = $r('app.string.cancel') + sureTextColor: ResourceColor = "#007AFF" + cancelTextColor: ResourceColor = "#666666" + sureAction?: () => void + cancelAction?: () => void + + build() { + Column() { + Text(this.title) + .fontSize(17) + .margin({ top: 19 }) + .height(22) + + Text(this.message) + .fontSize(13) + .fontColor("#333333") + .height(35) + .margin({ top: 10 }) + + Row() + .height(1) + .width('100%') + .backgroundColor("#EFF1F4") + .margin({ top: 10 }) + + Row() { + Button(this.cancelText, { type: ButtonType.Normal }) + .fontSize(17) + .fontColor(this.cancelTextColor) + .backgroundColor(Color.White) + .width(135) + .height(44) + .onClick(() => { + this.cancelAction?.() + this.controller?.close() + }) + + Column() + .width(1) + .height('100%') + .backgroundColor("#EFF1F4") + + Button(this.sureText, { type: ButtonType.Normal }) + .fontSize(17) + .fontColor(this.sureTextColor) + .backgroundColor(Color.White) + .width(135) + .height(44) + .onClick(() => { + this.sureAction?.() + this.controller?.close() + }) + } + .height(44) + .width(270) + .alignItems(VerticalAlign.Center) + } + .height(140) + .width(270) + .backgroundColor(Color.White) + } +} \ No newline at end of file diff --git a/common/src/main/ets/builder/ListGroupHeader.ets b/common/src/main/ets/builder/ListGroupHeader.ets new file mode 100644 index 0000000..7ffe958 --- /dev/null +++ b/common/src/main/ets/builder/ListGroupHeader.ets @@ -0,0 +1,21 @@ +// 自定义组件groupHeader,作为ListItemGroup的头部组件,即A、B、C等字母列表项 +@Builder +export function ListGroupHeader(titleLetter: ResourceStr) { + Column() { + Text(titleLetter) + .fontColor('#B3B7BC') + .fontSize(14) + .backgroundColor(Color.White) + .width('100%') + .margin({ top: 16, left: 40 }) + + Row() + .height(1) + .width('100%') + .backgroundColor('#DBE0E8') + .margin({ top: 8, left: 40 }) + } + .width('100%') + .height(56) + .backgroundColor(Color.White) +} \ No newline at end of file diff --git a/common/src/main/ets/builder/NavigationBackBuilder.ets b/common/src/main/ets/builder/NavigationBackBuilder.ets new file mode 100644 index 0000000..75b665e --- /dev/null +++ b/common/src/main/ets/builder/NavigationBackBuilder.ets @@ -0,0 +1,124 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +// 通用导航栏 +interface NavigationBackBuilderParams { + title?: ResourceStr; + leftButtonTitle?: ResourceStr; + leftButtonColor?: ResourceColor; + leftButtonIcon?: Resource; + leftButtonAction?: (() => void); + showDivideLine?: boolean; + rightButtonTitle?: ResourceStr; + rightButtonColor?: ResourceColor; + rightButtonIcon?: Resource; + rightButtonAction?: (() => void); + backgroundColor?: ResourceColor; + buttonTextWidth?: number; + top?: number; + +} + +@Builder +export function NavigationBackBuilder(params?: NavigationBackBuilderParams) { + + Column() { + Row() { + if (params?.leftButtonTitle || params?.leftButtonIcon) { + if (params?.leftButtonTitle) { + Text(params?.leftButtonTitle) + .fontSize(16) + .fontColor(params?.leftButtonColor) + .width(32) + .height(18) + .margin({ left: 20 }) + .onClick(params?.leftButtonAction) + } else if (params?.leftButtonIcon) { + Image(params?.leftButtonIcon) + .width(32) + .height(32) + .padding({ + left: 3, + right: 3, + top: 3, + bottom: 3 + }) + .margin({ left: 20 }) + .onClick(params?.leftButtonAction) + } + } else { + Image($r('app.media.top_back')) + .margin({ left: 20 }) + .width(24) + .height(24) + // .padding({ + // left: 8, + // right: 8, + // top: 8, + // bottom: 8 + // }) + .onClick(params?.leftButtonAction) + } + + Text(params?.title) + .fontSize(20) + // .fontWeight(FontWeight.Bold) + .height(18) + .width('100%') + .margin({ + left: params?.buttonTextWidth ? (params.buttonTextWidth - 32 + 8) : 8, + right: (params?.rightButtonTitle || params?.rightButtonIcon) ? 8 : 60 + }) + .fontColor('#8D2316') + .layoutWeight(1) + .textAlign(TextAlign.Center) + .maxLines(1) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + + if (params?.rightButtonTitle) { + Text(params?.rightButtonTitle) + .fontSize(16) + .fontColor(params?.rightButtonColor) + .width(params?.buttonTextWidth ?? 32) + .height(18) + .margin({ right: 20 }) + .onClick(params?.rightButtonAction) + .textAlign(TextAlign.End) + } + + if (params?.rightButtonIcon) { + Image(params?.rightButtonIcon) + .width(32) + .height(32) + .padding({ + left: 3, + right: 3, + top: 3, + bottom: 3 + }) + .margin({ right: 20 }) + .onClick(params?.rightButtonAction) + } + } + .height(55) + .alignSelf(ItemAlign.Start) + + if (params?.showDivideLine) { + Row() + .width('100%') + .height(1) + .backgroundColor("#E9EFF5") + } + } + .height( params?.top ?56+ params?.top :56) + .width('100%') + .justifyContent(FlexAlign.End) + .backgroundColor(params?.backgroundColor ??$r('app.color.top_bg')) + .expandSafeArea([SafeAreaType.KEYBOARD]) + // .expandSafeArea([SafeAreaType.SYSTEM], [SafeAreaEdge.TOP]) + .zIndex(1) +} \ No newline at end of file diff --git a/common/src/main/ets/builder/NavigationTitleBuilder.ets b/common/src/main/ets/builder/NavigationTitleBuilder.ets new file mode 100644 index 0000000..6d0f87d --- /dev/null +++ b/common/src/main/ets/builder/NavigationTitleBuilder.ets @@ -0,0 +1,112 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +// 通用导航栏 +interface NavigationTitleBuilderParams { + title?: ResourceStr; + brandIcon?: Resource; + firstButtonTitle?: ResourceStr; + firstButtonColor?: ResourceColor; + firstButtonIcon?: Resource; + firstButtonAction?: (() => void); + secondButtonTitle?: ResourceStr; + secondButtonColor?: ResourceColor; + secondButtonIcon?: Resource; + secondButtonAction?: (() => void); + backgroundColor?: ResourceColor; +} + +@Builder +export function NavigationTitleBuilder(params: NavigationTitleBuilderParams) { + + Column() { + Row() { + if (params.brandIcon) { + Image(params.brandIcon) + .margin({ left: 20 }) + .width(32) + .height(32) + .objectFit(ImageFit.Contain) + } + + if (params.title) { + Text(params.title) + .fontSize(20) + .fontWeight(FontWeight.Bold) + .height(32) + .width('100%') + .margin({ left: params.brandIcon ? 12 : 20, right: 12 }) + .layoutWeight(2) + .textAlign(TextAlign.Start) + .maxLines(1) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + } + + Row() + .height(1) + .layoutWeight(1) + + if (params.firstButtonTitle) { + Text(params.firstButtonTitle) + .fontSize(16) + .fontColor(params.firstButtonColor) + .width(32) + .height(18) + .margin({ right: 20 }) + .onClick(params.firstButtonAction) + } + + if (params.firstButtonIcon) { + Image(params.firstButtonIcon) + .width(32) + .height(32) + .padding({ + left: 3, + right: 3, + top: 3, + bottom: 3 + }) + .margin({ right: (params.secondButtonTitle || params.secondButtonIcon) ? 10 : 20 }) + .onClick(params.firstButtonAction) + } + + if (params.secondButtonTitle) { + Text(params.secondButtonTitle) + .fontSize(16) + .fontColor(params.secondButtonColor) + .width(32) + .height(18) + .margin({ right: 20 }) + .onClick(params.secondButtonAction) + } + + if (params.secondButtonIcon) { + Image(params.secondButtonIcon) + .width(32) + .height(32) + .padding({ + left: 3, + right: 3, + top: 3, + bottom: 3 + }) + .margin({ right: 20 }) + .onClick(params.secondButtonAction) + } + } + .height(55) + .alignSelf(ItemAlign.Start) + + Row() + .width('100%') + .height(1) + .backgroundColor("#E9EFF5") + } + .height(56) + .width('100%') + .backgroundColor(params.backgroundColor ?? Color.White) +} \ No newline at end of file diff --git a/common/src/main/ets/builder/NetworkBrokenBuilder.ets b/common/src/main/ets/builder/NetworkBrokenBuilder.ets new file mode 100644 index 0000000..743f15f --- /dev/null +++ b/common/src/main/ets/builder/NetworkBrokenBuilder.ets @@ -0,0 +1,24 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +/// 断网横幅 +@ComponentV2 +export struct NetworkBrokenBuilder { + build() { + Column() { + Text($r('app.string.common_network_error')) + .fontSize(14) + .fontColor('#FC596A') + .width('100%') + .height(36) + .textAlign(TextAlign.Center) + } + .width('100%') + .height(36) + .backgroundColor('#FEE3E6') + } +} \ No newline at end of file diff --git a/common/src/main/ets/builder/ViewItemBuilder.ets b/common/src/main/ets/builder/ViewItemBuilder.ets new file mode 100644 index 0000000..135ebea --- /dev/null +++ b/common/src/main/ets/builder/ViewItemBuilder.ets @@ -0,0 +1,69 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { ViewItem } from '../model/ViewItem'; +import { ViewItemArrow } from '../model/ViewItemArrow'; +import { ViewItemSwitch } from '../model/ViewItemSwitch'; +import { CommonAvatar } from '../view/CommonAvatar'; + +interface ViewHolderItemBuilderParams { + items: ViewItem[]; +} + +@Builder +export function ViewItemBuilder(params: ViewItem | ViewItemArrow | ViewItemSwitch) { + Column() { + Row() { + if (params.avatarItem) { + CommonAvatar({ item: params.avatarItem }) + .width(params.titleIconSize ?? 36) + .height(params.titleIconSize ?? 36) + .borderRadius((params.titleIconRadius ?? (params.titleIconSize ?? 36 / 2))) + .margin({ left: 20 }) + } + + Text(params.title) + .fontSize(params.titleFontSize ?? 14) + .fontColor(params.titleFontColor ?? "#333333") + .height(18) + .margin({ left: params.avatarItem ? 12 : 16, right: 12 }) + .layoutWeight(1) + .maxLines(1) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .ellipsisMode(EllipsisMode.END) + + if ((params as ViewItemArrow).rightIcon) { + Image((params as ViewItemArrow).rightIcon) + .width(4.92) + .height(9.54) + .margin({ right: 20 }) + } + + if ((params as ViewItemSwitch).isOpen !== undefined) { + Toggle({ type: ToggleType.Switch, isOn: (params as ViewItemSwitch).isOpen }) + .selectedColor("#337EFF") + .width(46) + .height(28) + .margin({ right: 16 }) + .onChange((params as ViewItemSwitch).switchChange) + .enabled((params as ViewItemSwitch).enableChange) + } + } + .alignSelf(ItemAlign.Center) + .height((params.itemHeight ?? 1) - 1) + + if (params.showDivideLine ?? true) { + Row() + .width('100%') + .height(1) + .backgroundColor('#F5F8FC') + .margin({ left: 40 }) + } + } + .width('100%') + .height(params.itemHeight) +} \ No newline at end of file diff --git a/common/src/main/ets/constants/BreakpointConstants.ets b/common/src/main/ets/constants/BreakpointConstants.ets new file mode 100644 index 0000000..9ec41ed --- /dev/null +++ b/common/src/main/ets/constants/BreakpointConstants.ets @@ -0,0 +1,39 @@ +/** + * BreakpointConstants + * NIM-WS-TS + * + * @author hongru + * @since 2025−04-17 + * + * Copyright © 2025 Netease. All rights reserved. + */ +export class BreakpointConstants { + /** + * Breakpoints that represent smaller device types. + */ + static readonly BREAKPOINT_XS: string = 'xs'; + /** + * Breakpoints that represent small device types. + */ + static readonly BREAKPOINT_SM: string = 'sm'; + /** + * Breakpoints that represent middle device types. + */ + static readonly BREAKPOINT_MD: string = 'md'; + /** + * Breakpoints that represent large device types. + */ + static readonly BREAKPOINT_LG: string = 'lg'; + /** + * Breakpoints that represent large device types. + */ + static readonly BREAKPOINT_SCOPE: number[] = [0, 320, 600, 840]; + /** + * Grid row column list. + */ + static readonly GRID_ROW_COLUMNS: number[] = [12, 15, 4]; + /** + * Grid column span list. + */ + static readonly GRID_COLUMN_SPANS: number[] = [12, 6, 7, 5, 3, 4, 2]; +} \ No newline at end of file diff --git a/common/src/main/ets/constants/CommonConstants.ets b/common/src/main/ets/constants/CommonConstants.ets new file mode 100644 index 0000000..dff40fc --- /dev/null +++ b/common/src/main/ets/constants/CommonConstants.ets @@ -0,0 +1,66 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +/** + * Common constants for all features. + */ +export class CommonConstants { + /** + * Breakpoint sm. + */ + static readonly BREAKPOINTS_SM_NAME: string = 'sm'; + /** + * Breakpoint md. + */ + static readonly BREAKPOINTS_MD_NAME: string = 'md'; + /** + * Breakpoint lg. + */ + static readonly BREAKPOINTS_LG_NAME: string = 'lg'; + /** + * Breakpoint xl. + */ + static readonly BREAKPOINTS_XL_NAME: string = 'xl'; + /** + * The break point value of sm device. + */ + static readonly BREAKPOINTS_SM_SIZE: number = 0; + /** + * The break point value of md device. + */ + static readonly BREAKPOINTS_MD_SIZE: number = 600; + /** + * The break point value of lg device. + */ + static readonly BREAKPOINTS_LG_SIZE: number = 840; + /** + * The break point value of xl device. + */ + static readonly BREAKPOINTS_XL_SIZE: number = 1320; + /** + * Initialize device breakpoints. + */ + static readonly BREAKPOINTS_INITIALIZE_NAME: string = 'md'; + /** + * Initialize device breakpoint Id. + */ + static readonly BREAKPOINT_ID_INITIALIZE_NAME: string = 'unknown'; + /** + * 【听筒模式】存储 key + */ + static readonly KEY_SETTING_EARPIECE_MODE: string = 'KEY_SETTING_EARPIECE_MODE'; + /** + * 【消息已读未读功能】存储 key + */ + static readonly KEY_SETTING_MESSAGE_READ_OR: string = 'KEY_SETTING_MESSAGE_READ_OR'; + /** + * use local conversation kit + * if true , use local conversation kit + * if false , use remote conversation kit + */ + static readonly KEY_SETTING_LOCAL_CONVERSATION: string = 'KEY_SETTING_MESSAGE_READ_OR'; +} \ No newline at end of file diff --git a/common/src/main/ets/constants/DateConst.ets b/common/src/main/ets/constants/DateConst.ets new file mode 100644 index 0000000..3ead5f5 --- /dev/null +++ b/common/src/main/ets/constants/DateConst.ets @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +export class DateConst { + /** + * yyyyMMdd 格式年月日 + */ + static YMD: string = "yyyyMMdd"; + /** + * HH:mm:ss 格式时间 + */ + static HMS: string = "HH:mm:ss"; + /** + * HH:mm 格式时间 + */ + static HM: string = "HH:mm"; + /** + *yyyy-MM-dd 格式年月日 + */ + static YMD_HLINE: string = "yyyy-MM-dd"; + /** + *yyyy-MM-dd HH:mm:ss 格式日期时间 + */ + static YMD_HLINE_HMS: string = "yyyy-MM-dd HH:mm:ss"; + /** + *yyyy-MM-dd HH:mm 格式日期时间 + */ + static YMD_HLINE_HM: string = "yyyy-MM-dd HH:mm"; + /** + *yyyy/MM/dd 格式日期(注:官方bug对/兼容问题可能会有问题只显示yyyy格式日期) + */ + static YMD_BLINE: string = "yyyy/MM/dd"; + /** + *yyyy/MM/dd HH:mm:ss 格式日期(注:官方bug对/兼容问题可能会有问题只显示yyyy格式日期) + */ + static YMD_BLINE_HMS: string = "yyyy/MM/dd HH:mm:ss"; + /** + *yyyy/MM/dd HH:mm 格式日期(注:官方bug对/兼容问题可能会有问题只显示yyyy格式日期) + */ + static YMD_BLINE_HM: string = "yyyy/MM/dd HH:mm"; +} \ No newline at end of file diff --git a/common/src/main/ets/extend/StringExtend.ets b/common/src/main/ets/extend/StringExtend.ets new file mode 100644 index 0000000..85bd4e0 --- /dev/null +++ b/common/src/main/ets/extend/StringExtend.ets @@ -0,0 +1,50 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { pinyin4js } from '@ohos/pinyin4js'; + +/// 获取通讯录索引 +/// ("你好" -> "nĭ hăo" ->) "ni hao" -> "NI HAO" -> "N" +export function initalLetter(string: string): string { + /** 使用convertToPinyinString方法将汉字转换成拼音字母。 + 其中参数1为待转数据,参数2为拼音间隔字符,参数3设置是否带声调符号。 + */ + const pinyin: string = pinyin4js.convertToPinyinString(string, '', pinyin4js.WITHOUT_TONE); + if (pinyin.length > 0) { + return pinyin.toUpperCase()[0] + } + return '' +} + +/// 判断字符串是否为空 +export function StringIsEmpty(str?: string | null) { + return str === null || str === undefined || str.trim().length === 0; +} + +/// 字符串尾部截取 +/// - Parameter count: 尾部截取长度 +export function TailString(string?: string, count: number = 2): string { + if (string) { + const start: number = (string.length - count) > 0 ? string.length - count : 0 + const end: number = string.length + return string.substring(start, end) + } + return "" +} + +/** + * 获取未读数展示 + * @param unreadCount + * @returns + */ +export function GetUnreadCountStr(unreadCount: number): string { + if (unreadCount < 100) { + return `${unreadCount}` + } else { + return '99+' + } +} \ No newline at end of file diff --git a/common/src/main/ets/model/ViewItem.ets b/common/src/main/ets/model/ViewItem.ets new file mode 100644 index 0000000..f99c2a7 --- /dev/null +++ b/common/src/main/ets/model/ViewItem.ets @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { AvatarItem } from '../view/CommonAvatar'; + +export interface ViewItem { + avatarItem?: AvatarItem; + title?: ResourceStr; + subTitle?: ResourceStr; + titleIconSize?: number; + titleIconRadius?: number; + titleFontSize?: number; + titleFontColor?: ResourceColor; + backgroundColor?: ResourceColor; + showDivideLine?: boolean; + routerUrl?: string; + routerParams?: Object; + itemHeight?: number; +} \ No newline at end of file diff --git a/common/src/main/ets/model/ViewItemArrow.ets b/common/src/main/ets/model/ViewItemArrow.ets new file mode 100644 index 0000000..d366fa1 --- /dev/null +++ b/common/src/main/ets/model/ViewItemArrow.ets @@ -0,0 +1,12 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { ViewItem } from './ViewItem'; + +export interface ViewItemArrow extends ViewItem { + rightIcon?: Resource; +} \ No newline at end of file diff --git a/common/src/main/ets/model/ViewItemSwitch.ets b/common/src/main/ets/model/ViewItemSwitch.ets new file mode 100644 index 0000000..bd0ec60 --- /dev/null +++ b/common/src/main/ets/model/ViewItemSwitch.ets @@ -0,0 +1,14 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { ViewItem } from './ViewItem'; + +export interface ViewItemSwitch extends ViewItem { + isOpen?: boolean; + switchChange?: (isOpen: boolean) => void; + enableChange?: boolean; +} \ No newline at end of file diff --git a/common/src/main/ets/pages/TextEditPage.ets b/common/src/main/ets/pages/TextEditPage.ets new file mode 100644 index 0000000..4e82a86 --- /dev/null +++ b/common/src/main/ets/pages/TextEditPage.ets @@ -0,0 +1,105 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { NavigationBackBuilder } from '../builder/NavigationBackBuilder' + +export interface TextEditParams { + content: string + title: ResourceStr + maxLength: number + showSave: boolean + maxLine?: number + height?: Length + emptyTextEnable?: boolean +} + +/** + * 通用文本编辑页面 + */ +@ComponentV2 +export struct TextEditPage { + pathStack: NavPathStack = new NavPathStack() + @Local params: TextEditParams | null = null + @Local content: string = '' + @Local maxLine: number = 3 + @Local textHeight: Length = 100 + + build() { + NavDestination() { + NavigationBackBuilder( + { + title: this.params?.title, + leftButtonTitle: $r('app.string.cancel'), + leftButtonColor: '#ff666666', + leftButtonAction: () => { + this.pathStack.pop() + }, + rightButtonTitle: this.params?.showSave ? $r('app.string.save') : undefined, + rightButtonColor: (this.params?.emptyTextEnable === false + && this.content.length <= 0) ? '#80337EFF' : '#ff337EFF', + backgroundColor: '#ffEFF1F4', + rightButtonAction: this.params?.showSave ? () => { + if (this.params?.emptyTextEnable === false + && this.content.length <= 0) { + return + } + this.pathStack.pop(this.content) + } : undefined + } + ) + Stack({ alignContent: Alignment.End }) { + TextArea({ text: this.content }) + .fontSize(16) + .fontColor("#333333") + .maxLines(this.maxLine) + .height(this.textHeight) + .backgroundColor(Color.White) + .maxLength(this.params?.maxLength) + .showCounter(true, { + thresholdPercentage: 1 + }) + .onChange((value: string) => { + this.content = value + }) + .padding({ + top: 16, + bottom: 16, + right: 28, + left: 16 + }) + + if (this.content.length > 0) { + Image($r('app.media.input_clean')) + .width(16) + .height(16) + .onClick(() => { + this.content = '' + }) + .margin({ + right: 12 + }) + } + } + .margin({ left: 20, right: 20 }) + .borderRadius(8) + } + .hideTitleBar(true) + .backgroundColor('#ffEFF1F4') + .onReady((context: NavDestinationContext) => { + this.pathStack = context.pathStack + this.params = this.pathStack.getParamByName("TextEditPage")[0] as TextEditParams + this.content = this.params.content + this.maxLine = this.params.maxLine ?? 3 + this.textHeight = this.params.height ?? 100 + }) + } +} + +@Builder +export function TextEditPageBuilder() { + TextEditPage() +} \ No newline at end of file diff --git a/common/src/main/ets/utils/BreakpointSystem.ets b/common/src/main/ets/utils/BreakpointSystem.ets new file mode 100644 index 0000000..560e69a --- /dev/null +++ b/common/src/main/ets/utils/BreakpointSystem.ets @@ -0,0 +1,81 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { mediaquery } from '@kit.ArkUI'; +import { CommonConstants } from '../constants/CommonConstants'; + +declare interface BreakPointTypeOption extends Record { + sm?: T; + md?: T; + lg?: T; + xl?: T; + xxl?: T; +} + +export class BreakPointType { + options: BreakPointTypeOption; + + constructor(option: BreakPointTypeOption) { + this.options = option; + } + + getValue(currentBreakPoint: string): T { + return this.options[currentBreakPoint] as T; + } +} + +class Breakpoint { + name: string = ''; + size: number = 0; + mediaQueryListener?: mediaquery.MediaQueryListener; +} + +export class BreakpointSystem { + private currentBreakpoint: string = CommonConstants.BREAKPOINTS_INITIALIZE_NAME; + private breakpointId: string = CommonConstants.BREAKPOINT_ID_INITIALIZE_NAME; + private breakpoints: Breakpoint[] = [ + { name: CommonConstants.BREAKPOINTS_SM_NAME, size: CommonConstants.BREAKPOINTS_SM_SIZE }, + { name: CommonConstants.BREAKPOINTS_MD_NAME, size: CommonConstants.BREAKPOINTS_MD_SIZE }, + { name: CommonConstants.BREAKPOINTS_LG_NAME, size: CommonConstants.BREAKPOINTS_LG_SIZE }, + { name: CommonConstants.BREAKPOINTS_XL_NAME, size: CommonConstants.BREAKPOINTS_XL_SIZE } + ]; + + constructor(breakpointId: string) { + this.breakpointId = breakpointId; + } + + public register(): void { + this.breakpoints.forEach((breakpoint: Breakpoint, index: number) => { + let condition: string; + if (index === this.breakpoints.length - 1) { + condition = `(${breakpoint.size}vp<=width)`; + } else { + condition = `(${breakpoint.size}vp<=width<${this.breakpoints[index + 1].size}vp)`; + } + + breakpoint.mediaQueryListener = mediaquery.matchMediaSync(condition); + breakpoint.mediaQueryListener.on('change', (mediaQueryResult: mediaquery.MediaQueryResult) => { + if (mediaQueryResult.matches) { + this.updateCurrentBreakpoint(breakpoint.name); + } + }) + }) + } + + public unregister(): void { + this.breakpoints.forEach((breakpoint: Breakpoint) => { + breakpoint.mediaQueryListener?.off('change'); + }) + } + + private updateCurrentBreakpoint(breakpoint: string): void { + if (this.currentBreakpoint !== breakpoint) { + this.currentBreakpoint = breakpoint; + AppStorage.set(this.breakpointId, this.currentBreakpoint); + } + } +} \ No newline at end of file diff --git a/common/src/main/ets/utils/DateUtil.ets b/common/src/main/ets/utils/DateUtil.ets new file mode 100644 index 0000000..a94d993 --- /dev/null +++ b/common/src/main/ets/utils/DateUtil.ets @@ -0,0 +1,153 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +export class DateUtil { + /** + *将输入的日期字符串转换为Date日期类型 + * @param dateString + * @returns + */ + static parse(dateString: string): Date { + return new Date(dateString); + } + + /** + *将传入的日期字符串按照传入的format进行格式化输出,不传默认为yyyy-MM-dd,日期格式化年月日时分秒为y-M-d H:m:s + * @param value + * @param format 格式化字符串 + * @returns + */ + static formatDate(value: string, format: string = 'yyyy-MM-dd'): string { + const date = new Date(value); + if (value.split(' ').length <= 1 && value.split('T').length <= 1) { + date.setHours(0); + date.setMinutes(0); + date.setSeconds(0); + } + const year = date.getFullYear(); + const month = DateUtil.padZero(date.getMonth() + 1); + const day = DateUtil.padZero(date.getDate()); + const hours = DateUtil.padZero(date.getHours()); + const minutes = DateUtil.padZero(date.getMinutes()); + const seconds = DateUtil.padZero(date.getSeconds()); + let formattedDate = format.replace("yyyy", year.toString()); + formattedDate = formattedDate.replace("MM", month); + formattedDate = formattedDate.replace("dd", day); + formattedDate = formattedDate.replace("HH", hours); + formattedDate = formattedDate.replace("mm", minutes); + formattedDate = formattedDate.replace("ss", seconds); + return formattedDate; + } + + /** + * 时间戳序列化 + * @param timestamp + * @returns + */ + static formatTimestamp(timestamp: number): string { + const currentDate = new Date(); + const targetDate = new Date(timestamp); + const yearDiff = currentDate.getFullYear() - targetDate.getFullYear(); + const monthDiff = currentDate.getMonth() - targetDate.getMonth(); + const dayDiff = currentDate.getDate() - targetDate.getDate(); + + if (yearDiff > 0) { + return `${targetDate.getFullYear()}-${targetDate.getMonth() + 1}-${targetDate.getDate()}`; + } else if (monthDiff > 0 || dayDiff > 0) { + const hours = targetDate.getHours().toString().padStart(2, '0'); + const minutes = targetDate.getMinutes().toString().padStart(2, '0'); + return `${targetDate.getMonth() + 1}-${targetDate.getDate()} ${hours}:${minutes}`; + } else { + const hours = targetDate.getHours().toString().padStart(2, '0'); + const minutes = targetDate.getMinutes().toString().padStart(2, '0'); + return `${hours}:${minutes}`; + } + } + + /** + *将日期类型的Date根据传入的format格式化成日期字符串(format必传) + * @param date + * @param formatString 格式化字符串 + * @returns + */ + static format(date: Date, formatString: string): string { + const year = date.getFullYear(); + const month = DateUtil.padZero(date.getMonth() + 1); + const day = DateUtil.padZero(date.getDate()); + const hours = DateUtil.padZero(date.getHours()); + const minutes = DateUtil.padZero(date.getMinutes()); + const seconds = DateUtil.padZero(date.getSeconds()); + + let formattedDate = formatString.replace("yyyy", year.toString()); + formattedDate = formattedDate.replace("MM", month); + formattedDate = formattedDate.replace("dd", day); + formattedDate = formattedDate.replace("HH", hours); + formattedDate = formattedDate.replace("mm", minutes); + formattedDate = formattedDate.replace("ss", seconds); + + return formattedDate; + } + + /** + * 计算两个Date的日期差单位为天 + * @param startDate 开始日期 + * @param endDate 结束日期 + * @returns + */ + static dateDiff(startDate: Date, endDate: Date): number { + const oneDay = 24 * 60 * 60 * 1000; // 一天的毫秒数 + // 将时间戳转换为整数天数 + const start = Math.floor(startDate.getTime() / oneDay); + const end = Math.floor(endDate.getTime() / oneDay); + const difference = end - start; // 计算差值天数 + return difference; + } + + /** + *计算两个字符串日期的差单位为天 + * @param startDateStr 开始日期字符串 + * @param endDateStr 结束日期字符串 + * @returns + */ + static strDateDiff(startDateStr: string, endDateStr: string): number { + let startDate = new Date(startDateStr); + let endDate = new Date(endDateStr); + const oneDay = 24 * 60 * 60 * 1000; // 一天的毫秒数 + const difference = Math.floor((endDate.getTime() - startDate.getTime()) / oneDay); // 计算差值天数 + return difference; + } + + /** + * 判断传入字符串是否是日期字符串 + * @param value 待验证的字符串 + * @returns + */ + public static isDate(value: string): boolean { + //日期类型正则集合 + const dateTimeRegexList = [ + /^\d{8}$/, + /^([01]\d|2[0-3]):[0-5]\d(:[0-5]\d)?$/, + /^([01]\d|2[0-3]):[0-5]\d$/, + /^\d{4}[-/]\d{2}[-/]\d{2}$/, + /^\d{4}[-/]\d{2}[-/]\d{2} ([01]\d|2[0-3]):[0-5]\d(:[0-5]\d)?$/, + /^\d{4}[/]\d{2}[/]\d{2}$/, + /^\d{4}[/]\d{2}[/]\d{2} ([01]\d|2[0-3]):[0-5]\d(:[0-5]\d)?$/, + /^\d{4}-\d{2}-\d{2}T([01]\d|2[0-3]):[0-5]\d:[0-5]\d\.\d{1,3}Z$/ + ]; + let result = dateTimeRegexList.filter(item => { + return item.test(value) + }).length; + if (result > 0) { + return true; + } + return false; + } + + private static padZero(num: number): string { + return num.toString().padStart(2, "0"); + } +} \ No newline at end of file diff --git a/common/src/main/ets/utils/FileUtil.ets b/common/src/main/ets/utils/FileUtil.ets new file mode 100644 index 0000000..f53f9a2 --- /dev/null +++ b/common/src/main/ets/utils/FileUtil.ets @@ -0,0 +1,73 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import fs from '@ohos.file.fs'; +import { BusinessError } from '@kit.BasicServicesKit'; + +export class FileUtils { + // 复制文件 + // @param src 源文件路径 + // @param dest 目标文件路径 + static copyFile(src: string, dest: string) { + if (src.length <= 0) { + return + } + if (dest.length <= 0) { + return + } + if (src === dest) { + return + } + try { + const file = fs.openSync(src, fs.OpenMode.READ_ONLY) + fs.copyFileSync(file.fd, dest) + } catch (err) { + console.error('netease copy file failed', err); + } + } + + // 删除目录 + // @param path 文件夹路径 + static async deleteDir(path: string) { + if (path.length <= 0) { + return + } + try { + await fs.rmdir(path) + } catch (err) { + console.error('netease delete dir failed', err); + } + } + + // 删除文件 + // @param path 文件路径 + static async deleteFile(path: string) { + if (path.length <= 0) { + return + } + try { + await fs.unlink(path) + } catch (err) { + console.error('netease delete file failed', err); + } + } + + static async createFile(path: string) { + if (path.length <= 0) { + return + } + let file = fs.openSync(path, fs.OpenMode.CREATE | fs.OpenMode.READ_WRITE); + fs.createRandomAccessFile(file).then((randomAccessFile: fs.RandomAccessFile) => { + randomAccessFile.close(); + }).catch((err: BusinessError) => { + console.error("netease create randomAccessFile failed with error message: " + err.message + ", error code: " + + err.code); + }).finally(() => { + fs.closeSync(file); + }); + } +} diff --git a/common/src/main/ets/utils/FuncUtils.ets b/common/src/main/ets/utils/FuncUtils.ets new file mode 100644 index 0000000..9dd5b41 --- /dev/null +++ b/common/src/main/ets/utils/FuncUtils.ets @@ -0,0 +1,21 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +/** + * 给函数的执行加上动画 + * @param fn:要在动画内执行的回调函数,通常fn里面会改变状态变量 + * @param duration:动画持续时长 + * @param curve:动画区线 + */ +export function runWithAnimation( + fn: Function, + duration: number = 300, + curve: Curve = Curve.Smooth): void { + animateTo({ duration: duration, curve: curve }, () => { + fn(); + }) +} \ No newline at end of file diff --git a/common/src/main/ets/utils/JSONUtil.ets b/common/src/main/ets/utils/JSONUtil.ets new file mode 100644 index 0000000..f362c83 --- /dev/null +++ b/common/src/main/ets/utils/JSONUtil.ets @@ -0,0 +1,213 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { DateConst } from '../constants/DateConst'; +import { DateUtil } from './DateUtil'; + +export class JSONUtil { + /** + * 将传入的json对象格式化成json字符串 + * @param object 待转换的对象 + * @param formatStr 字符串格式化模版 + * @returns + */ + static toJSONString(object: Object, formatStr?: string): string { + const stringifyValue = (value: Object): string => { + if (value instanceof Map) { + let jsonObject: Record = {}; + value.forEach((val: string, key: Object) => { + if (key !== undefined && val !== undefined) { + jsonObject[key as string] = stringifyValue(val); + } + }); + return JSON.stringify(jsonObject); + } else if (Array.isArray(value)) { + let a: Object[] = value.map((item: Object) => stringifyValue(item)); + return JSON.stringify(a); + } else if (value instanceof Date) { + if (!formatStr) { + formatStr = DateConst.YMD_HLINE + } + return DateUtil.format(value, formatStr); + } else if (typeof value === 'number') { + return new String(value).toString(); + } else if (typeof value === 'boolean') { + return new String(value).toString(); + } else if (typeof value === 'object') { + let result: Record = {}; + let val = value as Record; + for (let key of Object.entries(val)) { + result[key[0]] = stringifyValue(key[1]); + } + return JSON.stringify(result); + } else { + return value; + } + }; + + if (Array.isArray(object)) { + return JSON.stringify(object.map((item: Object) => stringifyValue(item))); + } else { + return stringifyValue(object); + } + } + + + /** + *将传入的json字符串格式化为Object对象 + * @param jsonStr + * @returns + */ + static parse(jsonStr: string): Object { + return JSON.parse(jsonStr); + } + + + /** + * 将传入的json字符串格式化为指定的实体对象,如果实体中有日期类型默认为yyyy-MM-dd,并且支持嵌套类 + * @param jsonStr 待转换字符串 + * @param formatStr 字符串格式化模版 + */ + static parseObject(jsonStr: string, formatStr?: string): T { + const parseValue = (value: Object): Object => { + if (JSONUtil.isJSONStringArray(value as string)) { + return JSONUtil.parseStringArray(value as string); + } else if (!DateUtil.isDate(value as string) && JSONUtil.isNumber(value as string)) { + return parseFloat(value as string); + } else if (DateUtil.isDate(value as string)) { + if (!formatStr) { + formatStr = DateConst.YMD_HLINE + } + return DateUtil.formatDate(value as string, formatStr); + } else if (JSONUtil.isBoolean(value as string)) { + return new Boolean(value).valueOf(); + } else if (JSONUtil.isJSONString(value as string)) { + return JSONUtil.parseObject(value as string); + } else { + return value; + } + }; + let result: Record = {}; + let json: Record = JSON.parse(jsonStr); + for (let key of Object.entries(json)) { + + + let value = key[1]; + if (Array.isArray(value)) { + result[key[0]] = parseValue(value) as []; + } else if (JSONUtil.isJSONStringArray(value as string)) { + result[key[0]] = parseValue(value) as []; + } else { + result[key[0]] = parseValue(value); + } + } + return result as T; + } + + + /** + * 将传入的json字符串格式化为指定的实体对象集合 + * @param jsonStr + * @param formatStr 字符串格式化模版 + * @returns + */ + static parseArray(jsonStr: string, formatStr?: string): Array { + let result: Array = new Array(); + let arr: Record = JSON.parse(jsonStr); + for (let index = 0; index < arr.length; index++) { + const item = arr[index]; + result.push(JSONUtil.parseObject(item as string, formatStr)); + } + return result; + } + + /** + * 将字符串格式Array转换成Array数组 + * @param str 待验证字符串 + * @returns + */ + public static parseStringArray(jsonStr: string): Array { + const jsonArray: Record = JSON.parse(jsonStr); // 解析字符串为对象数组 + const result: Array = new Array(); + for (let key of Object.entries(jsonArray as Record)) { + const obj: Record = JSON.parse(key[1] as string); // 解析字符串为对象 + result.push(obj); + } + return result; + } + + /** + * 判断传入的字符串是否是布尔类型 + * @param str + * @returns + */ + public static isBoolean(str: string): boolean { + return typeof str === 'boolean' || str === 'true' || str === 'false'; + } + + /** + * 判断是否是字符串格式Array + * @param str 待验证字符串 + * @returns + */ + public static isJSONStringArray(str: string): boolean { + try { + const jsonArray: Record = JSON.parse(str); + if (!Array.isArray(jsonArray)) { + return false; + } + for (let key of Object.entries(jsonArray as Record)) { + if (!JSONUtil.isJSONString(key[1] as string)) { + return false; + } + } + return true; + } catch (error) { + return false; + } + } + + /** + * 判断是否是json数组 + * @param str + * @returns + */ + public static isJSONArray(str: string): boolean { + try { + const jsonArray: Record = JSON.parse(str); + if (!Array.isArray(jsonArray)) { + return false; + } + return true; + } catch (error) { + return false; + } + } + + /** + * 判断是否是字符串格式json + * @param str 待验证字符串 + * @returns + */ + public static isJSONString(str: string): boolean { + try { + JSON.parse(str); + return true; + } catch (error) { + return false; + } + } + + /** + * 是否是字符串 + * @param str 待验证字符串 + * @returns + */ + public static isNumber(str: string): boolean { + return /^\d+(\.\d+)?$/.test(str); + } +} \ No newline at end of file diff --git a/common/src/main/ets/utils/Logger.ets b/common/src/main/ets/utils/Logger.ets new file mode 100644 index 0000000..3de5bec --- /dev/null +++ b/common/src/main/ets/utils/Logger.ets @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { hilog } from '@kit.PerformanceAnalysisKit'; + +export class Logger { + static PREFIX: string = 'testTag'; + static DOMAIN: number = 0xFF00; + static FORMAT: string = '%{public}s, %{public}s'; + + static debug(...args: string[]): void { + hilog.debug(Logger.DOMAIN, Logger.PREFIX, Logger.FORMAT, args); + } + + static info(...args: string[]): void { + hilog.info(Logger.DOMAIN, Logger.PREFIX, Logger.FORMAT, args); + } + + static warn(...args: string[]): void { + hilog.warn(Logger.DOMAIN, Logger.PREFIX, Logger.FORMAT, args); + } + + static error(...args: string[]): void { + hilog.error(Logger.DOMAIN, Logger.PREFIX, Logger.FORMAT, args); + } +} \ No newline at end of file diff --git a/common/src/main/ets/utils/MediaUtils.ets b/common/src/main/ets/utils/MediaUtils.ets new file mode 100644 index 0000000..c86467b --- /dev/null +++ b/common/src/main/ets/utils/MediaUtils.ets @@ -0,0 +1,200 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import picker from '@ohos.file.picker'; +import { photoAccessHelper } from '@kit.MediaLibraryKit'; +import { BusinessError } from '@kit.BasicServicesKit'; +import { dataSharePredicates } from '@kit.ArkData'; +import { common } from '@kit.AbilityKit'; +import { camera, cameraPicker } from '@kit.CameraKit'; + +export class SelectResult { + public uri?: string; + public name?: string; + public errorMsg?: string; + // 视频宽度(只支持视频) + public width?: number; + // 视频高度(只支持视频) + public height?: number; + // 视频时长(只支持视频) + public duration?: number; + // 视频首帧(只支持视频) + public thumbnail?: PixelMap; + // 文件类型 + public type: photoAccessHelper.PhotoType = photoAccessHelper.PhotoType.IMAGE; +} + + +export class MediaUtils { + // 显示相册选择器(包含视频照片) + static async showMediaPicker(mimeType: photoAccessHelper.PhotoViewMIMETypes): Promise { + console.log("net ease show photo picker"); + const result: SelectResult = await new Promise((resolve: Function) => { + const photoSelectOptions = new photoAccessHelper.PhotoSelectOptions(); + // 过滤选择媒体文件类型为IMAGE + photoSelectOptions.MIMEType = mimeType; + // 选择媒体文件的最大数目 + photoSelectOptions.maxSelectNumber = 1; + const photoViewPicker = new photoAccessHelper.PhotoViewPicker(); + photoViewPicker.select(photoSelectOptions) + .then(async (photoSelectResult: photoAccessHelper.PhotoSelectResult) => { + const context = getContext(photoSelectOptions) + const uri = photoSelectResult.photoUris[0]; + const selectResult = MediaUtils.getMediaInfo(context, uri) + resolve(selectResult); + }) + .catch((err: BusinessError) => { + console.error(`net ease Invoke photoViewPicker.select failed, code is ${err.code}, message is ${err.message}`); + const selectResult = new SelectResult(); + selectResult.errorMsg = + `net ease Invoke photoViewPicker.select failed, code is ${err.code}, message is ${err.message}`; + resolve(selectResult); + }) + }); + return result; + } + + // 显示相册(图片)选择器 + static async showImagePicker(): Promise { + console.log("net ease show photo picker"); + const result: SelectResult = await MediaUtils.showMediaPicker(photoAccessHelper.PhotoViewMIMETypes.IMAGE_TYPE) + return result; + } + + // 显示相册(视频)选择器 + static async showVideoPicker(): Promise { + console.log("net ease show photo picker"); + const result: SelectResult = await MediaUtils.showMediaPicker(photoAccessHelper.PhotoViewMIMETypes.VIDEO_TYPE) + return result; + } + + // 显示相册(图片+视频)选择器 + static async showImageVideoPicker(): Promise { + console.log("net ease show photo picker"); + const result: SelectResult = await MediaUtils.showMediaPicker(photoAccessHelper.PhotoViewMIMETypes.IMAGE_VIDEO_TYPE) + return result; + } + + // 文件选择器 + static async showFilePicker(): Promise { + console.log("net ease show file picker"); + const result: SelectResult = await new Promise((resolve: Function) => { + let uris: Array = []; + let documentSelectOptions = new picker.DocumentSelectOptions(); + documentSelectOptions.maxSelectNumber = 1; + + const documentViewPicker = new picker.DocumentViewPicker(); // 创建文件选择器实例 + documentViewPicker.select(documentSelectOptions).then((documentSelectResult: Array) => { + uris = documentSelectResult; + console.info('net ease documentViewPicker.select to file succeed and uris are:' + uris); + const selectResult = new SelectResult(); + if (uris.length > 0) { + console.log("net ease first uri is:" + uris[0]); + selectResult.uri = uris[0]; + } + resolve(selectResult); + }).catch((err: BusinessError) => { + console.error(`net ease Invoke documentViewPicker.select failed, code is ${err.code}, message is ${err.message}`); + const selectResult = new SelectResult(); + selectResult.errorMsg = + `net ease Invoke documentViewPicker.select failed, code is ${err.code}, message is ${err.message}`; + resolve(selectResult); + }) + }); + return result; + } + + // 显示相机选择器 + static async showCameraPicker(context: common.UIAbilityContext, + mediaType: cameraPicker.PickerMediaType): Promise { + + const result: SelectResult = await new Promise((resolve: Function) => { + try { + // 相机选择器的配置信息 + let pickerProfile: cameraPicker.PickerProfile = { + cameraPosition: camera.CameraPosition.CAMERA_POSITION_BACK + }; + + // 相机选择器的媒体类型 + let mediaTypes: cameraPicker.PickerMediaType[] = [ + mediaType + ] + + let context1 = getContext(pickerProfile) as common.UIAbilityContext; + + cameraPicker.pick(context1, mediaTypes, pickerProfile).then((result) => { + let uri = result.resultUri + let selectResult = MediaUtils.getMediaInfo(context1, uri); + console.log("net ease the pick pickerResult is:" + JSON.stringify(result)); + resolve(selectResult); + }); + + } catch (error) { + let err = error as BusinessError; + let selectResult = new SelectResult(); + selectResult.errorMsg = err.code + ":" + err.message; + selectResult.errorMsg = + `net ease Invoke camera failed, code is ${err.code}, message is ${err.message}`; + resolve(selectResult); + } + }); + return result; + + } + + // 获取 photoAsset + // 得到uri对应的PhotoAsset对象,读取文件的部分信息 + static async getPhotoAsset(context: Context, uri?: string): Promise { + let phAccessHelper = photoAccessHelper.getPhotoAccessHelper(context); + let predicates: dataSharePredicates.DataSharePredicates = new dataSharePredicates.DataSharePredicates(); + // 配置查询条件,使用PhotoViewPicker选择图片返回的uri进行查询 + predicates.equalTo(photoAccessHelper.PhotoKeys.URI, uri); + let fetchOption: photoAccessHelper.FetchOptions = { + fetchColumns: [photoAccessHelper.PhotoKeys.WIDTH, + photoAccessHelper.PhotoKeys.HEIGHT, + photoAccessHelper.PhotoKeys.TITLE, + photoAccessHelper.PhotoKeys.ORIENTATION, + photoAccessHelper.PhotoKeys.DURATION], + predicates: predicates + }; + let fetchResult: photoAccessHelper.FetchResult = + await phAccessHelper.getAssets(fetchOption); + // 得到uri对应的PhotoAsset对象,读取文件的部分信息 + return await fetchResult.getFirstObject(); + } + + // 获取媒体信息 + static async getMediaInfo(context: Context, uri?: string): Promise { + // 得到uri对应的PhotoAsset对象,读取文件的部分信息 + const photoAsset: photoAccessHelper.PhotoAsset = await MediaUtils.getPhotoAsset(context, uri); + const selectResult = new SelectResult(); + // let srcName = photoAsset.get(photoAccessHelper.PhotoKeys.TITLE) as string; // 不带后缀 + let srcName = photoAsset.displayName; // 带后缀 + let srcType = photoAsset.photoType + let srcWidth = photoAsset.get(photoAccessHelper.PhotoKeys.WIDTH) as number; + let srcHeight = photoAsset.get(photoAccessHelper.PhotoKeys.HEIGHT) as number; + let srcDuration = photoAsset.get(photoAccessHelper.PhotoKeys.DURATION) as number; + let srcOrientation = photoAsset.get(photoAccessHelper.PhotoKeys.ORIENTATION) as number; + if (srcOrientation === 90 || srcOrientation === 270) { + const width = srcWidth + srcWidth = srcHeight + srcHeight = width + } + selectResult.uri = uri; + selectResult.name = srcName; + selectResult.type = srcType; + selectResult.width = srcWidth; + selectResult.height = srcHeight; + selectResult.duration = srcDuration; + + selectResult.thumbnail = await photoAsset.getThumbnail({ + height: srcHeight, + width: srcWidth + }) + return selectResult; + } +} \ No newline at end of file diff --git a/common/src/main/ets/utils/NECommonUtils.ets b/common/src/main/ets/utils/NECommonUtils.ets new file mode 100644 index 0000000..126abfd --- /dev/null +++ b/common/src/main/ets/utils/NECommonUtils.ets @@ -0,0 +1,34 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { promptAction } from '@kit.ArkUI'; + +export class NECommonUtils { + /// toast on bottom + public static showToast(msg: ResourceStr) { + try { + promptAction.showToast({ + message: msg, + alignment: Alignment.Bottom + }); + } catch (error) { + console.error(`showToast args error code is ${error.code}, message is ${error.message}`); + } + ; + } + + /// 获取简称 (尾部截取) + /// - Parameter showAlias: 是否优先显示备注 + /// - Parameter count: 尾部截取长度 + public static shortName(name?: string, count: number = 2): string { + if (name) { + const start: number = (name.length - count) > 0 ? name.length - count : 0 + const end: number = name.length + return name.substring(start, end) + } + return "" + } +} \ No newline at end of file diff --git a/common/src/main/ets/utils/PermissionsUtils.ets b/common/src/main/ets/utils/PermissionsUtils.ets new file mode 100644 index 0000000..e00cf00 --- /dev/null +++ b/common/src/main/ets/utils/PermissionsUtils.ets @@ -0,0 +1,53 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +// found in the LICENSE file. + +import { abilityAccessCtrl, common, Permissions } from '@kit.AbilityKit'; +import { BusinessError } from '@kit.BasicServicesKit'; + +export class PermissionsRequestResult { + // 错误信息 + public error?: BusinessError; + // 是否授权 + public grantStatus?: boolean; +} + +export class PermissionsUtils { + static async reqPermissionsFromUser(permissions: Array, + context: common.UIAbilityContext): Promise { + + const result: PermissionsRequestResult = await new Promise((resolve: Function) => { + console.log("net ease reqPermissionsFromUser") + let atManager: abilityAccessCtrl.AtManager = abilityAccessCtrl.createAtManager(); + // requestPermissionsFromUser会判断权限的授权状态来决定是否唤起弹窗 + atManager.requestPermissionsFromUser(context, permissions).then((data) => { + let grantStatus: Array = data.authResults; + let length: number = grantStatus.length; + let permissionsRequestResult = new PermissionsRequestResult(); + if (grantStatus.length > 0) { + const grant = grantStatus[0]; + if (grant === 0) { + // 用户授权,可以继续访问目标操作 + permissionsRequestResult.grantStatus = true; + } else { + // 用户拒绝授权,提示用户必须授权才能访问当前页面的功能,并引导用户到系统设置中打开相应的权限 + permissionsRequestResult.grantStatus = false; + } + } + resolve(permissionsRequestResult); + + }).catch((err: BusinessError) => { + console.error(`netease Failed to request permissions from user. Code is ${err.code}, message is ${err.message}`); + let permissionsRequestResult = new PermissionsRequestResult(); + permissionsRequestResult.error = err; + resolve(permissionsRequestResult); + }) + }); + return result + } +} \ No newline at end of file diff --git a/common/src/main/ets/utils/PreferencesUtil.ets b/common/src/main/ets/utils/PreferencesUtil.ets new file mode 100644 index 0000000..37db113 --- /dev/null +++ b/common/src/main/ets/utils/PreferencesUtil.ets @@ -0,0 +1,251 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import common from '@ohos.app.ability.common'; +import { preferences } from '@kit.ArkData'; + +let preference: preferences.Preferences | undefined = undefined +const context = getContext(this) as common.UIAbilityContext + +export class PreferencesUtil { + private readonly TAG: string = 'net ease PreferenceUtil'; + + writeString(key: string, value?: string) { + if (preference === undefined) { + this.getPreferences() + } + try { + preference!!.putSync(key, value) + } catch (e) { + console.error(this.TAG, 'Failed to write value, cause:' + e) + } + preference!!.flush() + } + + readString(key: string, defaultValue?: string): string | undefined { + if (preference === undefined) { + this.getPreferences() + } + let value: preferences.ValueType | undefined = undefined + try { + value = preference!!.getSync(key, defaultValue) + } catch (e) { + console.error(this.TAG, 'Failed to read value, cause:' + e) + } + return value as string | undefined + } + + writeArrayString(key: string, value?: Array) { + if (preference === undefined) { + this.getPreferences() + } + try { + preference!!.putSync(key, value) + } catch (e) { + console.error(this.TAG, 'Failed to write value, cause:' + e) + } + preference!!.flush() + } + + readArrayString(key: string, defaultValue?: Array): Array | undefined { + if (preference === undefined) { + this.getPreferences() + } + let value: preferences.ValueType | undefined = undefined + try { + value = preference!!.getSync(key, defaultValue) + } catch (e) { + console.error(this.TAG, 'Failed to read value, cause:' + e) + } + return value as Array | undefined + } + + writeNumber(key: string, value?: number) { + if (preference === undefined) { + this.getPreferences() + } + try { + preference!!.putSync(key, value) + } catch (e) { + console.error(this.TAG, 'Failed to write value, cause:' + e) + } + preference!!.flush() + } + + readNumber(key: string, defaultValue?: number): number | undefined { + if (preference === undefined) { + this.getPreferences() + } + let value: preferences.ValueType | undefined = undefined + try { + value = preference!!.getSync(key, defaultValue) + } catch (e) { + console.error(this.TAG, 'Failed to read value, cause:' + e) + } + return value as number | undefined + } + + writeArrayNumber(key: string, value?: Array) { + if (preference === undefined) { + this.getPreferences() + } + try { + preference!!.putSync(key, value) + } catch (e) { + console.error(this.TAG, 'Failed to write value, cause:' + e) + } + preference!!.flush() + } + + readArrayNumber(key: string, defaultValue?: Array): Array | undefined { + if (preference === undefined) { + this.getPreferences() + } + let value: preferences.ValueType | undefined = undefined + try { + value = preference!!.getSync(key, defaultValue) + } catch (e) { + console.error(this.TAG, 'Failed to read value, cause:' + e) + } + return value as Array | undefined + } + + writeBoolean(key: string, value?: boolean) { + if (preference === undefined) { + this.getPreferences() + } + try { + preference!!.putSync(key, value) + } catch (e) { + console.error(this.TAG, 'Failed to write value, cause:' + e) + } + preference!!.flush() + } + + readBoolean(key: string, defaultValue?: boolean): boolean | undefined { + if (preference === undefined) { + this.getPreferences() + } + let value: preferences.ValueType | undefined = undefined + try { + value = preference!!.getSync(key, defaultValue) + } catch (e) { + console.error(this.TAG, 'Failed to read value, cause:' + e) + } + return value as boolean | undefined + } + + writeArrayBoolean(key: string, value?: Array) { + if (preference === undefined) { + this.getPreferences() + } + try { + preference!!.putSync(key, value) + } catch (e) { + console.error(this.TAG, 'Failed to write value, cause:' + e) + } + preference!!.flush() + } + + readArrayBoolean(key: string, defaultValue?: Array): Array | undefined { + if (preference === undefined) { + this.getPreferences() + } + let value: preferences.ValueType | undefined = undefined + try { + value = preference!!.getSync(key, defaultValue) + } catch (e) { + console.error(this.TAG, 'Failed to read value, cause:' + e) + } + return value as Array | undefined + } + + writeObject(key: string, value?: object) { + if (preference === undefined) { + this.getPreferences() + } + try { + preference!!.putSync(key, value) + } catch (e) { + console.error(this.TAG, 'Failed to write value, cause:' + e) + } + preference!!.flush() + } + + readObject(key: string): T | undefined { + if (preference === undefined) { + this.getPreferences() + } + let value: preferences.ValueType | undefined = undefined + try { + value = preference!!.getSync(key, undefined) + } catch (e) { + console.error(this.TAG, 'Failed to read value, cause:' + e) + } + if (value === undefined) { + return undefined + } else { + return value as T + } + } + + delete(key: string) { + if (preference === undefined) { + this.getPreferences() + } + try { + preference!!.deleteSync(key) + } catch (e) { + console.error(this.TAG, 'Failed to delete, cause:' + e) + } + preference!!.flush() + } + + clear() { + if (preference === undefined) { + this.getPreferences() + } + try { + preference!!.clearSync() + } catch (e) { + console.error(this.TAG, 'Failed to clear, cause:' + e) + } + preference!!.flush() + } + + flush() { + if (preference === undefined) { + this.getPreferences() + } + try { + preference!!.flush() + } catch (e) { + console.error(this.TAG, 'Failed to flush, cause:' + e) + } + } + + private getPreferences() { + try { + + let options: preferences.Options = { name: 'myStore' }; + preference = preferences.getPreferencesSync(context, options); + } catch (e) { + console.error(this.TAG, 'Failed to get preferences, cause:' + e) + } + } + + private deletePreferences() { + try { + preference?.deleteSync('myStore') + } catch (e) { + console.error(this.TAG, 'Failed to delete preferences, cause:' + e) + } + preference = undefined + } +} + +export default new PreferencesUtil() \ No newline at end of file diff --git a/common/src/main/ets/utils/TimeUtils.ts b/common/src/main/ets/utils/TimeUtils.ts new file mode 100644 index 0000000..22400d6 --- /dev/null +++ b/common/src/main/ets/utils/TimeUtils.ts @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +export function fillNum(num) { + if (num < 10) { + return `0${num}`; + } + return num.toString(); +} + +// 视频时长转换 +export function getTimeString(time) { + if (time == -1 || time == undefined) { + time = 0; + } + const TIMESTAMP: number = 1000; + const TIME_UNIT: number = 60; + const MAX_HOURS: number = 24; + let hour = Math.floor(time % (TIMESTAMP * TIME_UNIT * TIME_UNIT * MAX_HOURS) / (TIMESTAMP * TIME_UNIT * TIME_UNIT)); + let minute = Math.floor(time % (TIMESTAMP * TIME_UNIT * TIME_UNIT) / (TIMESTAMP * TIME_UNIT)); + let second = Math.floor(time % (TIMESTAMP * TIME_UNIT) / TIMESTAMP); + if (hour > 0) { + return `${fillNum(hour)}:${fillNum(minute)}:${fillNum(second)}`; + } + return `${fillNum(minute)}:${fillNum(second)}`; +} diff --git a/common/src/main/ets/utils/WindowSizeManagers.ets b/common/src/main/ets/utils/WindowSizeManagers.ets new file mode 100644 index 0000000..ad604eb --- /dev/null +++ b/common/src/main/ets/utils/WindowSizeManagers.ets @@ -0,0 +1,33 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { window } from '@kit.ArkUI'; + +/* + 获取屏幕尺寸 + */ +export class WindowSizeManager { + public size: window.Size = { width: 0, height: 0 }; + public topRectHeight: number = 0; + public bottomRectHeight: number = 0; + + constructor(context?: Context) { + window.getLastWindow(context ?? getContext(this)).then((value: window.Window) => { + const avoidAreaType = window.AvoidAreaType.TYPE_SYSTEM; // 系统默认区域,包括状态栏,导航栏 + const avoidArea = value.getWindowAvoidArea(avoidAreaType); + this.topRectHeight = px2vp(avoidArea.topRect.height); + this.bottomRectHeight = px2vp(avoidArea.bottomRect.height); + + const rect: window.Rect = value.getWindowProperties().windowRect; + this.size.width = px2vp(rect.width); + this.size.height = px2vp(rect.height); + console.log(`[windowWidth]${this.size.width} [windowHeight]${this.size.height}`); + }) + } +} + +export const windowSizeManager: WindowSizeManager = new WindowSizeManager(); \ No newline at end of file diff --git a/common/src/main/ets/view/ChooseAvatarDialog.ets b/common/src/main/ets/view/ChooseAvatarDialog.ets new file mode 100644 index 0000000..6a2b14e --- /dev/null +++ b/common/src/main/ets/view/ChooseAvatarDialog.ets @@ -0,0 +1,136 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { common } from '@kit.AbilityKit'; +import { BusinessError } from '@kit.BasicServicesKit'; +import { camera, cameraPicker } from '@kit.CameraKit'; +import { photoAccessHelper } from '@kit.MediaLibraryKit'; +import { NECommonUtils } from '../utils/NECommonUtils'; +import { PermissionsUtils } from '../utils/PermissionsUtils'; + +@CustomDialog +export struct ChooseAvatarDialog { + controller?: CustomDialogController + // 使用UIExtensionAbility:将common.UIAbilityContext 替换为common.UIExtensionContext + context: common.UIAbilityContext = getContext(this) as common.UIAbilityContext; + onImageChosen?: (url: string) => void + + // 显示相机选择器 + async showCameraPicker() { + PermissionsUtils.reqPermissionsFromUser(['ohos.permission.CAMERA'], this.context).then(async (result) => { + if (result.grantStatus == true) { + try { + // 相机选择器的配置信息 + let pickerProfile: cameraPicker.PickerProfile = { + cameraPosition: camera.CameraPosition.CAMERA_POSITION_BACK + }; + + // 相机选择器的媒体类型 + let mediaTypes: cameraPicker.PickerMediaType[] = [ + cameraPicker.PickerMediaType.PHOTO,// 拍照模式 + // cameraPicker.PickerMediaType.VIDEO,// 录制模式 + ] + + let pickerResult: cameraPicker.PickerResult = + await cameraPicker.pick(this.context, mediaTypes, pickerProfile); + if (this.onImageChosen && pickerResult.resultCode == 0 && pickerResult.resultUri.length > 0) { + console.debug(`ChooseAvatarDialog seleced image url = ${pickerResult.resultUri}`) + this.onImageChosen(pickerResult.resultUri) + } + console.log("the pick pickerResult is:" + JSON.stringify(pickerResult)); + } catch (error) { + let err = error as BusinessError; + console.error(`the pick call failed. error code: ${err.code}`); + } + } else { + NECommonUtils.showToast($r('app.string.chat_permission_deny_tips')) + } + }) + } + + // 显示相册选择器 + async showPhotoPicker() { + console.log("net ease show photo picker"); + const photoSelectOptions = new photoAccessHelper.PhotoSelectOptions(); + // 过滤选择媒体文件类型为IMAGE + photoSelectOptions.MIMEType = photoAccessHelper.PhotoViewMIMETypes.IMAGE_TYPE; + // 选择媒体文件的最大数目 + photoSelectOptions.maxSelectNumber = 1; + + const photoViewPicker = new photoAccessHelper.PhotoViewPicker(); + photoViewPicker.select(photoSelectOptions) + .then(async (photoSelectResult: photoAccessHelper.PhotoSelectResult) => { + if (this.onImageChosen && photoSelectResult.photoUris.length > 0) { + this.onImageChosen(photoSelectResult.photoUris[0]) + } + console.info('net ease photoViewPicker.select to file succeed and uris are:' + photoSelectResult.photoUris); + }).catch((err: BusinessError) => { + console.error(`net ease Invoke photoViewPicker.select failed, code is ${err.code}, message is ${err.message}`); + }) + } + + takePicture = () => { + this.showCameraPicker() + this.cancel() + } + goPhoto = () => { + this.showPhotoPicker() + this.cancel() + } + cancel = () => { + this.controller?.close() + } + + build() { + Column() { + Column() { + Text($r("app.string.dialog_take_picture")) + .fontSize(14) + .fontColor("#333333") + .textAlign(TextAlign.Center) + .height(42) + .width('100%') + .onClick(this.takePicture) + + Row() + .height(1) + .width('100%') + .backgroundColor("#EFF1F4") + + Text($r("app.string.dialog_photo")) + .fontSize(14) + .fontColor("#333333") + .textAlign(TextAlign.Center) + .height(42) + .width('100%') + .onClick(this.goPhoto) + } + .height(85) + .width('100%') + .backgroundColor(Color.White) + .borderRadius(12) + .margin({ left: 12, right: 12 }) + + Column() { + Text($r('app.string.mine_edit_cancel')) + .fontSize(14) + .fontColor("#333333") + .textAlign(TextAlign.Center) + .height(42) + .width('100%') + .onClick(this.cancel) + } + .height(42) + .width('100%') + .backgroundColor(Color.White) + .borderRadius(12) + .margin({ top: 10, left: 12, right: 12 }) + + } + .backgroundColor(Color.Transparent) + } +} diff --git a/common/src/main/ets/view/CommonAvatar.ets b/common/src/main/ets/view/CommonAvatar.ets new file mode 100644 index 0000000..d20be7a --- /dev/null +++ b/common/src/main/ets/view/CommonAvatar.ets @@ -0,0 +1,146 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +@ComponentV2 +export struct CommonAvatar { + /** + * 头像数据 + */ + @Param item: AvatarItem | null = null + /** + * 头像圆角 + */ + @Param roundRadius: Length = 4 + /** + * 名称文字大小 + */ + @Param textSize: Length = 14 + /** + * 文字颜色 + */ + @Param textColor: ResourceColor = '#ffFFFFFF' + @Param longPressGesture: ((event: GestureEvent) => void) | undefined = undefined + + build() { + if (this.item != null) { + + if (this.item.avatarUrl == null || this.item.avatarUrl.toString().length <= 0) { + Stack() { + Column() { + }.width('100%').height('100%').backgroundColor(this.item.color) + .borderRadius(this.roundRadius) + + Text(this.item.name) + .fontSize(this.textSize) + .fontColor(this.textColor) + .ellipsisMode(EllipsisMode.END) + .textAlign(TextAlign.Center) + .margin({ + left: 6, right: 6 + }) + .width('100%') + .maxLines(1) + }.gesture(LongPressGesture().onAction(this.longPressGesture)) + } else { + Image(this.item.avatarUrl) + .syncLoad(true) + .borderRadius(this.roundRadius) + .onGestureJudgeBegin(() => { + return GestureJudgeResult.CONTINUE; + }).parallelGesture(LongPressGesture().onAction(event => { + this.longPressGesture?.(event) + } + )) + } + } + } +} + +@Builder +export function buildAvatar(item: AvatarItem, width: Length, height: Length, + borderRadius?: Length | null) { + Stack() { + if (item.avatarUrl == null || item.avatarUrl.toString().length <= 0) { + Column() { + }.width('100%').height('100%').backgroundColor(item.color) + + Text(item.name) { + } + } else { + Image(item.avatarUrl) + } + }.width(width) + .height(height) + .borderRadius(borderRadius) +} + +/** + * 头像显示的数据类型 + */ +@ObservedV2 +export class AvatarItem { + /** + * 头像URL + */ + @Trace avatarUrl?: ResourceStr | null = null + /** + * 头像显示的昵称 + */ + @Trace name?: string + /** + * 头像背景色 + */ + color?: number + + constructor(avatarUrl?: ResourceStr, name?: string, color?: number) { + this.name = name + this.color = color + this.avatarUrl = avatarUrl + } +} + +/** + * 获取头像背景色的工具类 + */ +export class AvatarColorUntil { + /** + * 默认背景色合集 + */ + static colorList: number[] = [ + 0xff60cfa7, 0xff53c3f3, 0xff537ff4, 0xff854fe2, 0xffbe65d9, 0xffe9749d, 0xfff9b751 + ] + + /** + * 使用ID生成头像背景色 + * @param id + * @returns + */ + public static getBackgroundColorById(id: string): number { + const numberValue = AvatarColorUntil.hashCode(id) + let temp = Math.abs(numberValue % 7) + return AvatarColorUntil.colorList[temp] + } + + /** + * 获取Hashcode 值 + * @param str + * @returns + */ + static hashCode(str: string): number { + let hash = 0; + if (str.length == 0) { + return hash; + } + for (let i = 0; i < str.length; i++) { + let char = str.charCodeAt(i); + hash = + (hash << 5) - hash + char; + hash = hash & hash; // Convert to 32bit integer + } + return hash; + } +} \ No newline at end of file diff --git a/common/src/main/ets/view/CommonChooseDialog.ets b/common/src/main/ets/view/CommonChooseDialog.ets new file mode 100644 index 0000000..d478ce1 --- /dev/null +++ b/common/src/main/ets/view/CommonChooseDialog.ets @@ -0,0 +1,76 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +@CustomDialog +export struct CommonChooseDialog { + controller?: CustomDialogController + content1?: string | Resource + content2?: string | Resource + onItemChosen?: (index: number) => void + cancel = () => { + this.controller?.close() + } + + build() { + Column() { + Column() { + Text(this.content1) + .fontSize(14) + .fontColor("#333333") + .textAlign(TextAlign.Center) + .height(42) + .width('100%') + .onClick(() => { + if (this.onItemChosen) { + this.onItemChosen(1) + } + this.cancel() + }) + + Row() + .height(1) + .width('100%') + .backgroundColor("#EFF1F4") + + Text(this.content2) + .fontSize(14) + .fontColor("#333333") + .textAlign(TextAlign.Center) + .height(42) + .width('100%') + .onClick(() => { + if (this.onItemChosen) { + this.onItemChosen(2) + } + this.cancel() + }) + } + .height(85) + .width('100%') + .backgroundColor(Color.White) + .borderRadius(12) + .margin({ left: 12, right: 12 }) + + Column() { + Text($r('app.string.mine_edit_cancel')) + .fontSize(14) + .fontColor("#333333") + .textAlign(TextAlign.Center) + .height(42) + .width('100%') + .onClick(this.cancel) + } + .height(42) + .width('100%') + .backgroundColor(Color.White) + .borderRadius(12) + .margin({ top: 10, left: 12, right: 12 }) + + } + .backgroundColor(Color.Transparent) + } +} diff --git a/common/src/main/ets/view/CommonConfirmDialog.ets b/common/src/main/ets/view/CommonConfirmDialog.ets new file mode 100644 index 0000000..30ea05c --- /dev/null +++ b/common/src/main/ets/view/CommonConfirmDialog.ets @@ -0,0 +1,61 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +/** + * 确认弹框 + */ +@CustomDialog +export struct CommonConfirmDialog { + //title + @State title: string | Resource | undefined = undefined + //确认内容 + @State confirmContent: string | Resource = '' + @State showCancelButton: boolean = true + //取消按钮 + cancel?: () => void + //确认按钮 + confirm?: () => void + controller?: CustomDialogController + + build() { + Column() { + if (this.title) { + Text(this.title) + .fontSize(20) + .fontColor('#ff333333') + .margin({ top: 20 }) + } + Text(this.confirmContent) + .fontSize(14) + .fontColor('#ff333333') + .margin({ top: 20, bottom: 20 }) + Flex({ justifyContent: FlexAlign.SpaceAround }) { + if (this.showCancelButton) { + Button($r('app.string.cancel')) + .onClick(() => { + this.controller?.close() + if (this.cancel) { + this.cancel() + } + }) + .backgroundColor(0xffffff) + .fontColor('#ff666666') + } + + Button($r('app.string.common_sure')) + .onClick(() => { + this.controller?.close() + if (this.confirm) { + this.confirm() + } + }).backgroundColor(0xffffff).fontColor('#ff007AFF') + } + .margin({ bottom: 10 }) + } + .backgroundColor(0xffffff) + } +} \ No newline at end of file diff --git a/common/src/main/ets/view/MatchSearchText.ets b/common/src/main/ets/view/MatchSearchText.ets new file mode 100644 index 0000000..bd2482a --- /dev/null +++ b/common/src/main/ets/view/MatchSearchText.ets @@ -0,0 +1,37 @@ +@ComponentV2 +export struct MatchSearchText { + @Param allText: string = "" + @Param searchText: string = "" + @Param fontSize: number = 14 + @Param normalFontColor: ResourceColor = "#333333" + @Param highlightFontColor: ResourceColor = "#337EFF" + + startOfSearchText() { + return this.allText?.indexOf(this.searchText) + } + + endOfSearchText() { + return this.startOfSearchText() + this.searchText.length + } + + build() { + Text() { + Span(this.allText.substring(0, this.startOfSearchText())) + .fontSize(this.fontSize) + .fontColor(this.normalFontColor) + + Span(this.searchText) + .fontColor(this.highlightFontColor) + .fontSize(this.fontSize) + + Span(this.allText.substring(this.endOfSearchText(), this.allText.length)) + .fontSize(this.fontSize) + .fontColor(this.normalFontColor) + + } + .maxLines(1) + .textOverflow({ + overflow: TextOverflow.Ellipsis + }) + } +} \ No newline at end of file diff --git a/common/src/main/module.json5 b/common/src/main/module.json5 new file mode 100644 index 0000000..c0104aa --- /dev/null +++ b/common/src/main/module.json5 @@ -0,0 +1,12 @@ +{ + "module": { + "routerMap": "$profile:route_map", + "name": "common", + "type": "har", + "deviceTypes": [ + "phone", + "tablet", + "2in1" + ] + } +} diff --git a/common/src/main/resources/base/element/color.json b/common/src/main/resources/base/element/color.json new file mode 100644 index 0000000..8efd88b --- /dev/null +++ b/common/src/main/resources/base/element/color.json @@ -0,0 +1,74 @@ +{ + "color": [ + { + "name": "common_gray_01", + "value": "#222222" + }, + { + "name": "common_gray_02", + "value": "#ffbebbb4" + }, + { + "name": "common_gray_03", + "value": "#666666" + }, + { + "name": "common_gray_bg", + "value": "#f3f4f5" + }, + { + "name": "common_gray_border", + "value": "#e8e7ee" + }, + { + "name": "common_main_color", + "value": "#FA6D1D" + }, + { + "name": "common_green", + "value": "#41B883" + }, + { + "name": "common_blue", + "value": "#3266EE" + }, + { + "name": "common_blue_bg", + "value": "#EDF2FF" + }, + { + "name": "black", + "value": "#131313" + }, + { + "name": "white", + "value": "#ffffff" + }, + { + "name": "home_gray", + "value": "#EDECF2" + }, + { + "name": "top_title", + "value": "#8D2316" + }, + { + "name": "top_bg", + "value": "#FFEFEFEF" + }, + { + "name": "main_color", + "value": "#923C35" + } + , + { + "name": "f6f6f6", + "value": "#f6f6f6" + } + , + { + "name": "patient_theme", + "value": "#3cc7c0" + } + ] +} \ No newline at end of file diff --git a/common/src/main/resources/base/element/string.json b/common/src/main/resources/base/element/string.json new file mode 100644 index 0000000..b81bbc3 --- /dev/null +++ b/common/src/main/resources/base/element/string.json @@ -0,0 +1,160 @@ +{ + "string": [ + { + "name": "mine_account_nick", + "value": "昵称:%s" + }, + { + "name": "mine_account_id", + "value": "账号" + }, + { + "name": "mine_account_id_tip", + "value": "账号:%s" + }, + { + "name": "mine_edit_cancel", + "value": "取消" + }, + { + "name": "mine_edit_sure", + "value": "确认" + }, + { + "name": "common_close", + "value": "关闭" + }, + { + "name": "common_sure", + "value": "确定" + }, + { + "name": "common_sure_count", + "value": "确定(%d)" + }, + { + "name": "mine_info_save", + "value": "完成" + }, + { + "name": "mine_info_save_ok", + "value": "保存完成" + }, + { + "name": "text_input_placeholder", + "value": "请输入帐号" + }, + { + "name": "empty_tips", + "value": "该用户不存在" + }, + { + "name": "common_search", + "value": "搜索" + }, + { + "name": "common_search_placeholder", + "value": "请输入你要搜索的关键字" + }, + { + "name": "all_space_not_support", + "value": "不支持全空格" + }, + { + "name": "no_friend", + "value": "暂无好友" + }, + { + "name": "no_team", + "value": "暂无群聊" + }, + { + "name": "cancel", + "value": "Cancel" + }, + { + "name": "save", + "value": "Save" + }, + { + "name": "dialog_take_picture", + "value": "拍照" + }, + { + "name": "dialog_photo", + "value": "从手机相册选择" + }, + { + "name": "setting_pin", + "value": "标记" + }, + { + "name": "setting_unpin", + "value": "取消标记" + }, + { + "name": "setting_pin_empty", + "value": "暂无标记消息" + }, + { + "name": "setting_message_notify", + "value": "开启消息提醒" + }, + { + "name": "setting_message_stick_top", + "value": "聊天置顶" + }, + { + "name": "chat_permission_deny_tips", + "value": "请在设置页面添加相关权限" + }, + { + "name": "copy_success", + "value": "复制成功" + }, + { + "name": "person_select", + "value": "选择" + }, + { + "name": "conversation_select_limit_tip", + "value": "最多只能选择%d个会话" + }, + { + "name": "conversation_empty", + "value": "暂无患者图文消息" + }, + { + "name": "reply_empty", + "value": "您暂未添加快捷回复" + }, + { + "name": "common_network_error", + "value": "当前网络不可用,请检查你的网络设置。" + }, + { + "name": "common_operate_failed", + "value": "操作失败" + }, + { + "name": "common_content_empty", + "value": "暂无内容" + }, + { + "name": "team_history_record", + "value": "历史记录" + }, + { + "name": "exception_description", + "value": "异常说明" + }, + { + "name": "delete_success", + "value": "删除成功" + }, + { + "name": "conversation_loading", + "value": "会话加载中..." + } + ] +} \ No newline at end of file diff --git a/common/src/main/resources/base/media/arrow_right.svg b/common/src/main/resources/base/media/arrow_right.svg new file mode 100644 index 0000000..0c85d27 --- /dev/null +++ b/common/src/main/resources/base/media/arrow_right.svg @@ -0,0 +1,14 @@ + + + + + + + \ No newline at end of file diff --git a/common/src/main/resources/base/media/empt1y_image.png b/common/src/main/resources/base/media/empt1y_image.png new file mode 100644 index 0000000000000000000000000000000000000000..e2c83c1cd7f4750376028bc8c0fbebd90889f290 GIT binary patch literal 24973 zcmcF~1zTHDvvqJQ?(P()6e#Xa@fO!YkwSq0#R~*?hvM$;?q0l5q(E@j;+6v6;eGGD z|KQ6*NFX`;%-(y>%vx*agsH2_W1^FxgFqlmMFkm65D3m5c;ccW1OG9YS4jt6(7+0M z&L9v5{>u{%l$JpP0?~jJWh6hkXB>C>ek0%W_hhyWhi+<*U61QaWn1y>dJQ3P#*O6yOm}Af*Ep$sl_P8 zM%Ni_Ibjaqeu)ZQ%bU-O5Po>*DjR}Nu4PLN;to zygXI}`cBr@*MFJ*e|)W>+JHmcsYC(2_8mgd)D~3H=7*Dj?}_ZlOcZwp*Knxn>mcxY zF2fzMR@$QWK>j6HU&+fJiX)lIJQ?t0G*k`MNI%z?J@Pkz`8`)Aa(b6zP~Jqc4(jLn zx2eGi_><|alN+_z{qkiWT<^59+u~~*g#P4@)?oiCP8Dw&f=Qes0uK?JmFVF2e6H8` z0v%xzcka1;hhjw`#w=mnph8F(p50O7pM^F0FYVl&hA8GmEoT>MTQKY5gbX=d?7QDE zOz&c5H}Il?LNv^u->qMXmp7tV8%8YS+6VAnM42ZFHB!esw8}P!z^&_YsMSovvgei% z1o|q;^$QV?gN6{VSfLk|DO=B{Vg88QB7fcM>hrUMyr zNfPL@iO%qfqRWq?hgPJ& zLf-kTS1AgihqgHewmWjSKGN01n6#6?D>tS)>RI)m@><156m|2;MuhO}DhMc@S3jum62lTh) zM<~;YLm~}?pujb3;c`H`Ih!6z^yxaNnXJ=g($R&aaJ^@HI$vHZj+z0}fp5?2xTd+kDLs89G0!EDz*b-B-Els2kvx?Z1|mmT!1?0$N)I2e#sK|IE(^ zXJt`=DNwTZdM`zQ55em_eo`U(0lgV3@4oobM@oB|dy@4~BczVk>yJ%a_(Y&jlXR3RTDV5ZbPemyqSUM&&J&yyIpvzq9iL&|$%h)C^5v_`q~(w0%PFXN7Ov@C2!=%B5tbLy1=K;iu+S&T)`fj z@J^u@BL=hov0(1PMdA7xiD3&K6f4%u#h$gSw%Pi~d&a^yvv=9Z9y)howR4|3-IuVn z#h1$?AirPR`}>x?_3XkRZ?X0%*d~#)`LX0k@+~J5F`y2tFX7jog!a9M@QHMB%y))xUyV=6 zz^@?KJvwk5o;TE|sh>GLR8)i6&Gp@_2xI>Bvg7gd2s}e!y@n*J*(=ynAzU&S*y)$% zA>rV__9y22v!pgLF$~i#Ig45Zsa|Y5Gsol{4I>e`yQRP1GrVBk&)@E;#U6*9H^MZi zdSUOZPGWUO*UzZY6rkhlv%ZU%K34c3Nb8#n!DWPIxei8Z?u5_ne#4{exp4B0D*bsH z8}+e8$S7kcy0#TmNhoKE3MX;IjoiY*<-%nQcwy@7L_DHpfqNd|GIX=k(~_V~&SVU# z7!=Ora*gF~R!#9${=|oKgsaQFzlBD^B8ZU5$F0sp!8Per=b4*7#Z9<9`^##VhgPFZ zfQO{k!{|rP4LPwzsHhD&y>IdXF9AYa=~haVET%6`Jh+$!^G-K-kn)))b`T5($A-=q zRly#8^mTQaS?8Aw8CwU;xZx$t&CQE2Zh^pniyIXcg$ufH7und|wQN~AmHYZ!rkH)O zq2trQ-*(a8c{SAhx3K;646nOB)zah+WHEXDYg+t}0Wz)gltZu9V6hQh-R0D6Q_~`< za`vvd=j6+b7S;b;12r1~y6-I>3ce7Q#d|J@@A0o)!yXA@hA#te|J`3&TqasOCs~tH zQZj;y^r5|`vF=$@50P5}W|5DXab6N%u<5_3RGRLDV85z-ayR)mk>C}&d`RnK#nXA^ z=7vv_FAw_{k5u*5wvRIZnQFWK@UK(<&W(R-r089RjW}CSIw^+;UyZ|PWVA!hQ#*|c z@hSp~C&Sm4H(Hv1AJ{UrqNl}RKydZlzdHCW8>4snCrHTG#Dp3|L&hf}E@$!iGa~4X zNC%MwE_x97;pz*VM6)JQ&cn@{aIIUDT@+D~G;6a97{7n^)0W^}a|;~u_|qj7xbhTw zF6UR-_F&lkmLo+E`9BdQ{e1S%&vdkZ-LY-=ugTAs4p^$kWoU4iZBK}t!U&ubWb!rO zCGzw0JzpJ_t$SpVn6FLfjTGB_{q9B4^6Zjt7CsoK(xx0oP*G4YL~mU{xh$OzXIbDSjH_?e z`0bVus~5`mF8HW8iPd|uvppF|aO=$yt(W8a(;QnXs$yW50C zUFAO^Ib2OBRaCX3UB@_6Bqs|Sa8V3T_w+zmhFORH{7H%DcysF7?#9Q*cR-c#RY13E zurgN6%UAdNj!%@eFO8fP)jFF%+1pk8=Mi7;=VWDeyNTM~M{}cIa_@S)@+13#rwfNU z$tBY_3J3@YZL%Fi(+v7RqG~)a@8E&s}HM%XT1M*wiiVV@(Kubwy*p+^yOp#_GNSnyX|u0ZT*b z+xwxzwuPLnLM%$5g7=2S#l@G%O!?C#EC@+FJUrpxXRms;4!?ULP+RqwFh`a*O%wPK zVZiRwfSdc5r$SNghhCr6L--&4!N9oaFXN(5q9!)i9~C~T?CLu>RNMP$5h3k*7#sbA z?0NJDByDYNjk>@}7715#A`x<8PM5!3XZkKWi#oewo|~-N!Wh5WD>5?vX%^{+~Fa$|@?j<`qTnf7(fOVL|S&xQvAE zeMUQ+#4U_lv*og5nJ!-W6h(c$RgCnpHZf_&{G0ti*fGt|R@-*USLQn!n!Ws0PEL+s z!~Ult-Md{Hh=6Z#2$AYZ?)%qkT=&gh28E=_|6L>i6&nG2nx3R)T#-@m0XFfbBFJ~L;kmK!i7aBquEbH*@*({Zq~tG^-n_|bd? zTS0&BIsADNsRt86TF+e095R>AsB3f(Y$t%f?0|5_076HE|8_7_$bQb*H0s6ISNXNR zz8)AkKeWl>2r`dfh^^IbneXaLzsGTg$#7n!*4?D+$RIxuO}GKuIIp4+ct(C8Z{4QYFb04L;V7WaCmZ3_@P*pl;|WZ3=Q~W zZg=S&}&k*nQ4I2x~#=K4T>#xMh|B@cL zC5L|bB=vxhOFccGh!)JAWEkzR8ZAO%LCZ5Yv zBf}@ZtVwWB94pY8`a1r(MfhzA3Ct48w@{LyF*e%3OB9BMB7zb?S&~hrY|MQtW(B5L zSl0u%_91doxTn={cinJ-G_wAPG-!e-iWz$~P4IE*yD6jN3VX(2Ym$t~!(R%_M;e^c zb#1SACQ!q{UYJzFy}9-Pn>VExa*}IRy!Wlw2!s`l46DH3Q7elT1xQbT1DAW>+?!v% zGDWoPa%V#by=1(t<6cq-mW%!gt|5|d;in0A-;btEdX0?}*QNzC*!idRLy}a2*Px{u z{*U<;P3ws!YW?8Se&aW5Wr~f}9Fo>)(gZwA0PS8oHq;OCcIzM$!9f;|sbZg5d2Bp) zy1TK~eHS#Y5FxVnYmWEba9{9L>vy42g($Q7zwDb0?2?t45}F-229iR*;>H}Sn`EE~ zOd@8Kv6$;Q#UjS`>o>@ggTz76+(Tp6yJ4a9bVf%Q7eYij3JiElsR=tcyuL^ZajdoK z%)I=3e2h36{@g#*mn2~lGnY(eNKs4A1n=secssz$kGssW`D+5Ph(d@tD4M#)II^4N z{Egs0^Ftetw`U-T1Pv&9>(~4|a`zf`bb?P2;pd$-PnkA~@KAhQyf8!}Vq#iUc#x^R zJyxx*@?$d%>Y*Dt#jqdukCx{rSkOwl8wT~ib(A2J=WCPf#d@nL3JB?t?w}fKx%JhP z70M%bI6V|oAz)R278FuLB#j9|d&6S+a0;UuSfPHPw6|JVU6&Vgr*_+mwu7#EErI{4 zp3o+~-IL3o&9+%m!$BM$AE${^FtxNqPUbQh8Xs5wQGx;wMfUlBIMts zh|SH~KBnbfvC}u^k+i^RY;2SWZ+;i6?dk0U1d#gvr#xPa*h9%#ZH%{aD#bTABK*Jp%~1UzrKK#uG}ilq zFjCUe;AvX*kdcw!@bV&N?cvADe8=kv^9*-KxayAoBk3DyrU=u^9BZ29%7{9eLI^dr zo15ph&Jzt~mXXnj3%&YEI?-Jz*Zw^0(QG`}!v< z#rw+DcVGMY-o7jIMUB@Tj@zmxl8qyl<H^4MWMpJ?pn=QpRj|NNYk%dsF1wj$ zc8>132AQ3hCJDYp3G^8`Z)m4vWoZ-hQc+S)JPN5Y>8?fjyy!ic z%RbsVONY_s1Qc&W$@Ld?{=S{Kd<#dxDnFKaBnl2A9hID{ z*GZ1n2^Junp-AHVT3C3IAgp=AP2U{7MFTw$oCCqu@sE1n1c`Lxd=O>nWmG;Y4|WcA zd|?qq0Daz}EIEiIfhXppFQsn44l9d{=wG->_n7EtItnb?ZdHl8j$&3qhm#}EBxDH3 zsd(Y>(giR4kLK*Tr(8MT&H2_R^VnIw0g`~_llj#K{I0n zx!2T0uRrD*^(Eb46k@j;Rt0yw$ZPMf#}54sG`}R&v^{AxNFt{BDGbfqYikh5M}@lP z|5gB`yqIAY3M_o{$SjZDRH^pBqq&gEp+neIU6bv8pF!lDoz5p1<|mGAu844{r?1S0 zmNP%Ev4f-#A<@+0#`{M#t(_~qs&C2%6Uct@Cq>M-M(XXEvpKKgFm&HAK>7u{G2*rt z=A-7khhIe+@|PcFD=^>yY-pnoDMQ?s3I&Ve=gQ6-^RF}Eb%L`%aK|)tS%za=jtNNg zLIh!%+Ih<|>do?oS7?7=aV_cAAk%AsQ|!Q|5Kw1dVt~tu;ePjFdk+h9)RV}bs)uHN z-~h4U`%KZN|BT^45T9OvEqF~N%Z)xl#ve#|=#VH!Y;Vf3geZ|K-~bozj^V%F0| z1zS)@zR9;%7&vN z`POir8uLxdkN4sQS~^n9|H`P5B_1Ci^*#gwL?8{8+fy{a&;N0m@QXOr34>1mCfb~8C899wh|ua@+nTCK-Y|wE>D5)aapbeZMtvcjf$Gu2X>--4ud9jd3ltH$w{IPF#t@4 zs|N0DoiVdNIqs)^w`6=rkY#oTvUYb*v9tm-g}vxTU(!id4p zJrAL8`|7J!C7KsH2+80T?rRaVoLn^ z`+U%d5j-maI)66 zw&$_w(e*3cDzdXafl(#xsENSW z#8fl3sxqtl3qB_c=&K^Nx{(hs*q3kL8jdI4iHfR#tj)~m%6Vk+r^`6==IoMx`;5w@ ztJ@0>D*bM#!rv$hzSj3Gj3GXEBM)Dzrl%z+37|nmgbWQ0jT+}KF6sd|)&n`aPV^S) zJSr*s zMnhT_WW8+E!fGM9VB%5FUK5U`VSd+c{@t%RScXm#WDN%Y`gJYr^G{&KV=r?Mo~UnL zs~!F;ok$P~WJs-8MD%%E?I{qXPJ@#JAly>odNN!cxeP*+mK&yz#ylDlh$r)|X*c9S zvx^tVxNCo?Humjm84LWm%9%h*;JXh%c809Iv4<86I{<@U{V|Wh1$o|Wgd7wm z8|NuANvA3Y6A=+5G8o_Zu+@g05zqzFRZH(pWfuby?saMUGRu3T1^`zB`gIPM;is=( zEAon~=ImZKQ^(MKQj__}W81C~SWa=2`&2lJm$1ee(V}c-aVlB94jM@EYWUa*?+2n3 z^=vSM69*=FE~4hsot@?L@I|RmGf}A!U>F~SGK-EDs@VdPipE_^NZ;XPY07wH6+_{W zb`DAcVTqTvQT9 z$rT4z*B@_Fm4AS(-jdGYg+zN$x(x32QNl|A_5#5+>oqiwndm#xtZ_y4_Z_ywAa7s= zFW;6Dwv+N{^E)&*{oYp7{=OUst&2;PDYMM0Y?zy!CEy++)9&E+2jf?^Dx>4P4&cNW z?K28K(421~(jYjPE&aeNB2u9{DvLrVtKn&|a2RU#rTc2;{gpxYwE^I5Mb(Ulp;1BU zAtC~$hOrVf5;3ATBt~uD6bVl?nKkHu5I`_yV%^A4+j!QKM?8&eM=Ti^5~1tou>2~~ zeMxShf**^mw4nmn^}|>F@P8Cbq(IhAPIZUxXyU2V0mNo4yI}q4li$mByf_3J$ZoYG zRbOA9j9%my^5%y~jp!`}$Apd-i@dsTy~?it{gTEe9FwkaI{pI?R}H$jk`{bxw2=PM zin6rEOt@F_@g%Y^(~3e1hlNVbaOFVmAe&L)H*a3n(8(y~!ZIREFtWC`sp;Ly3GOT8 zdZqlk(l31P_w~_&B7y8nkQ#xl68+I_8Fu%W)rBct?xs7;tUW)j z{Wfx2kp-2sx3}-xKHS|2a1SZqAR1*#;4e^CX)Tk|_-{HcTU6Td1R5Ot^OU<;=+{P5 z5^=$OuKQHRQf=n4r)n5y6ho*cQcg=@&Tjmfrjaf&OmI-0D0^KXy6dWtYx=h9wo^nL zAnFi0=*`3@GxH5B_#Am^@5GsdhNYI$kKx)nIxI;_)9<-DWq@jrY>>fucXUk5(J5*N zuY%qi$(X@DO6gCw={(D3>@sw5G|^l8=fl*^h7u?2P$lZkh>&g4yrs7Q_rwFu=&y{X zXfP$9ksrh|;h05E&(0=RHL1UV%>7@gYKP{;sJxblqG2a4*(m8U6g$g3Hp)jsN=g_UI5*rf`Lk2;B{Ju=1pCEKcjK zn0j*i?Eygj9QnMzXq8=9RRt7x8wklHTHsXl<-6C^0B>&qGSE2^87b*BWff7(aD=gX zL|{6bHdSq(q+)(wWlK&2j~f4`HYWGtA?J?oT)?UmK!Sh(9uz42W8|~DDCKV&5syYBf5=~zvj{j%7vQ!X&15Qiglvv&&&C_i}|Gb_e7rdvr#4C;Te^2Xici{m=c3k7*(9Yf!YwzSS>s~)A}}QTs4v;AmnWS z+Y3N)oRwUFgUJL%r&WL_3K5YK5fCWxQqQNjfT(8K_T@bgQzSCvg`+Sgk$=PvZxns| zR!Sxstb<|loi38|>W2YAq2Zj7kr7g*J+Qo@nZH5#jcM385rfuWzp}d_Rd6e?t@AQr zvO@KxbklEC07O${u%2cS>t4THHEKJ^GlV*mxXvDGT|?C;3a|@6EVCgu04Bl&4fkEF zIFq2?;j(av$Rn9|<{``3T#TQ4BP5j8{zr+#73;D*(S-(zPVt!ysvHr_%$6nm*>zb9 z!JM5AqdB*O!81rWPC?zkz(Bi?u6(e5Ixzhw^h_e(W&iLnFNE5sB^JCO+{a+w^lV}d zj_N&al`pfPL~E8JK}HdDntr8jsnkDuDqaVZzuPTGzNOTG~sF|Q+lXip^J-XZY zz{_CnH;YzikTf}|bQFb(?74~D(a>0@fvxj87B;dp7iK6VL+h9FwrXtB;k5rlxdS1j z?dJi>Hb0z3+IJr2AEX7d!UBu)^K!rj>SgNz(`JUs>;|D6ax^n5p(Q6WdoQ=NxY;g0m@y(amxBp6Yu4!gt_+N?xZyW$sswei$jHnr+!~H4Z{1I-?EX*M zQhkXHhKchGm=P}F4AVA{$WmO!LBsT;a2Fd#1c~vVA8!rOJ3R?Kaptyqcbr<+&)uas zliv%Q8C!p-0As~UA%`*3g_~87ZH)ZS`Rc&52=F55m)Vz}{=yh@uVWqSQOX)>0teKfpnY?Jy^q=pDpF%aYM z@$q?q%fV7y8VwEwq(J}+E1@%)`SlCOZn-H6&{ZzG>h(oVXu9Oor7p(NvB#ryc0IBH zPz=<)N~@$>V`j&EGv(nTgp1tDymF69!#k6bAt{2KtJZCk48fs|boX*dex<0co< zuWG4(DujKy0PO(UYbZBSqhx?HXn%h?-@@SnYLU5Z_fZVlkTZExiba41Crkz~uUIXc z^AD4D#9sipyiexD1wD-FbZIt%VV}|r zd4n(1T{5h@@O#zm;Dt|-)wyVW+lV(nUK${&?;j-z_&HK)Xm6ma`;+jD1d`Jv9oL|0 zp=@9U)Rm+_&JI~}D;07EL>6&NO4SGVmwNyL*QznslKV_B*8RaDrI*mbiNoGP(sXts zcUu?QNG}F#Rr`nSw}OI-%4w}6buGrz5;QsQD*(!oRG5k?k-<$g?@AY6@t1jeDRNp< z(6oYR?V1h>K#=WQ*g@?u6`O%QqaNYZrB>xcNue%Th-W{^@66F8W|J1ROrgTr@?C^# zKyHXGNxjF$3k#%!;$j>P^ai?6#ZZYVfe5<2b(h0FA9+>82SF-{*5run^Nw#mF!d+u zXGr0m0FFqS_EsE#fT)Il!d2PLe|D=RazT~412W!t%l9xS)3R)I^cRLKy=OYx1CGpZHN4o*E{0jV|yQXK`B# z59LM`Wf8VI7A9tCt{f4c&&PCvpCw=xHbm|rGbN*K&qqqgEP!In3zzzB&W#-UDg#ld z#C=4LoClF|jP@6p--U9L9-W@P`xs)l@q<{d#M*R*`NcXarq|V}X=$3?)UgEqDdv$oDhwrj)0GCzGk~3!QaO>R z$xL#YB<2+6$K)5?;`Ffg{K2I@!1$OxQDNb9LaGwo<<>1S%d;S^?~<*j-#dkBl~FB_ zyVxYzprgy^hXf)(g~X1OXL+i!;-9hA#xCvJ_^8>4B^rO+c6+kJy3gX$Q|e5sLR!HG zobo|8QS@eJ%McV+1bcnk<%$cFuJ5UaoW$Hi!H3gfd?`*QHbF1|Fjc4fk^}Ys`IOT= z?Y?bYRc50oQlS1^)@auR9^*b7An}s6wHxa*y27g0|GrQTw(Uot_ByWhNBCiRexT+n zWE+`}1%AWwu^HmqZXZwyEC3M|6Rb7tP>gO$(wJ5zmBq3N91{~`yTVus#nP^zd~sD) zXkH5u)t|XJS%4n!u|3~*KYI@zVlCwJ@C+gA`4RMb){J&@EcD}^l9@kvy1G!s#YkYm zeGC*%Qc7iojvl^?U1jLXJ<$cu7OXVNY!JssXit|1Xs`G{J?9^l9JtkRI>z_kR#Bn> z?y2XH0~;X8c_GIol&n|}$Bc}r<=(ufcLZ$$C)dl%{0~1W=XYeH-wl$}qBq((~$ zD2KD^Jrgw#E^!z&zY0s;v=9NZ4M59*f{AVRkzsEM!E4nFbt>ov+3jBJ@<~zm(^2=k zLa35&GJe_IPH%pWPDQ36W0JY&DjwYznbi~5gt47XTiqMfZOJmtKD*h?k9dUKLz9Gu zUk8_ZY|i=0pS0D(z!7;Roc=kgZDoEy!tn+*5_emBc?qv{c`qlvjWE;piC2gk%Nh)B zY&kMKNLf6^lf)rdGp($!r%Kb+*^!&qpWB_4_V!{vZnhe{+#+lC#QdtAK8}p5_}gdj zNsWM|=lyAXe!l$NlnpI3O%Oef?0OFeT@UVQn`Ri8I(eAd(!8FRJi#gD6&B{aa?9}W z@Ej_=Ae>et>6rQ3a59;1xTNHXh!h+1QL=rMuC0bwkAHo$L&x#$=@dIGe4DAxcWEj+ zRDjMFfa531s-Y2X56(-MaE&b?SDZOIm~Jq!azW)S9Q8xFVinAO%-J!0`0%03^!EDt zg*45tQHBs`8gS${9=6L2S#b&XRpLhkl1JA5p^p)flG#P)$DO{qYM8&k($Zx&UKO8u z8#ZWmxSeu(YEMQ@&0qMNTG%zRMwG`cPB0k&;Leo;O``(5I5P^G<`^ zUp+4GEH+OgbniYstcI5#C#e6Eba^ndM@sL7j8L%DG(pJKq@(30$?&BwKT4$UXRMblxOHq2ii9&ZtZbF%QN!9q=c{OI>j*& zNQ6DFn1h3_3hAl}{)NfF0}T`;)YQX3FK4U*LysecKy*J)<$id0z(GYU6Z#8V7XgZkVD$Ef*0cd%a7DC`ovr z*^>SU=DV*KyKHhzdZYw}mPh=oVE^%0K{470Na2R$#bN@0#-Vk-5bjfn*p0VwdIYHQ zI8j-nu*pF~wKqd@A;H1mtNrP^Jp)6-k22Um`G|ys0{H{%&d^X<_MLTO%zIo15KxL?E3GJY#gLBgmx zZhMoNyD%3_l|iGH4Zp3LeJw3;H%ImF zwUare4fSL!weW6cqsC^|3I$!BXJ;%9yx=w8Cr4x{;(BE5;i4jbl-z51cP3Je>*+gf zzOAX$qFA-!hd_-ub(xalF6KtuJ7~C~tpEC(`?qfd0Re>{G@f@Io|pg*!OhL>2LL@S zLsj||7HC33g24B?Hy{x>np?YCo3Ak>1glpn1(sPo5B)psm!xLT%G^VV@$VkYdt%_mYk{uyGkb05S<3Q8JGL6fbV_qr1xZ zo0ceJ1WJoDcM_@&FZ}OR!P)=55&iAF#3=ZDWL$TFuQ1tNrhnDS+&6g%_YJA-V}!TL zpM`%{?G_tU-abR~k1Q~uIC-kx@$pw?wYu}5)emZ-K?)4;AbJoTNYcIz2Lku= zUhCao5!6$JZ0WJdkY8=0kP`#Z{dJK)o6d?TW-~D}q*6lC3Pq??!~r32RQv(M^*|kF z=hdo8fg@iWr;#-e$Ei^L;GUFPPe{Yhv#snk)>enZA&R%<5ihd}_X6I>UlPaZsYn>M z=AJIEUema)j`SvlPcFzQCT*(UY1j_kP6`y>MJkKaga zt!esyQ3>xVe)$weC%i8d4PVN|!o{hJwJeeMkc@Ll=-1( zS~uDV!3MN&xlL6q?Q(5lF%oMs;hIKaC8hsD*b00!I;I=miRx&9>mwf0{o!Qk-lBR-rbw;Sdg!^qZ7@8dwnMiIPK+6JWIJx=(e0UJCmahEUwO9sR0b~ZS+rEw>v>=P zy12O}SnX(IeN2RS2^BmT;b_O|az5r5n4gGB-s^aklY6y)Pca!?ZyX!R>+W#bv4Dnl zh7K-tBRRU@n&N;mAm1vJV$cC=#JA7skRyQkSX#=V zxn=tC<`^@hD?N77L+AdrNCvgT(^*TLXQih0ZuEyFxgWA9WOj<{)HIUVbiM7Xtg&q; zc5~yU&7|#cw2*Dwo~UWTG0E!|| zurVo}6I7PnqJo12HaAAFG5tZm#<7=h5ibVbXb;{CErQm!hDXHUeZ2H(@|6mm{JNd=O^c)y0A|?wi*4i%K zR%Jex(XGQ5NOrJTv;PIkX1`zK%}KQ!F)js7R-yp+&1h}~M}SDgoVHPc{@D6rgXLEf zKZQX#g_kt0Vi(P4_8ektakJ0UiiAKC+g#~~#TpViN-CH!A}yo2VgE%~*c`$(?$+Y1 z;0DX%-%$cCgZAtx7>4q9HE_TQnK*EhGg|7d;}y(e+GlH2>7F?Qnpc1PU(2#Q@J8-+ z{2IePia^j#AccA<98jPm0gjL81nPV=2t@1I+zmQVa6m5&kY+j1idlnbPz3-(i;9Y7 zr(D0^jr}=~<4S(C>kJ}~rQ?Qo+ow?sW@&8Co*D#rdjH?obk7~-joBthY3Ux_qdJ^ zWE4OUM7`Nptjvr_?W^=K$nd}F!HrC=sdFX=Zh^|2E!}v4i#!*Z0`xyx0`$493=2|f zalg2@&@}pi<)xr@pRLvlGe+|uFoNwgzIb%>yVaPUvG@l zT|5UR+3!%X#bIy0xFNGR$zkC~s_!`;oSw(m6t-sO=IWllR1HQ=+EFz)T+;x~U3Gr1 z^S*SM%Vq2B>cgoO;Sr34B+D-mISD(YpM;9)-B<5)S}4#N=)M{D`i-C<+UJnUd5V`l zmT1gj>C?NHC`d(B<(?P4m_hPlFzx^%9EcGF2BP5E;~L8W*~lR4#*GIla6yoe`24eU zIYr{o-{|t(RctsG37ucbMg*~&c#tNm`M?{67|XohlODv@WGG_*96?9`8{}bWttn$B z81OB4-Ib@Ixox^>5fk}KUmTua-f^<-Bn?MG$sxK$A;ieE26srfup{ zOEVh&59SCVgfPyy}E`zI%rV`2DVvdXHeW}iRH)Yc$Dia>$hCor7-XVoubbs%jt zej3>{=s={xSvUPU_zR#QK*rv{VlHYv(Ilz(Nzch&ibmyZ1QC-ZzM}^qI z5`3?Z4rKTyU{ah@?>JqD|zpOS1 zNr{kj(W)2F9~T)JxjqnvFOm6gF$m~!lw!AO!GUlOk*uw)#Y|66r`>lI7pZOm-$=>G z`1tk`Ew%!`q4V!k?J`R;=QMH!p*`qsAI5L~p`Kj)>Av!iLoJc$bdKD)<;vuC!#n1C z{^yS>g>I0kv0u<_fB8vJO$I@nAqR!@X>yS9$U(d^uJ-40QMaCYs+WuU@ig^yoSqRu z4l1Kx2*Fztc!)Z4Ab@CTDX?@t2OYKE0&pT2xW7tnq}NzyL4orn!)RfmK+GdCB|T0k z;*EtTLPb(jTVERHL@vj9!d)^Uyk5tM1v;zhrfbD{)G(7L_`TJoiuVn0M?o;}3}P?W z`?H}W!hf2>iRYSqnRb5x;Jos(Koq^<__ysOA`wM*FT0{q7L1q;> zC<^rYLqLd0vbaDUV{SkPY0P-Avv_&CH+|x%tWgeMNw%U#GiIez@ps`)Gs+8%phs_$);An zg_K0h^RFeSC&owP@x@9^kT@*8@<^^l)E?QsJ`r1PaormTV1@g1@No zr$$?#+mgtv5p26&`vW@=A*bjNxVP)2z1J;r&`cK~Q#w)8?5eR4hWXb!-BNzeGM$x1 z|FYJeII+Z9Si5W-2C2(aQ|^frhL1F$I4JIu$K!B0(c2#D1R}uTcGQ2oPx*e5Y)0w20UgB*@;h z(L7Hao*<=w`C%Si&%!_NPWvVbLT|MBIa~F11Z&=#(%1#rR~f1)>Y*)nC_u|@;0iEn ze?HHz9P88{5k9uUg{GRj5a$J4($w^0m?Ug})Y05oRSvh+BO|RTRUA!NZJj8Wt7OJy zYt0P<=Ike&_L7u14p0jGT;YN^Ob0_#{1cO60%ohdkR;a;B~eGS&jq_R9&WxUJbIwZ zUPKD)7t;nU2j^vu5sWu;%E2MJiCtjwZT|(3ftOHPkDcp5G}3%tTyL8r4+~u@t0-jk z&HbM$Cf|c=X0#!8`$ust-|Xepr2#|8x2U~UHVW!V(4tm+?>|jsu_=9$tpGQNzU74v zHcyEhV#KGX)|yt8PQ9uPuFzdT;%n#{a&&3iA&7NNIu z%L|KZ^JrDhEK$!b6KVG`RB{zo*lfG4vb;+(^w4(Rfbq8f8sXiDa??ILH6yz{`3moA zg}?Mj1;C1M*mjsyb!Vf0K?X*I_!Z^9O=_xjTD?{IG7hiYE+dQXrl9slT<))q{E%x~ zp`%&s=uB&bz=7R% zLz|?4z)fi&de%a!$#mCRK7<&cSXKC3Xa``Ai@=GH)ZYQoGWt z*yoCwH5{cUqQR(K{Y9-r#^i6ov*!pg8ET9*(xVYoF6}Q2BF_EMK!Kx^51pl}-7J(@ zt)QIHba-<<1Q0w*8l1IZOS%voNG>Jy)7$SSK{|g`p?K3>TH#_Xmj2o8Hp-sb%)f_3 zwJ;m11ik)wiG|!6-?IW4{;$~{{aVlNWXSB@&G;yth>Agdxa}DuZ8gD8^ibWV!@QD) zLc@f$W{iOn+qxsq%l7UvB_G1F+J6ADz=XY*>p`?Q+D*Nn1ld3vdZtgnI*$n<>W$R~=nd#hME zGeNQJ-;|Xq7?huoHTl=zLGA`Zar#~UUSiLzX$I}H*(FuTgT-bg$l>KVP{)fPFM|k_ zUVD?QLL;p(-L7&O+!GG5UD8+ax{E(N+v#~+pTl6C3bzD#I7Om zf*aE@4sLNmDBWRG;4sn-T4pU}CJ=S{tNKNYrqY^RloJGiZ9%mLI8z^%fB`Q1@*}_1 zwYkWTOA!FCgBCxdJ7jsX@;=YE;(R4?IEe-B@wf>@c=Kn*11DXW+8EXldI)d`OfG0R znB`uyOtO6I)Ka`fG#kNfZLj9vBq=)@SDMaGIs!5o_SgMNk*>!pTHZfg<1SYg7GL>B zkn7+duup5>C|aO8FKD*Z#SX!i3|oG44f;4!-(y1OS~1q1A_5T14sR0u@&smqdxcI$ za6tCMA$%Vi-|y==X~~pNeJJ$(W6YeOROSWJxDn@bpnIk1;{*cc`mQu_@V&Z9xig3T z@zQA$lrX${F|h7TxC2lv6xglKJX04NzUcJ?-D+=K!aosV+fNz!JB;1@s=QlfN*v1l z0WfDZEX8@(ux|xq0Qo!qgZ}l4r2^DOc>{Ue*BQ+JUXV|d-{v*c6Scu>E+}CluXC;v z%c<)|+hSM?Su26Xlre7TVnU^b&^JAV*P$oX+T0vS%+$1?UOQNKsFG;iSY38|>j=`m zvVaB33@Jc3%iNuRDbt!QQsd_c+nRA~=tI|=TFwE28PDQBhFIJ_H3l}Zsz2nazNviA zA_YLrv!>Oc*%^b7b=2lc$G~NuSMBMKi}S9j=?3R<_UEl<_Lvyj1PQyNY`IYeX{4LY zb>^ub_;+hq+eHA?kG6`PuCp!_xQGUl5VbM%=3bd{Vpo~my$A5D;8A%|rIAgp(F8@B ze*3!3P5;Vv2;fvu6`z*0*0-A`VTYD~@&9Zfg>F2=dtmD_Y8L#Wv1&{%D!im+F!tqq zMajcLc?ewTH~t7XOHI!a7L~Fmn5DY9qcRbi40|TB|F5U34vQk{`b#KCgLId4Bi$t} zg3=`@ARtS33n;MC9a0jazzPyeuC%n$v2@20ODxShywCf6`#k&1A2W03+`@CT~`U0lTcOlR9&_ zY^SqA%jrPHnnrHR`mzi1Lqi?Du6gs4^CGeFu@T^n;~q?gakSc&`&eHstlArpeamrV zPZup!h3(A>Jjn>S3J9+VlfEb9$e;>18d(@WvNg9~C;&R4VgWU&i8Y!n#5SMx-$j*7 z`+`6@z99r{3|Ig9LotB^uP;A!ZB+)e<#XDFagtfn=e0VBNuz+A4!Gsc1{WbPcyl6S z()uN{-K?}x3gmtP75`O~Wx6Rj)Pr@1we_6elBhUc0LQfzi^wnD*vCiW3Xs2J;|p>7 zRGZ#H4VB|?++17AF^G9^aZr)ei_O0($f}eho=1GOc2>KjTtyHNk{_rEhb+iSXkvUe zabm!^69wL~UX+X=n?I73QXmKmpQ_lz-TDgauseLl!hM0J)@QzO2K;!U71YF zNHgrENUg0G1x5OX9Npk&kL<*qDZSXcj{S+YH=>NlN;8fCLeaF7Qa6cp1RWV-F&MLV>f1-@D*mdtsob)9{}nr*D zC)!`Q3N+ej&BH#g`&#vk?%`|n8`XVg{iBsA8;9=DtR5&LhoMPJokor0cbg61ab%_Z730-Ya3?cnCv$4 zG5wS=CVIf?cPS3sFz4M%ilB`?QNODIJl9(f!`9kzAZ9rorrBokeItOj!EtrYxI9~R zUi`Fi7W{6OR&mou5b&RRat^9i`cHSrJh@ldR9T}{Pem2`Z5!Q|UENLxGcXDW#VoMf zvrtv}g!~92-`w2#T^yn6E8pRF7UUP}yGycLi2ZKL{2xm-Hszmdv(ML+wN2LZ;2j>N zV2fuSx2)-lQV{^C@8vj^*#JMZ8;99o{1&b-oghLfw+J-&{@e{;TuNVcW!v6=fn(X7 zMz<3mE9C05m|$;O0g01A{Flv(@XP?0I}(47TC0V9pBMCPD4C%;nuK2qfan#ocHf=K zy%l?2l}s3!OePKxK_F0zdFs2UJv!y)R6}W%OlzGt%l5Q=sa%zsuo=STRzo*_aP6hV z)^c$76te}dhT1@y{|$!U4My$44L4}?$F;%UgW`;;*W72AMpO=IC*`umruj-57Xr^a zSJGPeS-D(WLAQiq&xKPyxGl4T`X>G%+K6w5N8XIZcVOkLPuKKCc|GeID)w+WEyjDX z_nyYI%hH(`(lOA?3%AC(sHLkz0AZeL`0y}bSN$o|N1E&D4LuCI=!^l94`6*+g*b+g zZRUADMSOM5zW1-D7ZFNJCZw)PbIv5{rv@=ID_?!OB?cu2u1}_k-XkJ(_lxKVWNXbe)R<|FBGx2*fyzW%L!1s#iWH; zIA6XlSR$eoZ|ZiT0OV3kDwExG>Zd|7F5pPn|Ymml2Q{~-2HY!%@YGVi@xKLVqLC;FQaNo zs6=-CJhAUDCIUsh24eGUOW5^gWgQ#MxGXo=dPM2z4`GV)$+_=4-kK0PU|XHKf56;R z`aWr%L5ua;wrKZQ>t&ZKrHLv_b#8m(3_HM_0IXDDW1pQ<$Y+CNREs&*_h_u-L_zHc zHw5s07mkmvCmQHfn6AG3nV;x9&)5&g0L(9AS1E(syKUL%AsMFr5c5%SLaZRG4D!=A z$x+!lNwik)#QSrs?d_7FeUIn~R&g7Gms07hNnJpGNROH|<=^p1%&b$h$&if-g< zLcmDl3{R|m8X5SBuBt;kUT0Og<_CkEV@mM~VbAN&Eeswuk}rQ3dDMj|3w{`4EQ85( z?E)IjQR%O?668!S~trDCuYsf+6PUwK94}=0i-@y#K7B=Q4ajE zHU_g9mfK$C!iebecY8U~uTDf52TZp%AHl5@20^p^%x|UY&x--SsG@30fb(c+K8IwQ zW&J~&OSq5o&DrSdT^?{1nS8y2=*C#izoWmvh5%|+6@%9I_yFwIAt1n~r}%expi)Ic z^{Q02K#ikqei>r>N@GXkRKpMVETY%M_3FSIGS3aBnRWue+!I6KsCU?H98?09mX*`2 zMpkLOF+v)p#eW`myO8BTp&qUP)BN9n?CF4$@W(Tw?MkJqL;ccQ*Zm;exq#a*uWk{4 z(%!NXfQIizD8 zO5EJnlkwwZ5|B}2b8#~E>j@F`0uR9Q0oJ+WdemhsKF7>}(4}{!p8FmK%P8l??)4I% zbDtY0HH8=0(AoC#MrZDOL;0IQ*DeDlf@L@1-u)o;N?bp#SsenvvvNMaYiE?+DtJ9V zF&>V$fdWYtF%Uciide~@q1t)ht>@oTH5Yw0^m1ba{Mb@L>BXj^;m?){!suO0z&Gw3 z+#6K=(A=6eXIkjSOZsG;Z^ELAV-$DqaFQ>VFXPHboWdQ0RCd3gjScV&*4d3l$FI^Z zAhS~e*bz!z$oZ(YwnY^^Jz~E+bs?_C>c=tIK(_jDHj8r^@Uadit5_X`9Sx(Ug@IlJ z=)VV^Skh#xSxfrbwc2a`tn>&%KnGSj0)YR>ck}DoS+c>Dc4=&(BCV}u#8P{C!BXDq zk3>-Ablp7UtdbERbbsKlI&rV<_f_z*N`;aFZi=n{JE-_g7jwZR>iAuTZ8kSL2W$T(jOuW$g2-<2mQ{cl5 zfEaUl)ULjV6ddR-;(hGlchNt93Nsbn)y(!9L#&w%AS(*Vj*P(jGR|BGMhTVIpNwM} z{mb0`m^m%8TEQ=&u#+DDLAY27=U@8X2+!WSAfMS&-F^y~hNKmnBB{sor^ zFT_p4mH(%)ONEP_+>n_NJhlA+OH8Y;*w;^J#~zaJn}F*DFpJp5=l(c3E4U4r1|;XJL9=fDZQplcr>mAyR!@iHv=?6_dbgF%)W3w znHf5AP?YM|aBczm=5$w|zN=01ev#)%QB$^tF+IX4M(yBO1n{f7A=bLZNlorFQ^O$? zF+f^N5v7j4JtK|0RNmU~KiNC@XPMxH8>I{^4$-crda^9=iWKR<5d%ZLKFM6+=eGC; zB%Q$GF#w+r#At@1s>6bIhu|WMJRju%Z&HYB5Pl*7u1pDo+n>V1sK77w9CSEBLC8Jh zi*!q^Aop9sP3LrZy;4nzY$x+KA>46Se&qbO7X8 z05_0;Ad)mj_4l#e;}Jt_!^#Q*IXSuWBWEgoeMs6&$tb&aUm8I)uI|EKMWU9IAyPl~ zi-<%SQ#fikU+XcD4|5mGGx()-DbehP{xYg^VsD@-LRe7|3u{frh@pX5j$-0LT<;{# z#p`VSy^pZz-|MR2qowWFCS@FY((UhPDw`Ezl%JE_*)wPLQ=1_NR9PIfDar%lF`=iH0mMB)pdL?5-?mT?x0Q}@6e}R=voz@Tk&!_!0GBXO%1GF6U^7}DVz z<AkTwGzn~0Si+bp?(d~pZDtfIGTkDi$a35==c zRM%Bchy-FLs>*)BNOttMP$kD8yT|ffXrKcfU9bDX(IO&=mEWwXu8UcjEt7LxF^su} zt3acTopPdq*c;>5qD667HwYs+=qFbJ6FIfoH_Xb^qVSRe?^w#ja!hfHf~a-ohj_)` z%Cm_KW;D(*UwQ1N2G(+$ay;2jl12SlMQ(KNq0-BmSLcxn$aruF$i25UI4djX=D>3V zNFu016^K1%8e?AIl{s>o!B!!UEdKDfpiwJBkf43uO<(yft$wC+8=bFb_Izji_?$h{ zTiT;(87yuD~&W91Ez86xhRDC-w^K*`_F9HE_d6c*l(V*c(Dokv_}P&QD(i|KBy4plf?Cj5-diIao9CS z9q=fzdemmA`vY1o9dYC@5g`#g-%rsRG+aEkEfh=5lm3KoU>|D&l~%jewBVYXYlE2hW2iBRl|u~@ai@_9$hjYBG_lVb1EnN2|A;{ zgwknsFg%dKN_8njp|h;BmlxLj6KC$8&Ay`6jefUm1R?z`!g*&u9&#%veAyJXl%Dh7 zHiRyd-%~MESR}2Kc0U$NmRF16MD*pIW$5AgQYD}{oCGAMWb5FaIAc&ZJ+oO3H(KPB z5g9*X$DIgvl#&s8H?c@};SjM`mU!t=@c3gAUM(-TUyDR_%Fq6V!O6i%swbt6`xS2& zz%`Am>Yt5p(F?@$-8odImrGt-v3hSaRXE$`62-Qk$m5ZfjP4Z?=?lrp4c!U` z@h3ZP;*X}SbvJ*a7&X;x!{P_0dgmT+nP1v)Cm9Ss6>AEXk~Y{Uv!5XhM8AJu)~2~`sTuw+BZv#_*-Di8kwGlZ zp=7rGsV?ZOPKumF%f&ym-7RseWR~U^BkEUkxxn@~kepwRf&8N9zd~uBQ{mGg zZcYPbdO4ejllO$Tjr7RW8-xXD`e5)m27xLeN&m!^s0k#2|68DY@lrF|C8 z;6TUn3#9TT-=&j(ogEeTF6RPVd};cY0sW4=9Z26Pvu{bAsQF_iO>=9{@2%Cj$kJ4* zi#vFpxJmT9iTM&E<;}F`!Xy2{i)&4OE@~!DkG&< z#_bHGcoeP?*6Q-cRpxMe1t^4z@bDmy$sWJ1rY%UM| zesFruonU&%t?^og^-@^O60K1D%Y5@L=P@Bm-#D_hCLV}5wzDsiM?X~#?uGMyuALNf zIX1bW8Trb~DrX!OA#Fg-(2LP4Om9w|R~@+dm9FPY0yq`NC?jQ4aaF_w%=eDZa za_}vm)!NzGegG1$I%8fB%-YP1-fWu&Dxhn3Ss!tj5enuQ)t_b7fj!wLqN){Q>h$L= z4G@Dh(&(2J=FsX8-_bc)3=0*QKoSRhV^!Stt}bj~sW<}W z-g);=TqLwIJA?eKmnLB4LL5I%G&Y!8`(<3;n7Zmc=ALxb=RW-|o+$&E-E5q2pZ%3sgh4WuOJVO?2Ha51rcXuS`#~f9`w3*H;u%4ODxn%3?LRgla zr(-&zqZxH`GxNo6Y~NeK{sv7K#a#vqX2^Wj6yk;A)YYwZb2jUC;Tn2X5hc+t5V?d} zANZV*5K&v3L+Zk%X7*M@^B1cMjV~Rrh^iy466J3zO$q07KZRXWwq91g)6=}&3 zD5_oE;dF3jpI&s8)#_MX$Et#dI9o`H6wWq|1qFiUYo97@OTx))ic{4kLM|707?l z1KXRjH9B|d>z`s4MU2zGscGZ;9-k(>y67OWN=sQ&y;*X6GZ%*?SUlzk)N)Jtqu7Dn z9DW!>1Kby;B1s&wx%Kep4rSd)Y2;8;zZVFXOB6hOC()acowB$Qw8Q-i#RztocgvFo-$gc&T2jfepne|Bt}*BhQxFm*gN zBiJPDnKG_RA8Bp}pm^CRUec>YZg!;LDaZjsFVY`bFj<3%oHAH>ad$6*c7|j2rtzPd z55`>U=V9|leGi3nqJMn+as7AVU6Cq&!$U31n_%V#xt@2SRqx@OxcV?LT3t`z#;`$) z%@{P7i2tZ0vBMUflX=WjT3y511Yl&AzIx6b81CqO4fvc{(NFgE3=%0huD~_hTZzMY zFYky8+~(~1IZ}{*{_C{SFiP|Mh5OD#UZIS~`G+(k&Uc@*uO$dM-xg zCZZ_HTs`gG2Vtc*KZdC_3MD!Pf!dw&sCpP1I}v3B^k(#F{qL%n6JPabgR@X%SK+PF zKgtH5G%j^|X)Dt!|6lC8%k%~a4#;q$ZJ$ojGH}!*XO>NUArR`cs36y1w2j zZL2PyJ!YPdm`$5fFr>35aV#MM_0sohUexl^_LA%A zYeZiM!_WOM<`)HBFeE`Sb-p5Abwjd$Q&8{oHh0CF+m~OjISjh^(P9y{MQv2>TcP@= zO#BFpXw5l)Rypk4qPKEWYSbO`<({NTDPJ=}FPA8Plv7&+OI|2yM^7gUE1^=2Yjn><+&nkCg z9rNtp7yWb(d3`qfh$1QPTfpyEh|;km30(PmSG1!L(BB+jq1a>gi4&H=!DO7xy3Yp~~30LvY|L0(AG^2;jNH9)-&>_VmrF(O>5Kq&8p_;*Wu?TPF+KLZY+jY*D9K8p(V{$M(*qt# zxzC}0(gPthoE=fPnb*elCg46>aQH~VYFQ8WP(_4ZH){5Kru#K&)wGT1_Vd{ra>_?3 z{cljCWT;u1wXQMq&Rn!F7K{gowiHT7FL?CZLOaiQTqmb1M;+E_Zok{%oVYGN85gF_ zeU&VU2sMM{sN(wy)g}O={549(%!|I^8L%h$jxzrJk*miQ^zuO>sK2Ah76kk>)t;+X IDZl>kAB+j_;{X5v literal 0 HcmV?d00001 diff --git a/common/src/main/resources/base/media/empty_image.png b/common/src/main/resources/base/media/empty_image.png new file mode 100644 index 0000000000000000000000000000000000000000..3e28f2b73095929385d8a3de5242add5d28d1419 GIT binary patch literal 13631 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 R`sYX!NJ2rpLd?ML{{g)$UT6RS literal 0 HcmV?d00001 diff --git a/common/src/main/resources/base/media/input_clean.svg b/common/src/main/resources/base/media/input_clean.svg new file mode 100644 index 0000000..33d613b --- /dev/null +++ b/common/src/main/resources/base/media/input_clean.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/common/src/main/resources/base/media/media_full_screen_icon_large.svg b/common/src/main/resources/base/media/media_full_screen_icon_large.svg new file mode 100644 index 0000000..46efe47 --- /dev/null +++ b/common/src/main/resources/base/media/media_full_screen_icon_large.svg @@ -0,0 +1,22 @@ + + + + + Public/ic_public_reduce + + + + + + + + + + \ No newline at end of file diff --git a/common/src/main/resources/base/media/media_full_screen_icon_pause.svg b/common/src/main/resources/base/media/media_full_screen_icon_pause.svg new file mode 100644 index 0000000..9358ae8 --- /dev/null +++ b/common/src/main/resources/base/media/media_full_screen_icon_pause.svg @@ -0,0 +1,22 @@ + + + + + icon_pause + + + + + + + + + + \ No newline at end of file diff --git a/common/src/main/resources/base/media/media_full_screen_icon_play.svg b/common/src/main/resources/base/media/media_full_screen_icon_play.svg new file mode 100644 index 0000000..ec6ee47 --- /dev/null +++ b/common/src/main/resources/base/media/media_full_screen_icon_play.svg @@ -0,0 +1,22 @@ + + + + + icon_play + + + + + + + + + + \ No newline at end of file diff --git a/common/src/main/resources/base/media/nav_add.svg b/common/src/main/resources/base/media/nav_add.svg new file mode 100644 index 0000000..4827d29 --- /dev/null +++ b/common/src/main/resources/base/media/nav_add.svg @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/common/src/main/resources/base/media/nav_back.svg b/common/src/main/resources/base/media/nav_back.svg new file mode 100644 index 0000000..1c786b8 --- /dev/null +++ b/common/src/main/resources/base/media/nav_back.svg @@ -0,0 +1,13 @@ + + + + + + + \ No newline at end of file diff --git a/common/src/main/resources/base/media/nav_search.svg b/common/src/main/resources/base/media/nav_search.svg new file mode 100644 index 0000000..41e2508 --- /dev/null +++ b/common/src/main/resources/base/media/nav_search.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/common/src/main/resources/base/media/no_history.png b/common/src/main/resources/base/media/no_history.png new file mode 100644 index 0000000000000000000000000000000000000000..57c7d7a39ac116d7e7e2bc2a4c0b91f11f24cdc3 GIT binary patch literal 9198 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 + + + + + + \ No newline at end of file diff --git a/common/src/main/resources/base/media/select_yes.svg b/common/src/main/resources/base/media/select_yes.svg new file mode 100644 index 0000000..0aa9e35 --- /dev/null +++ b/common/src/main/resources/base/media/select_yes.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/common/src/main/resources/base/media/team_invite.svg b/common/src/main/resources/base/media/team_invite.svg new file mode 100644 index 0000000..830cb96 --- /dev/null +++ b/common/src/main/resources/base/media/team_invite.svg @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/common/src/main/resources/base/media/text_input_icon.svg b/common/src/main/resources/base/media/text_input_icon.svg new file mode 100644 index 0000000..c8ed6da --- /dev/null +++ b/common/src/main/resources/base/media/text_input_icon.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/common/src/main/resources/base/media/top_back.png b/common/src/main/resources/base/media/top_back.png new file mode 100644 index 0000000000000000000000000000000000000000..fa7c276110e5f925f3189202ccce132b49f17241 GIT binary patch literal 282745 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 z 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ⅇ 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 { + // Defines a test suite. Two parameters are supported: test suite name and test suite function. + beforeAll(() => { + // Presets an action, which is performed only once before all test cases of the test suite start. + // This API supports only one parameter: preset action function. + }); + beforeEach(() => { + // Presets an action, which is performed before each unit test case starts. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: preset action function. + }); + afterEach(() => { + // Presets a clear action, which is performed after each unit test case ends. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: clear action function. + }); + afterAll(() => { + // Presets a clear action, which is performed after all test cases of the test suite end. + // This API supports only one parameter: clear action function. + }); + it('assertContain', 0, () => { + // Defines a test case. This API supports three parameters: test case name, filter parameter, and test case function. + let a = 'abc'; + let b = 'b'; + // Defines a variety of assertion methods, which are used to declare expected boolean conditions. + expect(a).assertContain(b); + expect(a).assertEqual(a); + }); + }); +} \ No newline at end of file diff --git a/commons/basic/BuildProfile.ets b/commons/basic/BuildProfile.ets index 3a501e5..6033e79 100644 --- a/commons/basic/BuildProfile.ets +++ b/commons/basic/BuildProfile.ets @@ -2,8 +2,8 @@ * Use these variables when you tailor your ArkTS code. They must be of the const type. */ export const HAR_VERSION = '1.0.0'; -export const BUILD_MODE_NAME = 'debug'; -export const DEBUG = true; +export const BUILD_MODE_NAME = 'release'; +export const DEBUG = false; export const TARGET_NAME = 'default'; /** diff --git a/commons/basic/Index.ets b/commons/basic/Index.ets index d52ae5e..bb41880 100644 --- a/commons/basic/Index.ets +++ b/commons/basic/Index.ets @@ -20,7 +20,7 @@ export { BasicConstant } from './src/main/ets/constants/BasicConstant' export { preferenceStore } from './src/main/ets/utils/PreferenceStore' -export { LoginInfo,Data,SpecialDisease } from './src/main/ets/models/LoginInfoModel' +export { LoginInfo,Data,SpecialDisease,BaseBean } from './src/main/ets/models/LoginInfoModel' export { DataWebModel,DataWebModels } from './src/main/ets/models/DataWebModel' @@ -56,4 +56,16 @@ export { huanzheDb } from './src/main/ets/utils/HuanzhelasDbHelper' export { HdSearchNav } from './src/main/ets/components/HdSearchNav' -export { DefaultHintProWindows } from './src/main/ets/Views/DefaultHintProWindows' \ No newline at end of file +export { DefaultHintProWindows } from './src/main/ets/Views/DefaultHintProWindows' + +export { PermissionsUtils } from './src/main/ets/utils/PermissionsUtils' + +export { calculateExactAge } from './src/main/ets/utils/DateUtils' + +export { PreviewPhotos } from './src/main/ets/Views/PreviewPhotos' + +export { PhotoGrids } from './src/main/ets/components/PhotoGrids' + +export { ViewImageInfo } from './src/main/ets/models/ViewImageInfo' + +export { ChangePhotoGrids } from './src/main/ets/components/ChangePhotoGrids' \ No newline at end of file diff --git a/commons/basic/src/main/ets/Views/PerfactInputSheet.ets b/commons/basic/src/main/ets/Views/PerfactInputSheet.ets index 0cad328..c119075 100644 --- a/commons/basic/src/main/ets/Views/PerfactInputSheet.ets +++ b/commons/basic/src/main/ets/Views/PerfactInputSheet.ets @@ -7,8 +7,12 @@ export struct PerfactInputSheet { @Prop inputTitle:string = ''; @Prop inputPlaceholder:string = '' @State inputText:string = '' - + @State style:string = '0'//默认类型为注册时候的弹窗//1为普通确认取消输入框//2未普通弹框 // 添加回调函数属性 + @State okColor:ResourceStr='#000000' + @State cancelColor:ResourceStr='#333333' + @State okText:ResourceStr='确定' + @State cancelText:ResourceStr='取消' private inputCallBack: (input: string,title:string) => void = () => {}; // 修改构造函数 @@ -19,59 +23,176 @@ export struct PerfactInputSheet { } build() { - Column() { - // 操作按钮区域 - Row() { - Button('取消') - .layoutWeight(1) - .backgroundColor(Color.Transparent) - .fontColor($r('app.color.main_color')) - .backgroundColor('#EEEEEE') - .width('15%') - .fontSize(15) - .onClick(() => { - this.controller.close() - }) + if(this.style=='0') + { + Column() { + // 操作按钮区域 + Row() { + Button('取消') + .layoutWeight(1) + .backgroundColor(Color.Transparent) + .fontColor($r('app.color.main_color')) + .backgroundColor('#EEEEEE') + .width('15%') + .fontSize(15) + .onClick(() => { + this.controller.close() + }) - Text(this.inputTitle) - .width('65%') - .fontSize(15) - .fontColor('#333333') - .textAlign(TextAlign.Center) + Text(this.inputTitle) + .width('65%') + .fontSize(15) + .fontColor('#333333') + .textAlign(TextAlign.Center) - Button('确定') - .layoutWeight(1) - .fontSize(15) - .backgroundColor(Color.Transparent) - .fontColor($r('app.color.main_color')) - .backgroundColor('#EEEEEE') - .width('15%') - .onClick(() => { - if (this.inputText.length <= 0) { - promptAction.showToast({ message: '输入不能为空', duration: 1000 }) - return; - } - this.controller.close() - this.inputCallBack(this.inputText, this.inputTitle); + Button('确定') + .layoutWeight(1) + .fontSize(15) + .backgroundColor(Color.Transparent) + .fontColor($r('app.color.main_color')) + .backgroundColor('#EEEEEE') + .width('15%') + .onClick(() => { + if (this.inputText.length <= 0) { + promptAction.showToast({ message: '输入不能为空', duration: 1000 }) + return; + } + this.controller.close() + this.inputCallBack(this.inputText, this.inputTitle); + }) + } + .height(30) + + Row(){ + TextInput({ + placeholder: this.inputPlaceholder }) + .height(50) + .fontColor(Color.Black) + .backgroundColor(Color.White) + .onChange((value: string) => { + this.inputText = value; + }) + } + .backgroundColor(Color.White) } - .height(30) - - Row(){ - TextInput({ - placeholder: this.inputPlaceholder - }) - .height(50) - .fontColor(Color.Black) - .backgroundColor(Color.White) - .onChange((value: string) => { - this.inputText = value; - }) - } - .backgroundColor(Color.White) + .width('100%') + .height(100) + .backgroundColor('#EEEEEE') + } + else if(this.style=='1') + { + Row(){ + Column() { + Text(this.inputTitle) + .fontSize(18) + .textAlign(TextAlign.Start) + .margin({ top: 20,bottom:20,left:20 }) + .width('100%') + .fontColor('#12AAE2') + + Row(){ + TextInput({ + placeholder: this.inputPlaceholder + }) + .height(40) + .fontColor(Color.Black) + .backgroundColor(Color.White) + .onChange((value: string) => { + this.inputText = value; + }) + } + .backgroundColor(Color.White) + .borderWidth(1) + .borderRadius(4) + .borderColor('#12AAE2') + Text('').height(1).width('100%') + .backgroundColor($r('app.color.home_gray')).margin({top:20}) + Row({ space: 20 }) { + Text('取消') + .fontSize(15) + .fontColor('#666666') + .textAlign(TextAlign.Center) + .width('45%').height(30) + .onClick(() => { + this.controller.close() + }) + Text('').height(30).width(1) + .backgroundColor($r('app.color.home_gray')) + Text('确定') + .fontColor('#000000') + .fontSize(15) + .textAlign(TextAlign.Center) + .onClick(() => { + if (this.inputText.length <= 0) { + promptAction.showToast({ message: '输入不能为空', duration: 1000 }) + return; + } + this.controller.close() + this.inputCallBack(this.inputText, this.inputTitle); + }) + + .width('45%').height(30) + + + + }.margin({ top: 10, bottom: 10 }) + } + .width('80%').backgroundColor(Color.White) + }.borderRadius(24) + } + else if(this.style=='2') + { + Row(){ + Column() { + Text(this.inputTitle) + .fontSize(18) + .padding(20) + .width('100%') + .textAlign(TextAlign.Center) + .fontColor('#444444') + + Row(){ + Text(this.inputPlaceholder) + .fontColor('#444444') + .backgroundColor(Color.White) + .padding({left:10,right:10}) + + } + .backgroundColor(Color.White) + + Text('').height(1).width('100%') + .backgroundColor($r('app.color.home_gray')).margin({top:10}) + Row({ space: 20 }) { + Text(this.cancelText) + .fontSize(15) + .fontColor(this.cancelColor) + .textAlign(TextAlign.Center) + + .width('45%').height(30) + .onClick(() => { + this.controller.close() + }) + Text('').height(30).width(1) + .backgroundColor($r('app.color.home_gray')) + Text(this.okText) + .textAlign(TextAlign.Center) + .fontColor(this.okColor) + .fontSize(15) + .onClick(() => { + + this.controller.close() + this.inputCallBack(this.inputText, this.inputTitle); + }) + + .width('45%').height(30) + + + + }.margin({ top: 10, bottom: 10 }) + } + .width('80%').backgroundColor(Color.White) + }.borderRadius(24) } - .width('100%') - .height(100) - .backgroundColor('#EEEEEE') } } diff --git a/commons/basic/src/main/ets/Views/PhotoActionSheet.ets b/commons/basic/src/main/ets/Views/PhotoActionSheet.ets index 284539b..6276c9a 100644 --- a/commons/basic/src/main/ets/Views/PhotoActionSheet.ets +++ b/commons/basic/src/main/ets/Views/PhotoActionSheet.ets @@ -10,10 +10,11 @@ export struct PhotoActionSheet { controller: CustomDialogController; // 添加回调函数属性 - private onPhotoSelected: (uri: string) => void = () => {}; + private onPhotoSelected: (uris: string[] | string) => void = () => {}; + @Prop maxSelectNumber:number=1//选择张数 // 修改构造函数 - constructor(controller: CustomDialogController, onPhotoSelected: (uri: string) => void) { + constructor(controller: CustomDialogController, onPhotoSelected: (uris: string[] | string) => void) { super(); this.controller = controller; this.onPhotoSelected = onPhotoSelected; @@ -117,6 +118,7 @@ export struct PhotoActionSheet { if (result.resultCode === 0) { console.log('Photo URI:', result.resultUri); // 处理拍摄结果 + this.onPhotoSelected(result.resultUri); } } catch (error) { console.error('Camera error:', error.code); @@ -127,7 +129,7 @@ export struct PhotoActionSheet { private selectPhoto() { let photoSelectOptions = new picker.PhotoSelectOptions(); photoSelectOptions.MIMEType = picker.PhotoViewMIMETypes.IMAGE_TYPE; - photoSelectOptions.maxSelectNumber = 1; + photoSelectOptions.maxSelectNumber = this.maxSelectNumber; let photoViewPicker = new picker.PhotoViewPicker(); photoViewPicker.select(photoSelectOptions) @@ -135,7 +137,15 @@ export struct PhotoActionSheet { console.info('PhotoViewPicker.select successfully, photoSelectResult uri: ' + JSON.stringify(photoSelectResult)); if (photoSelectResult.photoUris && photoSelectResult.photoUris.length > 0) { - this.onPhotoSelected(photoSelectResult.photoUris[0]); + if(this.maxSelectNumber==1) + { + this.onPhotoSelected(photoSelectResult.photoUris[0]); + } + else + { + this.onPhotoSelected(photoSelectResult.photoUris); + } + } }) .catch((err: BusinessError) => { diff --git a/commons/basic/src/main/ets/Views/PreviewPhotos.ets b/commons/basic/src/main/ets/Views/PreviewPhotos.ets new file mode 100644 index 0000000..c1df5e5 --- /dev/null +++ b/commons/basic/src/main/ets/Views/PreviewPhotos.ets @@ -0,0 +1,232 @@ + +import { router } from "@kit.ArkUI"; +import http from '@ohos.net.http' +import fileio from '@ohos.fileio' +import prompt from '@ohos.promptAction' +import { abilityAccessCtrl, common, Permissions } from '@kit.AbilityKit'; +import { BusinessError } from '@kit.BasicServicesKit'; +import { BasicConstant } from "../constants/BasicConstant"; +import { ViewImageInfo } from "../models/ViewImageInfo"; +import { PermissionsUtils } from "../utils/PermissionsUtils"; + + +@Component +export struct PreviewPhotos { + + @State + imgList: ViewImageInfo[]=[] // 传入图片数组 + @State params:paramPhoto= router.getParams() as paramPhoto + @State previewIndex: number = 0 + @State downLoad:boolean=true + + // 检查存储权限 + async checkStoragePermission(): Promise { + try { + const atManager = abilityAccessCtrl.createAtManager(); + const grantStatus = await atManager.checkAccessToken( + globalThis.abilityContext.applicationInfo.accessTokenId, + 'ohos.permission.WRITE_MEDIA' + ); + return grantStatus === abilityAccessCtrl.GrantStatus.PERMISSION_GRANTED; + } catch (error) { + console.error('检查权限失败:', error); + return false; + } + } + + // 申请存储权限 + async requestStoragePermission(): Promise { + try { + const context = getContext(this) as common.UIAbilityContext; + const result = await PermissionsUtils.reqPermissionsFromUser(['ohos.permission.WRITE_MEDIA'], context); + return result.grantStatus || false; + } catch (error) { + console.error('申请权限失败:', error); + return false; + } + } + + // 下载图片方法(伪代码,需根据实际API实现) + async downloadImage(url: string) { + try { + // 1. 检查权限 + const hasPermission = await this.checkStoragePermission(); + if (!hasPermission) { + // 申请权限 + const granted = await this.requestStoragePermission(); + if (!granted) { + prompt.showToast({ message: $r('app.string.netease_permission_denied_tips') }); + return; + } + } + + // 显示下载中提示 + prompt.showToast({ message: $r('app.string.netease_saving_image_tips') }); + + // 2. 下载图片 + const httpRequest = http.createHttp() + const response = await httpRequest.request(url, { + method: http.RequestMethod.GET, + expectDataType: http.HttpDataType.ARRAY_BUFFER, + connectTimeout: 30000, // 30秒连接超时 + readTimeout: 30000, // 30秒读取超时 + }) + httpRequest.destroy() + + if (response.responseCode !== 200) { + prompt.showToast({ message: $r('app.string.netease_download_failed_tips') }) + return + } + + // 3. 写入到公共图片目录 + const fileName = 'img_' + Date.now() + '.jpg' + const filePath = '/storage/media/100/local/photos/' + fileName + + try { + const fd = await fileio.open(filePath, 0o2 | 0o100) // 写入+创建 + await fileio.write(fd, new Uint8Array(response.result as ArrayBuffer)) + await fileio.close(fd) + prompt.showToast({ message: $r('app.string.netease_save_success_tips') }) + } catch (fileError) { + console.error('文件写入失败:', fileError); + prompt.showToast({ message: $r('app.string.netease_save_failed_tips') }) + } + } catch (e) { + console.error('下载图片失败:', e); + prompt.showToast({ message: $r('app.string.netease_save_error_tips') }) + } + } + + aboutToAppear(): void { + this.imgList= this.params.imgList + this.previewIndex=this.params.previewIndex + this.downLoad=this.params.downLoad + } + + dialog = new CustomDialogController({ + builder: SaveDialog( + { + CallBack:()=>{ + + + } + } + ), + cornerRadius: 4, + width: '70%', + }) + + build() { + RelativeContainer() { + // 遮罩层 + Stack() { + // 半透明背景 + Text().backgroundColor(Color.Black).width('100%').height('100%') + // 大图浏览 + Column({ space: 16 }) { + // 角标 + + // 可滑动大图 + Swiper() { + + ForEach(this.imgList, (item: ViewImageInfo, idx: number) => { + Image(item.url?(BasicConstant.urlHtml +item.url):item.uri) + .width('100%') + // .objectFit(ImageFit.Contain) + .gesture( + LongPressGesture({ + duration: 1000, // 设置长按触发时间为1秒 + repeat: true // 允许连续触发回调 + }) + .onAction((event: GestureEvent) => { + this.dialog.open() + }) + ) + + }) + + + } + .indicator(false) + .loop(false) // 禁用循环滑动 + .onChange((index: number) => { + this.previewIndex = index + }) + + } + .align(Alignment.Center) + + + + } + .width('100%') + .height('100%') + .onClick(() => { + router.back() + }) + Row() + { + Image($r('app.media.ic_topbar_save')).width(30).height(30) + .onClick(()=>{ + this.downloadImage( this.imgList[this.previewIndex].url?(BasicConstant.urlHtml + this.imgList[this.previewIndex].url): this.imgList[this.previewIndex].url) + }) + Blank() + + Text(`${this.previewIndex + 1}/${this.imgList.length}`) + .fontSize(18) + .fontColor($r('app.color.top_title')) + + + + } + .visibility(this.downLoad?Visibility.Visible:Visibility.Hidden) + .height(30) + .width('100%') + .padding({ left:20,right:20 }) + .margin({bottom:40}) + .alignRules({bottom: { anchor: "__container__", align: VerticalAlign.Bottom }} ) + } + .width('100%') + .height('100%') + } +} + +interface paramPhoto +{ + previewIndex:number , + imgList:ViewImageInfo[], + downLoad:boolean + +} + +@CustomDialog +struct SaveDialog { + controller: CustomDialogController + CallBack: () => void = () => {}; + build() { + Column() { + Text('提示') + .fontSize(17) + .fontColor('#444444') + .padding(15) + Text('').height(1).width('100%') + .backgroundColor($r('app.color.home_gray')) + Text('保存到手机') + .fontSize(16).fontColor($r('app.color.common_gray_03')) + .padding(10).width('100%').textAlign(TextAlign.Start) + .onClick(() => { + + if (this.controller != undefined) { + this.controller.close() + this.CallBack(); + } + }) + Text('').height(1).width('100%') + .backgroundColor($r('app.color.home_gray')) + .margin({bottom:10}) + } + + .backgroundColor($r('app.color.white')) + + } +} \ No newline at end of file diff --git a/commons/basic/src/main/ets/components/ChangePhotoGrids.ets b/commons/basic/src/main/ets/components/ChangePhotoGrids.ets new file mode 100644 index 0000000..a32abd9 --- /dev/null +++ b/commons/basic/src/main/ets/components/ChangePhotoGrids.ets @@ -0,0 +1,78 @@ + +import { router } from "@kit.ArkUI" +import { BasicConstant } from "../constants/BasicConstant" +import { ViewImageInfo } from "../models/ViewImageInfo" + +@Component +export struct ChangePhotoGrids { + + @Prop + imgList: ViewImageInfo[] // 传入图片数组 + + @State previewIndex: number = 0 + + @Prop maxSelectNumber:number + + @Link addImg: boolean; + @Link removeImg: boolean; + @Link removeIndex: number; + + @State downLoad:boolean=false + build() { + Column() { + + // 八宫格 + Grid() { + ForEach(this.imgList, (item: ViewImageInfo, index: number) => { + GridItem() { + Stack() { + Image(item.url ? (BasicConstant.urlHtml + item.url) : item.uri) + .width(80) + .height(80) + .objectFit(ImageFit.Fill) + .onClick(() => { + this.previewIndex = index + router.pushUrl({ + url: 'pages/Netease/PreviewPhotoPage', + params: { previewIndex: this.previewIndex, imgList: this.imgList, downLoad:this.downLoad } + }); + }) + Image($r('app.media.iv_delete_new')) + .width(20).height(20) + .position({ x: 55, y: 5 }) + .onClick(() => { + + this.removeImg=!this.removeImg + this.removeIndex=index + + }) + } + } + + }) + GridItem() + { + // 添加按钮(未满9张时显示) + if (this.imgList.length < this.maxSelectNumber) { + + Image($r('app.media.new_selected')) + .width(80).height(80) + .objectFit(ImageFit.Fill) + .borderRadius(8) + .onClick(() => { + this.addImg=!this.addImg + + }) + + } + } + } + .columnsTemplate('1fr 1fr 1fr 1fr') + .rowsGap(8) + .columnsGap(8) + + } + .padding({left:10,right:10}) + + } +} \ No newline at end of file diff --git a/commons/basic/src/main/ets/components/HdList.ets b/commons/basic/src/main/ets/components/HdList.ets index 8f20009..d068d7c 100644 --- a/commons/basic/src/main/ets/components/HdList.ets +++ b/commons/basic/src/main/ets/components/HdList.ets @@ -23,6 +23,9 @@ export struct HdList { // options lw: number = 0 + @State strokeWidth: Length =0 + @State dividerColor:ResourceStr=$r('app.color.efefef'); + @Builder defaultListContent() { } @@ -87,6 +90,10 @@ export struct HdList { .width('100%') .height('100%') .padding({ left: BasicConstant.SPACE_LG, right: BasicConstant.SPACE_LG }) + .divider({ + strokeWidth: this.strokeWidth, // 线宽 + color: this.dividerColor, // 颜色 + }) // .divider({ // strokeWidth: $r('app.float.common_border_width'), // color: $r('app.color.common_gray_border') diff --git a/commons/basic/src/main/ets/components/PhotoGrids.ets b/commons/basic/src/main/ets/components/PhotoGrids.ets new file mode 100644 index 0000000..60e6999 --- /dev/null +++ b/commons/basic/src/main/ets/components/PhotoGrids.ets @@ -0,0 +1,48 @@ + +import { router } from "@kit.ArkUI" +import { BasicConstant } from "../constants/BasicConstant" +import { ViewImageInfo } from "../models/ViewImageInfo" + +@Component +export struct PhotoGrids { + + @Prop + imgList: ViewImageInfo[] // 传入图片数组 + + @State previewIndex: number = 0 + + @State downLoad:boolean=true + build() { + Column() { + + // 八宫格 + Grid() { + ForEach(this.imgList, (item: ViewImageInfo, index: number) => { + GridItem() + { + + Image( item.url?(BasicConstant.urlHtml +item.url):item.uri) + .width('100%') + .height(100) + .objectFit(ImageFit.Fill) + .onClick(() => { + this.previewIndex = index + router.pushUrl({ + url: 'pages/Netease/PreviewPhotoPage', + params: { previewIndex: this.previewIndex ,imgList:this.imgList,downLoad:this.downLoad} + }); + }) + } + + }) + + } + .columnsTemplate('1fr 1fr 1fr 1fr') + .rowsGap(8) + .columnsGap(8) + + } + .padding({left:10,right:10}) + + } +} \ No newline at end of file diff --git a/commons/basic/src/main/ets/constants/BasicConstant.ets b/commons/basic/src/main/ets/constants/BasicConstant.ets index ee7fbb1..becfc16 100644 --- a/commons/basic/src/main/ets/constants/BasicConstant.ets +++ b/commons/basic/src/main/ets/constants/BasicConstant.ets @@ -6,22 +6,22 @@ export class BasicConstant { static readonly getzcxy = "https://doc.igandan.com/app/integral/hmos_expert_zcxy.html";// 注册协议正式地址 //测试环境 - // static readonly urlExpertAPI = "https://dev-app.igandan.com/app/expertAPI/"; - // static readonly urlExpertApp = "https://dev-app.igandan.com/app/expertApp/" - // static readonly urlHtml = "http://dev-doc.igandan.com/app/" - // static readonly urlImage = "https://dev-doc.igandan.com/app/" - // static readonly urlExpert = "https://dev-app.igandan.com/app/expert/" - // static readonly wxUrl = "https://dev-wx.igandan.com/"; - // static readonly polvId = "11";//保利威视学员id + static readonly urlExpertAPI = "https://dev-app.igandan.com/app/expertAPI/"; + static readonly urlExpertApp = "https://dev-app.igandan.com/app/expertApp/" + static readonly urlHtml = "http://dev-doc.igandan.com/app/" + static readonly urlImage = "https://dev-doc.igandan.com/app/" + static readonly urlExpert = "https://dev-app.igandan.com/app/expert/" + static readonly wxUrl = "https://dev-wx.igandan.com/"; + static readonly polvId = "11";//保利威视学员id //正式环境 - static readonly urlExpertAPI = "https://app.igandan.com/app/expertAPI/"; - static readonly urlExpertApp = "http://app.igandan.com/app/expertApp/" - static readonly urlHtml = "http://doc.igandan.com/app/" - static readonly urlImage = "http://doc.igandan.com/app/" - static readonly urlExpert = "http://app.igandan.com/app/expert/" - static readonly wxUrl = "https://wx.igandan.com/";// 微信服务器地址 - static readonly polvId = "21";//保利威视学员id + // static readonly urlExpertAPI = "https://app.igandan.com/app/expertAPI/"; + // static readonly urlExpertApp = "http://app.igandan.com/app/expertApp/" + // static readonly urlHtml = "http://doc.igandan.com/app/" + // static readonly urlImage = "http://doc.igandan.com/app/" + // static readonly urlExpert = "http://app.igandan.com/app/expert/" + // static readonly wxUrl = "https://wx.igandan.com/";// 微信服务器地址 + // static readonly polvId = "21";//保利威视学员id static readonly getStartpage=BasicConstant.urlExpertApp + "startpage"; @@ -46,7 +46,23 @@ export class BasicConstant { static readonly updatePwd = BasicConstant.urlExpertAPI+'updatePwd' static readonly read = BasicConstant.urlExpert+'read'//视频阅读数 static readonly POLVID ='PolvId'//保利观众id - + static readonly QuickReplyList = BasicConstant.urlExpert+'QuickReplyList'//快捷回复 + static readonly addQuickReply = BasicConstant.urlExpert+'addQuickReply'//添加快捷回复 + static readonly deleteQuickReply = BasicConstant.urlExpert+'deleteQuickReply'//删除快捷回复 + static readonly stopOutPatientList = BasicConstant.urlExpertApp+'stopOutPatientList'//停诊 + static readonly listOutPatient = BasicConstant.urlExpertApp+'listOutPatient'//出诊 + static readonly urlOutpatientnew = BasicConstant.wxUrl+"wxPatient/index.htm#/outPatient?link=share&expertUuid=";//出诊 + static readonly getNewWa="https://wx.igandan.com/shop_notify/";//肝胆商城妞娃购买链接 + static readonly patientDetail= BasicConstant.urlExpert + "patientDetail";// 患者详情 + static readonly newConsultList = BasicConstant.urlExpertAPI + "newConsultList";// 新的公益咨询列表 + static readonly consultListHis = BasicConstant.urlExpertAPI +"consultListHis";// 公益咨询历史列表 + static readonly consultDetail = BasicConstant.urlExpertAPI + "consultDetail";// 公益咨询详情 + static readonly countConsult= BasicConstant.urlExpert + "countConsult";// 回答患者次数 + static readonly resConsult= BasicConstant.urlExpert +"resConsult";// 抢答公益咨询 + static readonly listNewInterrogation = BasicConstant.urlExpertAPI +"listNewInterrogation";// 一问多答 新的一问多答列表 + static readonly listMyAnsweredInterrogation = BasicConstant.urlExpertAPI +"listMyAnsweredInterrogation";// 一问多答 我回答的一问多答列表 + static readonly getInterrogation = BasicConstant.urlExpertAPI +"getInterrogation";// 一问多答 详情页 + static readonly InterrogationPatientInfo = BasicConstant.urlExpertAPI +"InterrogationPatientInfo";// 一问多答 患者详情页 static readonly province=['全国','北京市','天津市','河北省','山西省' ,'内蒙古自治区','辽宁省','吉林省','黑龙江省','上海市','江苏省','浙江省' ,'安徽省','福建省','江西省','山东省','河南省','湖北省','湖南省','广东省', @@ -57,5 +73,16 @@ export class BasicConstant { static readonly notification_back_refreshData = 250529;//返回上页通知刷新数据 //首页tabContent切换事件通知 static readonly notification_home_tab_change = 25060413; + + + static readonly YX_accid='YX_accid'//云信 + static readonly YX_token='YX_token'//云信 + + static readonly Teach="[图文科普]"; + static readonly VideoTeach="[视频科普]"; + static readonly VisitTeach="[门诊公告]"; + static readonly CouTeach="[公益咨询]"; + static readonly Shopping="[肝胆商城]"; + static readonly Hostipal="[互联网医院]"; } diff --git a/commons/basic/src/main/ets/models/LoginInfoModel.ets b/commons/basic/src/main/ets/models/LoginInfoModel.ets index 7568b22..5162ba0 100644 --- a/commons/basic/src/main/ets/models/LoginInfoModel.ets +++ b/commons/basic/src/main/ets/models/LoginInfoModel.ets @@ -53,4 +53,9 @@ export interface Data{ realName:string; specialy:Array; +} + +export interface BaseBean{ + code:string; + message:string; } \ No newline at end of file diff --git a/commons/basic/src/main/ets/models/ViewImageInfo.ets b/commons/basic/src/main/ets/models/ViewImageInfo.ets new file mode 100644 index 0000000..88ad1f8 --- /dev/null +++ b/commons/basic/src/main/ets/models/ViewImageInfo.ets @@ -0,0 +1,6 @@ +export interface ViewImageInfo{ + + url:string, + uri:string + +} \ No newline at end of file diff --git a/commons/basic/src/main/ets/utils/ChangeUtil.ets b/commons/basic/src/main/ets/utils/ChangeUtil.ets index c2ed989..fd88d28 100644 --- a/commons/basic/src/main/ets/utils/ChangeUtil.ets +++ b/commons/basic/src/main/ets/utils/ChangeUtil.ets @@ -172,4 +172,13 @@ export class ChangeUtil { static isOnline(): boolean { return connection.hasDefaultNetSync(); } + //length转化为数字 + static parseLengthToNumber(length: Length): number { + if (typeof length === "string") { + // 移除单位并转换 + const numericPart = parseFloat(length.replace(/[^0-9.]/g, '')); + return isNaN(numericPart) ? 0 : numericPart; + } + return length as number; // 已经是数值类型 + } } \ No newline at end of file diff --git a/commons/basic/src/main/ets/utils/DateUtils.ets b/commons/basic/src/main/ets/utils/DateUtils.ets index fdee613..d699cd8 100644 --- a/commons/basic/src/main/ets/utils/DateUtils.ets +++ b/commons/basic/src/main/ets/utils/DateUtils.ets @@ -22,4 +22,26 @@ export function formatDate(date: Date,pattern:DateFormat = 'YYYY-MM-DD'): string default: throw new Error(`Unsupported format pattern: ${pattern}`); } + + + +} +//计算年龄 +export function calculateExactAge(birthDate: Date) { + const today = new Date(); + let years = today.getFullYear() - birthDate.getFullYear(); + let months = today.getMonth() - birthDate.getMonth(); + let days = today.getDate() - birthDate.getDate(); + + if (days < 0) { + months--; + // 获取上月最后一天 + const lastDayOfMonth = new Date(today.getFullYear(), today.getMonth(), 0).getDate(); + days += lastDayOfMonth; + } + if (months < 0) { + years--; + months += 12; + } + return years; } diff --git a/commons/basic/src/main/ets/utils/PermissionsUtils.ets b/commons/basic/src/main/ets/utils/PermissionsUtils.ets new file mode 100644 index 0000000..e00cf00 --- /dev/null +++ b/commons/basic/src/main/ets/utils/PermissionsUtils.ets @@ -0,0 +1,53 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +// found in the LICENSE file. + +import { abilityAccessCtrl, common, Permissions } from '@kit.AbilityKit'; +import { BusinessError } from '@kit.BasicServicesKit'; + +export class PermissionsRequestResult { + // 错误信息 + public error?: BusinessError; + // 是否授权 + public grantStatus?: boolean; +} + +export class PermissionsUtils { + static async reqPermissionsFromUser(permissions: Array, + context: common.UIAbilityContext): Promise { + + const result: PermissionsRequestResult = await new Promise((resolve: Function) => { + console.log("net ease reqPermissionsFromUser") + let atManager: abilityAccessCtrl.AtManager = abilityAccessCtrl.createAtManager(); + // requestPermissionsFromUser会判断权限的授权状态来决定是否唤起弹窗 + atManager.requestPermissionsFromUser(context, permissions).then((data) => { + let grantStatus: Array = data.authResults; + let length: number = grantStatus.length; + let permissionsRequestResult = new PermissionsRequestResult(); + if (grantStatus.length > 0) { + const grant = grantStatus[0]; + if (grant === 0) { + // 用户授权,可以继续访问目标操作 + permissionsRequestResult.grantStatus = true; + } else { + // 用户拒绝授权,提示用户必须授权才能访问当前页面的功能,并引导用户到系统设置中打开相应的权限 + permissionsRequestResult.grantStatus = false; + } + } + resolve(permissionsRequestResult); + + }).catch((err: BusinessError) => { + console.error(`netease Failed to request permissions from user. Code is ${err.code}, message is ${err.message}`); + let permissionsRequestResult = new PermissionsRequestResult(); + permissionsRequestResult.error = err; + resolve(permissionsRequestResult); + }) + }); + return result + } +} \ No newline at end of file diff --git a/commons/basic/src/main/resources/base/element/color.json b/commons/basic/src/main/resources/base/element/color.json index cc5ce7c..1af98d5 100644 --- a/commons/basic/src/main/resources/base/element/color.json +++ b/commons/basic/src/main/resources/base/element/color.json @@ -59,6 +59,14 @@ { "name": "main_color", "value": "#923C35" + }, + { + "name": "efefef", + "value": "#efefef" + }, + { + "name": "999999", + "value": "#999999" } ] } \ No newline at end of file diff --git a/commons/basic/src/main/resources/base/element/string.json b/commons/basic/src/main/resources/base/element/string.json index 45b920c..9d2de8a 100644 --- a/commons/basic/src/main/resources/base/element/string.json +++ b/commons/basic/src/main/resources/base/element/string.json @@ -35,6 +35,46 @@ { "name": "hd_clock_in", "value": "打卡" + }, + { + "name": "cancellation", + "value": "账号已注销" + }, + { + "name": "page_show", + "value": "page from package" + }, + { + "name": "netease_permission_write_media_desc", + "value": "用于保存图片到相册" + }, + { + "name": "netease_permission_read_media_desc", + "value": "用于读取相册中的图片" + }, + { + "name": "netease_permission_denied_tips", + "value": "需要存储权限才能保存图片,请在设置中开启权限" + }, + { + "name": "netease_saving_image_tips", + "value": "正在保存图片..." + }, + { + "name": "netease_download_failed_tips", + "value": "图片下载失败,请检查网络连接" + }, + { + "name": "netease_save_success_tips", + "value": "图片已保存到相册" + }, + { + "name": "netease_save_failed_tips", + "value": "保存失败,请检查存储空间" + }, + { + "name": "netease_save_error_tips", + "value": "保存失败,请稍后重试" } ] } diff --git a/commons/basic/src/main/resources/base/media/ic_topbar_save.png b/commons/basic/src/main/resources/base/media/ic_topbar_save.png new file mode 100644 index 0000000000000000000000000000000000000000..c4fb36b46c0d1cb93b9b50c054c9679bfef489ad GIT binary patch literal 1714 zcmaJ?c~BE)6i=aeA&5w=$4p#S7;z-oY%Y>OWWpvu8iQOSFp60=8?r-^4VzU0sD;#N zQ3gR~1jUOfI$qUM+8GgxGFDMqDu^P2$YBd=O963ItX8|>u>L{a`F6kS{eJKF-uJ%Q zozYPd9&?t=VX;^q>PTfQ(}y_USu>cg>~#mlbc<=uDKtSqeRwiUVphnuf>X zs6H#B5oZvt1QDM|Cu-NoFw)FLoi<#%*~*|9vQWDf#nN#aNX63#iyR!ja0vtmy&POG z((<%c1UC|q*%Tg^9Tksdr(;q*7`hq=vC9|&Gfty`-E6YhWOg|?&MRZa&SeM$#!cvS zIXEFIQ5y{)B!vSau84#2U?C7B<-#IZD1ie3J`WZ^JOKm?I51zvlgeNbF!_LtH%f1i z#VW%meK9jRXryVY41zKU@i|bo1JluTifVZ{687fTHE5Y ztT+^l+sMrn#+-*?`4pJR-G?1H4H-4EwG_b|3Tjf4*k&_sq18$`$n0?Sgr1Qvge4NO zfrAN9DF(S|5?$A~3S+!I=CTM6jkzAa6S~)R;38cdJd))_$_TuKh~$!>8TGYPdT< z;Fh3!zeR}8w$40w>QK^+enE@+c5Xvujt>G(7yqqpoAa7;bi2coa7*ajlMymfttamnl~#J*c5FXC7nG3SxrGH~N|uTwS+7?^9lXL$hQoufJ=n z?V=bQjM}9!ny&jFiAig%Piw({d3k}8GRQUQUxw*}bPck^n3OY{wu zJx!0FJF=xI^9FT)2-x%2c)O0C?DtA`uqzkDxaI}23TAhGmm7N6_*?mvg1(n=nz^el zo38g4XU-0}Hr6WDjIghc{^;|htDH5gxm8>msH(#fn|B---T!QB=fFtozT**Gb3FpP zwjcGV;TU=&2v>_3?OS%OqU4K`!H3)x?v6L^xh|`!Cff@9bGJpT*Z0r0uNHpm>HLeR LRZ+^bVLHdZMopH@ literal 0 HcmV?d00001 diff --git a/commons/basic/src/main/resources/base/media/iv_delete_new.png b/commons/basic/src/main/resources/base/media/iv_delete_new.png new file mode 100644 index 0000000000000000000000000000000000000000..91537aa40c8110d5538e135a2492786f25f5bc49 GIT binary patch literal 1206 zcmV;n1WEgeP)Px(a7jc#R9HvVnNMgORUF5^-)+()U@y`hY-Sb_K`)*Zi#PG&WoJMzb!YJ)B1mnh zO53Dqo1{%@Vnd2r5{n?{L3Y=!AnxwPi+B@3FM6pUqC1;5}B##FJrw-_+ zlJ2fsI~}c2$-U^-KP!*dQqVf!UT*D%$XMTMAJD51OTuq$B;mgy%_7D)gjb_^M@53a z3V0nr-`2XS^b(JF6~_lG+0GP&kuZY--ia477d<&Q;hY6A6Q<+WX5pGq%$)J{Eax(S zu`oRm)A4-fJpICNIls44TPb9XV#cX0zL0RvR>L5L8MBxfuIZGl%m$6fWQ1v>{CY)~vBP`oaPQr_k00G2+@%}<) zq7K>kp%Z2yGhUm!ok*R!Prbj|Dz-mJd_mWCeuD5s`)ccwB*%<=dNK$ZBMt_^%U0@b zLD!CG#YP$ zT(F&?>L$Sx!5Nhu0gMsD{rOBoPApl@1p+NS8wqebTTDPzXeeID&bHj*MDilZ`WcM? zwsr))E$%!>MDVmxNWWJzykI$FB9@JOrk=J+c5;+rJ=!Bd`a#lJn$ZFAt)s>C_4QmB zC}F~gS&P$3!Z>5Y!+A3P}xpRO7dH_ ztp;P9GQLWCsVY*#dXL0Mk{$(^2s09#C-8}+KR|kY;R9RiHZ`oC@Sfi0nrQ>KyM{{> z4|d%WcJ_%QikE#^VG+wME=_CaWB*<|>yf#ax4W>5yYJ!s{`BDo%rgUhJlys9ZoSX= z?=p9Lj`Q13z1FW`{6C-Hf}h~M*Fc)z>FD0}17;9%Uq1l{LHF$=dh@~E&EF9J0t`79 U*B+SE!~g&Q07*qoM6N<$f@lgnkN^Mx literal 0 HcmV?d00001 diff --git a/commons/basic/src/main/resources/base/media/new_selected.png b/commons/basic/src/main/resources/base/media/new_selected.png new file mode 100644 index 0000000000000000000000000000000000000000..c5eb691723e8713b6afc794c5c163394c7645dff GIT binary patch literal 1579 zcmaJ>4NMbf7_Oj9n&_sGDJ8?RFa=h6y_Wu+?c{91cCkuI)ehY7>>Y5y>y^8MmI_hS znIZmwP6t8R#*mFE>QrR%*GyDEgK=nJf(++0!{|z2Iy0HND*|rG*d>?m{k}ZU^FHtU zz4;0gS1zB$7w~yJ-Yla*Z|2sqe`Wv|wTZTsb4v&tZ)KCHG}ejII1j<74LD#V(RAF5 zqgZZM2d?4q{1*}yD{D2afNc~hMtvBui*#^o9#6B>mH6~p8E}(J2oB)ZlDBvPD+8NlT6^`k`Ti2$htl7SK#2+3j~DJ)ULkQ^BQgj_Zn zOM}h&gz;S5PAkk{SqBV)PN!4sl!+-i9fZ_sH7JpSQfUl_h+%T=Eb5A}GvN~odYrM* zgo7n0JK$49H&EHER>(PhSpw;pl(jSCZQ>dRx=;rQi6y?0CV(c>|3gV~63wt?{FUGT z6lN^B4jeS&43$mWxQj~*_oZ^cIvPh=indVH#)&Q_W>74}WKa%3rvoC_5_XJoGErl2 zlLd&N~v$@NVF>EJT!ahk}%u>_hTfw78VVrnn)DfPy=*wkJWQ*uGh4CuSpf86uL z5jQ-(aB^z7&E(wUc5c{dZmNSKOV03kexDolh{e_Wuzyvi0GZ!5-2YwC=E|@eim$2- zwWjjso~D9|B!1MH8;pNNc~QN~NPXC~Y4Au**R7{>yXKuNzGkhuAGMk}S{eRh?y{ee*_NZEc>kY+aowvm>^1W={CdZAjz5(1Nqcwav=V&?UXcYEnnv&ad8O zKt#d(*DFrcHrJD*3$guQegc1OIr=AkE)OV`W}Diwye)k{JwG<*Q=lR5(V)iN-17WF zcK;A_YSBT3GPOXJ|7gVNu|(gymoLAP%wS2!LRDYUPL)u>BXf9(FX*5sV91Nf3|q>u6AQ!z&6=q{|xSsRyw~uC|I!6{YJ2hcSuSooq_S)+o5J!80F!*pw_o}6W-4$}r zof-RTIt76d#nTPIiwD29r=2FYx1s~$=wN#8J|3qKH void = undefined + private viewModel: ConversationViewModel = new ConversationViewModel() + + aboutToAppear(): void { + this.viewModel.onUreadMessageChange = this.onUreadMessageChange + //初始化@ 服务 + AitServer.instance.init() + this.viewModel.initConversation() + } + + build() { + NavDestination() { + if (this.viewModel.conversationList) { + if (this.viewModel.conversationList.length <= 0) { + CommonEmptyResult({ + tips: $r('app.string.conversation_empty') + }).margin({ + top: 80 + }) + } else { + if (this.viewModel.networkBroken) { + NetworkBrokenBuilder() + } + + List() { + ForEach(this.viewModel.conversationList, (item: V2NIMConversation) => { + ListItem() { + ConversationViewItem({ + conversationInfo: item, + haveBeanAit: this.viewModel.aitConversationList.has(item.conversationId), + onItemClick: () => { + //goto ChatPage + this.goToChatPage(item) + } + }) + } + }) + } + .listDirection(Axis.Vertical) + .onReachEnd(() => { + if (this.viewModel.conversationList && + this.viewModel.conversationList.length > 0 && + !this.viewModel.isFinished) { + this.viewModel.loadConversation() + } + }) + .scrollBar(BarState.Off) + .width('100%') + .height('100%') + .backgroundColor('#ffFFFFFF') + } + + } + else { + CommonLongLoadingProgress() + } + + } + .title(this.titleBuilder) + .backgroundColor(Color.White) + } + + @Builder + titleBuilder() { + ConversationNavigationTitleBar({ + pathStack: this.pathStack + }) + } + + /** + * 跳转到聊天页面 + */ + goToChatPage(conversationInfo: V2NIMConversation) { + if (conversationInfo?.type == V2NIMConversationType.V2NIM_CONVERSATION_TYPE_P2P) { + this.pathStack.pushPath({ name: "ChatP2PPage", param: conversationInfo.conversationId }) + } else if (conversationInfo?.type == V2NIMConversationType.V2NIM_CONVERSATION_TYPE_TEAM) { + this.pathStack.pushPath({ name: "ChatTeamPage", param: conversationInfo.conversationId }) + } + } +} + +@ComponentV2 +struct ConversationNavigationTitleBar { + @Local conversationPopupShowed: boolean = false + @Param pathStack: NavPathStack = new NavPathStack() + + build() { + Column({ space: 10 }) { + Row() { + //标题栏左侧图标 + Image($r('app.media.brand')) + .margin({ left: 20 }) + .width(32) + .height(32) + .objectFit(ImageFit.Contain) + //标题栏左侧文字 + Text($r('app.string.conversation_title')) + .fontSize(20) + .fontWeight(FontWeight.Bold) + .height(32) + .width('100%') + .margin({ left: 12, right: 12 }) + .layoutWeight(2) + .textAlign(TextAlign.Start) + .maxLines(1) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + + + Row() + .height(1) + .layoutWeight(1) + + //标题栏右侧搜索图标 + Image($r('app.media.nav_search')) + .width(32) + .height(32) + .padding({ + left: 3, + right: 3, + top: 3, + bottom: 3 + }) + .margin({ right: 10 }) + .onClick(() => { + //点击去搜索 + this.goSearchPage(this.pathStack) + }) + + //标题栏右侧更多按钮图标 + Image($r('app.media.nav_add')) + .width(32) + .height(32) + .padding({ + left: 3, + right: 3, + top: 3, + bottom: 3 + }) + .margin({ right: 20 }) + .onClick(() => { + this.conversationPopupShowed = !this.conversationPopupShowed + }) + .bindPopup(this.conversationPopupShowed, + //右侧更多操作弹框 + { + targetSpace: 'popupLocation', + builder: this.popupBuilder, + placement: Placement.Bottom, + mask: true, + popupColor: Color.White, + enableArrow: false, + showInSubWindow: false, + autoCancel: true, + onStateChange: (e) => { + if (!e.isVisible) { + this.conversationPopupShowed = false + } + } + }) + + } + .height(55) + .alignSelf(ItemAlign.Start) + + Row() + .width('100%') + .height(1) + .backgroundColor("#E9EFF5") + } + .height('100%') + .width('100%') + } + + @Builder + popupBuilder() { + Column({ space: 16 }) { + //添加好友 + Row() { + Image($r('app.media.friend_add')) + .width(14) + .height(14) + Text($r('app.string.add_friend')) + .fontSize(14) + .fontColor('#ff333333') + .margin({ left: 6 }) + }.onClick(() => { + if (this.conversationPopupShowed) { + this.conversationPopupShowed = false + this.goAddFriend(this.pathStack) + } + }) + + //创建讨论组 + Row() { + Image($r('app.media.team_discuss')) + .width(14) + .height(14) + Text($r('app.string.create_discuss_team')) + .fontSize(14) + .fontColor('#ff333333') + .margin({ left: 6 }) + }.onClick(() => { + if (this.conversationPopupShowed) { + this.conversationPopupShowed = false + this.goToPersonSelectPage(this.pathStack, true) + } + }) + + //创建高级群 + Row() { + Image($r("app.media.team_advance")) + .width(14) + .height(14) + Text($r('app.string.create_advance_team')) + .fontSize(14) + .fontColor('#ff333333') + .margin({ left: 6 }) + }.onClick(() => { + if (this.conversationPopupShowed) { + this.conversationPopupShowed = false + this.goToPersonSelectPage(this.pathStack, false) + } + }) + } + .width(122) + .padding({ + top: 16, + left: 16, + bottom: 16 + }) + .alignItems(HorizontalAlign.Start) + .borderRadius(8) + .backgroundColor('#ffFFFFFF') + } + + /** + * 搜索页面 + */ + goSearchPage(pathStack: NavPathStack) { + pathStack.pushPath({ name: "SearchPage" }) + } + + /** + * 添加好友 + */ + goAddFriend(pathStack: NavPathStack) { + pathStack.pushPath({ name: "AddFriendPage" }) + } + + // 创建讨论组的人选选择器返回 + groupSelectorCallback = async (selectedList: NEUserWithFriend[]) => { + try { + this.pathStack.pop() + let invitees = selectedList.map(user => user.user?.accountId ?? '') + this.createGroupTeam(invitees) + } catch (err) { + console.log(err) + } + } + // 创建高级群的人选选择器返回 + teamSelectorCallback = async (selectedList: NEUserWithFriend[]) => { + try { + this.pathStack.pop() + let invitees = selectedList.map(user => user.user?.accountId ?? '') + this.createAdvanceTeam(invitees) + } catch (err) { + console.log(err) + } + } + + /** + * 跳转到人员选择器 + * @param pathStack + * @param isGroup + */ + goToPersonSelectPage(pathStack: NavPathStack, isGroup: boolean) { + if (isGroup) { + pathStack.pushPath({ + name: "PersonSelectPage", + param: new PersonSelectParam(this.groupSelectorCallback) + }) + } else { + pathStack.pushPath({ + name: "PersonSelectPage", + param: new PersonSelectParam(this.teamSelectorCallback) + }) + } + + } + + /** + * 创建讨论组 + */ + createGroupTeam(invitees: string[]) { + TeamRepo.createGroupTeam(invitees).then((result) => { + if (result) { + // 跳转到聊天页面 + this.pathStack.pushPath({ + name: "ChatTeamPage", + param: ChatKitClient.nim.conversationIdUtil.teamConversationId(result.team.teamId) + }) + } + }) + } + + /** + * 创建高级群 + */ + createAdvanceTeam(invitees: string[]) { + TeamRepo.createAdvanceTeam(invitees).then((result) => { + if (result) { + //1,本地保存一条消息 + const message = ChatKitClient.nim.messageCreator.createTipsMessage( + getContext(this).resourceManager.getStringSync($r('app.string.createAdvancedTeamSuccess')) + ) + ChatRepo.saveLocalMessage(message, + ChatKitClient.nim.conversationIdUtil.teamConversationId(result.team.teamId), + ChatKitClient.getLoginUserId(), + (new Date()).valueOf() - 500 + ) + // 2 跳转到聊天页面 + this.pathStack.pushPath({ + name: "ChatTeamPage", + param: ChatKitClient.nim.conversationIdUtil.teamConversationId(result.team.teamId) + }) + } + }) + + } +} + +// 跳转页面入口函数 +@Builder +export function ConversationPageBuilder() { + ConversationPage() +} \ No newline at end of file diff --git a/conversationkit_ui/src/main/ets/service/ait/AitDatabaseHelper.ets b/conversationkit_ui/src/main/ets/service/ait/AitDatabaseHelper.ets new file mode 100644 index 0000000..ca9dd60 --- /dev/null +++ b/conversationkit_ui/src/main/ets/service/ait/AitDatabaseHelper.ets @@ -0,0 +1,158 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { relationalStore } from '@kit.ArkData'; + +export class AitDatabase { + static _databaseName: string = "nim_kit_ait.db"; + static _databaseVersion = 1; + static table: string = 'session_messages'; + static sessionIdColumn: string = 'session_id'; + static messageIdColumn: string = 'message_id'; + static myAccId: string = 'my_acc_id'; + private store: relationalStore.RdbStore | undefined = undefined; + private static _instance: AitDatabase | undefined = undefined + + public static get instance() { + return this._instance ?? (this._instance = new AitDatabase()) + } + + private constructor() { + } + + static STORE_CONFIG: relationalStore.StoreConfig = { + name: AitDatabase._databaseName, // 数据库文件名 + securityLevel: relationalStore.SecurityLevel.S3, // 数据库安全级别 + encrypt: false, // 可选参数,指定数据库是否加密,默认不加密。 + isReadOnly: false // 可选参数,指定数据库是否以只读方式打开。该参数默认为false,表示数据库可读可写。该参数为true时,只允许从数据库读取数据,不允许对数据库进行写操作,否则会返回错误码801。 + }; + static SQL_CREATE_TABLE = `CREATE TABLE IF NOT EXISTS ${AitDatabase.table} + (ID INTEGER PRIMARY KEY AUTOINCREMENT, + ${AitDatabase.sessionIdColumn} TEXT NOT NULL, + ${AitDatabase.messageIdColumn} TEXT NOT NULL, + ${AitDatabase.myAccId} TEXT NOT NULL)` + + /** + * 获取数据库 + * @returns + */ + async getDatabase(): Promise { + let store = await relationalStore.getRdbStore(getContext(), AitDatabase.STORE_CONFIG) + if (store) { + // 当数据库创建时,数据库默认版本为0 + if (store.version === 0) { + store.executeSql(AitDatabase.SQL_CREATE_TABLE); // 创建数据表 + // 设置数据库的版本,入参为大于0的整数 + store.version = AitDatabase._databaseVersion; + } + return store + } + return undefined + } + + /** + * 插入一条@消息 + * @param sessionId + * @param messageId + * @param accId + * @returns + */ + async insertAitMessage(sessionId: string, messageId: string, accId: string): Promise { + if (!this.store) { + this.store = await this.getDatabase() + } + const bucket: relationalStore.ValuesBucket = { + 'session_id': sessionId, + 'message_id': messageId, + 'my_acc_id': accId + } + return this.store?.insert(AitDatabase.table, bucket) + } + + /** + * 删除一条@消息 + * @param sessionId + * @param messageId + * @param accId + * @returns + */ + async deleteMessage(sessionId: string, messageId: string, accId: string): Promise { + if (!this.store) { + this.store = await this.getDatabase() + } + let predicates1 = new relationalStore.RdbPredicates(`${AitDatabase.table}`); + predicates1.equalTo(`${AitDatabase.sessionIdColumn}`, sessionId); + predicates1.equalTo(`${AitDatabase.messageIdColumn}`, messageId); + predicates1.equalTo(`${AitDatabase.myAccId}`, accId); + return this.store?.delete(predicates1) + } + + /** + * 清除sessionId对应的所有messageId + * @param sessionId + * @param accId + * @returns + */ + async clearSessionAitMessage(sessionId: string, accId: string): Promise { + if (!this.store) { + this.store = await this.getDatabase() + } + let predicates1 = new relationalStore.RdbPredicates(`${AitDatabase.table}`); + predicates1.equalTo(`${AitDatabase.sessionIdColumn}`, sessionId); + predicates1.equalTo(`${AitDatabase.myAccId}`, accId); + return this.store?.delete(predicates1) + } + + /** + * 查询session中对应的@消息 + * @param sessionId + * @param accId + * @returns + */ + async queryMessageIdsBySessionId( + sessionId: string, accId: string): Promise { + if (!this.store) { + this.store = await this.getDatabase() + } + let predicates1 = new relationalStore.RdbPredicates(AitDatabase.table); + predicates1.equalTo(`${AitDatabase.sessionIdColumn}`, sessionId); + predicates1.equalTo(`${AitDatabase.myAccId}`, accId); + let resultSet = await this.store?.query(predicates1, [`${AitDatabase.messageIdColumn}`]) + let resultList: string[] = [] + if (resultSet) { + while (resultSet.goToNextRow()) { + resultList.push(...[resultSet.getString(resultSet.getColumnIndex(AitDatabase.messageIdColumn))]) + } + resultSet.close() + } + return resultList + + } + + /** + * 查询对应账号中所有@的sessionId + * @param sessionId + * @param accId + * @returns + */ + async queryAllAitSession(accId: string): Promise { + if (!this.store) { + this.store = await this.getDatabase() + } + let predicates1 = new relationalStore.RdbPredicates(AitDatabase.table); + predicates1.equalTo(AitDatabase.myAccId, accId); + let resultSet = await this.store?.query(predicates1, [`${AitDatabase.sessionIdColumn}`]) + let resultList: string[] = [] + if (resultSet) { + while (resultSet.goToNextRow()) { + resultList.push(...[resultSet.getString(resultSet.getColumnIndex(AitDatabase.sessionIdColumn))]) + } + resultSet.close() + } + return resultList + + } +} \ No newline at end of file diff --git a/conversationkit_ui/src/main/ets/service/ait/AitService.ets b/conversationkit_ui/src/main/ets/service/ait/AitService.ets new file mode 100644 index 0000000..85348ae --- /dev/null +++ b/conversationkit_ui/src/main/ets/service/ait/AitService.ets @@ -0,0 +1,190 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { ChatRepo, getAitModelFromJson } from '@nimkit/chatkit'; +import { ChatKitClient, currentConversationChanged } from '@nimkit/chatkit/src/main/ets/ChatKitClient'; +import { V2NIMConversation, V2NIMConversationType, V2NIMMessage, V2NIMMessageRevokeNotification } from '@nimsdk/base'; +import { AitDatabase } from './AitDatabaseHelper'; + +export const AitSessionChangeEvent: string = 'AitSessionChangeEvent' + +/** + * 管理session列表的@消息处理 + */ +export class AitServer { + private static _instance: AitServer | undefined = undefined; + + public static get instance(): AitServer { + return this._instance ?? (this._instance = new AitServer()); + } + + private constructor() { + + } + + //有@的会话,缓存 + private aitConversationSet: Set = new Set() + /// 当前会话id, 用于判断是否需要保存@消息 + private _currentSessionId: string | null = null; + + public init() { + this.initListener() + } + + private initListener(): void { + + //当前会话设置变更的回到 + getContext().eventHub.on(currentConversationChanged, (conversationId: string) => { + this._currentSessionId = conversationId + if (conversationId.length > 0) { + this.clearAitMessage(conversationId) + this.aitConversationSet.delete(conversationId) + this.sendAitChange({ + sessionId: conversationId, + messageId: undefined, + isAit: false + }) + } + }) + + // 注册消息接受监听 + ChatRepo.onReceiverMessage(this.onReceiveFun.bind(this)) + + // 注册消息撤回监听 + ChatRepo.onRevokeMessage(this.onRevokeFun.bind(this)) + + //会话已读未读数的变化 + ChatKitClient.nim.conversationService?.on('onConversationChanged', (updateList: V2NIMConversation[]) => { + updateList.forEach((conversation) => { + if (conversation.unreadCount === 0 && + this.aitConversationSet.has(conversation.conversationId)) { + this.clearAitMessage(conversation.conversationId) + this.sendAitChange({ + sessionId: conversation.conversationId, + isAit: false + }) + } + }) + }) + + } + + //接收到消息 + onReceiveFun = (messages: V2NIMMessage[]) => { + let myAccId = ChatKitClient.getLoginUserId() + messages.forEach(msg => { + if (!msg.isSelf + && msg.conversationType === V2NIMConversationType.V2NIM_CONVERSATION_TYPE_TEAM + && msg.conversationId != this._currentSessionId) { + if (msg.serverExtension) { + ChatKitClient.logger?.debug(`AitService`, `onReceiveFun text = ${msg.text} id = ${msg.messageClientId}`) + let aitModel = getAitModelFromJson(msg.serverExtension) + if (aitModel && aitModel.isUserBeenAit(myAccId)) { + ChatKitClient.logger?.debug(`AitService`, `onReceiveFun been ait ConversationID = ${msg.conversationId}`) + // 回调 + this.sendAitChange({ + sessionId: msg.conversationId, + messageId: msg.messageClientId, + isAit: true + }) + this.saveAitMessage(msg.conversationId, msg.messageClientId) + } + } + } + }) + } + // 撤回消息 + onRevokeFun = (messages: V2NIMMessageRevokeNotification[]) => { + let myAccId = ChatKitClient.getLoginUserId() + messages.forEach(msg => { + if (msg.messageRefer.senderId != myAccId + && msg.messageRefer.conversationType === V2NIMConversationType.V2NIM_CONVERSATION_TYPE_TEAM + && msg.messageRefer.conversationId != this._currentSessionId) { + this.handleRevokeAitMessage(msg, myAccId) + + } + }) + } + + /** + * 发送变更通知 + * @param aitSession + */ + sendAitChange(aitSession: AitSession) { + getContext().eventHub.emit(AitSessionChangeEvent, aitSession) + } + + /** + * 处理@消息的撤回 + * @param msg + * @param myAccId + */ + async handleRevokeAitMessage(msg: V2NIMMessageRevokeNotification, myAccId: string) { + //查找出此Conversation 中所有的ait Message + let aitMessageList = await AitDatabase.instance.queryMessageIdsBySessionId(msg.messageRefer.conversationId, myAccId) + let aitMessageId = aitMessageList.find((e) => e === msg.messageRefer.messageClientId) + if (aitMessageId) { + await AitDatabase.instance.deleteMessage(msg.messageRefer.conversationId, msg.messageRefer.messageClientId, + myAccId) + let haveAit = await this.isAitSession(msg.messageRefer.conversationId, myAccId) + //if (haveAit === false) { + // 回调 + this.sendAitChange({ + sessionId: msg.messageRefer.conversationId, + messageId: msg.messageRefer.messageClientId, + isAit: false + }) + this.aitConversationSet.delete(msg.messageRefer.conversationId) + //} + } + + } + + public async saveAitMessage(sessionId: string, messageId: string): Promise { + if (sessionId === this._currentSessionId) { + return false; + } + const myId = ChatKitClient.getLoginUserId() + if (!myId) { + return false; + } + this.aitConversationSet.add(sessionId) + return ((await AitDatabase.instance.insertAitMessage(sessionId, messageId, myId)) ?? 0) > 0; + } + + public async clearAitMessage(sessionId: string): Promise { + const myId = ChatKitClient.getLoginUserId() + if (!myId) { + return Promise.resolve(0); + } + this.aitConversationSet.delete(sessionId) + return AitDatabase.instance.clearSessionAitMessage(sessionId, myId); + } + + /** + * 是否是Ait 会话 + * @param sessionId + * @param myId + * @returns + */ + public async isAitSession(sessionId: string, myId: string): Promise { + if (this.aitConversationSet.has(sessionId)) { + return true + } + const msgList = await AitDatabase.instance.queryMessageIdsBySessionId(sessionId, myId); + return msgList.length > 0; + } + + public async getAllAitSession(myId: string): Promise { + return AitDatabase.instance.queryAllAitSession(myId); + } +} + +export interface AitSession { + sessionId: string; + messageId?: string; + isAit: boolean; +} \ No newline at end of file diff --git a/conversationkit_ui/src/main/ets/view/ConversationOperationDialog.ets b/conversationkit_ui/src/main/ets/view/ConversationOperationDialog.ets new file mode 100644 index 0000000..3c420cc --- /dev/null +++ b/conversationkit_ui/src/main/ets/view/ConversationOperationDialog.ets @@ -0,0 +1,67 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { ConversationRepo, ErrorUtils } from '@nimkit/chatkit' +import { V2NIMConversation } from '@nimsdk/base' + +@CustomDialog +export struct ConversationOperationDialog { + @State conversationInfo: V2NIMConversation | null = null + private controller: CustomDialogController = new CustomDialogController({ + builder: ConversationOperationDialog(), + }) + + build() { + if (this.conversationInfo != null) { + Column({ space: 10 }) { + if (this.conversationInfo.stickTop) { + Text($r('app.string.unstick_top_conversation')) + .fontSize(16) + .fontColor('#333333') + .onClick(() => { + if (ErrorUtils.checkNetworkAndToast()) { + ConversationRepo.stickTopConversation(this.conversationInfo?.conversationId ?? '', false) + } + this.controller.close() + }) + .height(30) + .width('100%') + .margin({ top: 15 }) + .textAlign(TextAlign.Center) + } else { + Text($r('app.string.stick_top_conversation')) + .fontSize(16) + .fontColor('#333333') + .onClick(() => { + if (ErrorUtils.checkNetworkAndToast()) { + ConversationRepo.stickTopConversation(this.conversationInfo?.conversationId ?? '', true) + } + this.controller.close() + }) + .height(30) + .width('100%') + .margin({ top: 15 }) + .textAlign(TextAlign.Center) + } + Line().height(1).backgroundColor('#EFF1F4').width('100%').opacity(0.5) + Text($r('app.string.delete_conversation')) + .fontSize(16) + .fontColor('#333333') + .onClick(() => { + if (ErrorUtils.checkNetworkAndToast()) { + ConversationRepo.deleteConversation(this.conversationInfo?.conversationId ?? '') + } + this.controller.close() + }) + .height(30) + .width('100%') + .margin({ bottom: 15 }) + .textAlign(TextAlign.Center) + }.width('100%').backgroundColor($r('sys.color.white')) + } + } +} \ No newline at end of file diff --git a/conversationkit_ui/src/main/ets/view/ConversationViewItem.ets b/conversationkit_ui/src/main/ets/view/ConversationViewItem.ets new file mode 100644 index 0000000..c89ecad --- /dev/null +++ b/conversationkit_ui/src/main/ets/view/ConversationViewItem.ets @@ -0,0 +1,216 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { ChatKitClient } from '@nimkit/chatkit'; +import { AvatarColorUntil, AvatarItem, CommonAvatar } from '@nimkit/common'; +import { DateUtil } from '@nimkit/common/src/main/ets/utils/DateUtil'; +import { V2NIMConversation, V2NIMMessageCallAttachment, V2NIMMessageType } from '@nimsdk/base'; +import { ConversationOperationDialog } from './ConversationOperationDialog'; + +@ComponentV2 +export struct ConversationViewItem { + @Param conversationInfo: V2NIMConversation | null = null + @Param haveBeanAit: boolean = false + @Param @Require onItemClick?: () => void + dialogController: CustomDialogController = new CustomDialogController({ + builder: ConversationOperationDialog({ + conversationInfo: this.conversationInfo + }), + cornerRadius: 15, + borderWidth: 0.5, + width: '60%', + borderColor: '#ffDCDFE5' + }) + + build() { + if (this.conversationInfo !== null) { + Row() { + //头像 + Stack({ + alignContent: Alignment.TopEnd + }) { + CommonAvatar({ + item: new AvatarItem(this.conversationInfo.avatar, + this.getAvatarShowName(this.conversationInfo.name ?? ''), + AvatarColorUntil.getBackgroundColorById( + ChatKitClient.nim.conversationIdUtil + .parseConversationTargetId(this.conversationInfo.conversationId) + )) + }) + //未读数显示 + if (this.conversationInfo.mute !== true && this.conversationInfo.unreadCount > 0) { + Text(this.getUnreadCountStr(this.conversationInfo.unreadCount)) + .fontSize(12) + .fontColor('#ffFFFFFF') + .textAlign(TextAlign.Center) + .backgroundColor('#ffF24957') + .borderRadius(20) + .height(18) + .width(18 + (this.getUnreadCountStr(this.conversationInfo.unreadCount).length - 1) * 4) + } + + } + .width(42) + .height(42) + + Column() { + //item 显示名称 + Text(this.conversationInfo.name) + .fontSize(16) + .fontColor("#ff333333") + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .maxLines(1) + .margin({ + bottom: 8 + }) + + Row() { + if (this.haveBeanAit && this.conversationInfo.unreadCount > 0) { + Text('[有人@我]') + .fontSize(13) + .maxLines(1) + .fontColor("#fff24957") + } + //item 最后一条消息显示 + Text(this.getConversationContent(this.conversationInfo)) + .fontSize(13) + .maxLines(1) + .fontColor("#ff999999") + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .width('100%') + }.width(this.conversationInfo.mute ? '80%' : '100%') + + } + .width('60%') + .margin({ + left: 12, + right: 12 + }).alignItems(HorizontalAlign.Start) + + //时间戳和mute + Column() { + Text(DateUtil.formatTimestamp(this.conversationInfo.lastMessage?.messageRefer?.createTime ?? + this.conversationInfo.updateTime)) + .fontColor('#ffCCCCCC') + .fontSize(12) + .alignSelf(ItemAlign.End) + .margin({ + bottom: 8 + }) + + //mute 状态显示 + if (this.conversationInfo.mute) { + + Image($r('app.media.conversation_mute')) + .width(14) + .height(14) + } + } + .width('20%') + .margin({ + right: 12 + }).alignItems(HorizontalAlign.End) + + } + .width('100%') + .height(62) + .onClick(() => { + // this.goToChatPage() + if (this.onItemClick !== undefined) { + this.onItemClick() + } + }) + .backgroundColor(this.conversationInfo.stickTop ? '#ffF3F5F7' : '#ffffffff') + .gesture( + // 绑定可以重复触发的LongPressGesture + LongPressGesture({ repeat: true }) + .onAction((event: GestureEvent) => { + if (!event.repeat) { + //show 操作弹框 + this.dialogController.open() + } + }) + ) + .padding({ + left: 20, + top: 10, + bottom: 10, + right: 20 + }) + } + + } + + /** + * 获取未读数展示 + * @param unreadCount + * @returns + */ + getUnreadCountStr(unreadCount: number): string { + if (unreadCount < 100) { + return unreadCount + '' + } else { + return '99+' + } + } + + /** + * 头像只显示后两位 + * @param sourceName + * @returns + */ + getAvatarShowName(sourceName: string): string { + let size = sourceName.length + if (size <= 2) { + return sourceName + } else { + return sourceName.substring(size - 2) + } + } + + /** + * 获取会话列表展示的内容 + * @param item + * @returns + */ + getConversationContent(item: V2NIMConversation): string | Resource { + if (!item.lastMessage) { + return '' + } + + switch (item.lastMessage?.messageType) { + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_TEXT: + return item.lastMessage.text ?? '' + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_IMAGE: + return $r('app.string.imageMessageType') + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_AUDIO: + return $r('app.string.audioMessageType') + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_VIDEO: + return $r('app.string.videoMessageType') + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_LOCATION: + return $r('app.string.locationMessageType') + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_FILE: + return $r('app.string.fileMessageType') + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_NOTIFICATION: + return $r('app.string.notificationMessageType') + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_TIPS: + return $r('app.string.tipMessageType') + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_CALL: + if (item.lastMessage?.attachment) { + const messageAttachment = item.lastMessage.attachment as V2NIMMessageCallAttachment + if (messageAttachment.type == 1) { + return $r('app.string.msg_type_rtc_audio') + } else { + return $r('app.string.msg_type_rtc_video') + } + } + + } + return item.lastMessage?.text ?? $r('app.string.chatMessageNonsupportType') + + } +} \ No newline at end of file diff --git a/conversationkit_ui/src/main/ets/viewmodel/ConversationListData.ets b/conversationkit_ui/src/main/ets/viewmodel/ConversationListData.ets new file mode 100644 index 0000000..7588a1c --- /dev/null +++ b/conversationkit_ui/src/main/ets/viewmodel/ConversationListData.ets @@ -0,0 +1,56 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { V2NIMConversation } from '@nimsdk/base'; + +@ObservedV2 +export default class ConversationListData implements IDataSource { + @Trace + private dataArray: V2NIMConversation[] = []; + //被@的会话 + @Trace aitConversationList: Set = new Set() + private listeners: DataChangeListener[] = []; + + registerDataChangeListener(listener: DataChangeListener): void { + if (this.listeners.indexOf(listener) < 0) { + console.info('add listener'); + this.listeners.push(listener); + } + } + + unregisterDataChangeListener(listener: DataChangeListener): void { + const pos = this.listeners.indexOf(listener); + if (pos >= 0) { + console.info('remove listener'); + this.listeners.splice(pos, 1); + } + } + + + public totalCount(): number { + return this.dataArray.length; + } + + public getData(index: number): V2NIMConversation { + return this.dataArray[index]; + } + + public addData(index: number, data: V2NIMConversation): void { + this.dataArray.splice(index, 0, data); + this.notifyDataAdd(index); + } + + public pushData(data: V2NIMConversation): void { + this.dataArray.push(data); + this.notifyDataAdd(this.dataArray.length - 1); + } + + notifyDataAdd(index: number): void { + this.listeners.forEach(listener => { + listener.onDataAdd(index); + }) + } +} \ No newline at end of file diff --git a/conversationkit_ui/src/main/ets/viewmodel/ConversationViewModel.ets b/conversationkit_ui/src/main/ets/viewmodel/ConversationViewModel.ets new file mode 100644 index 0000000..77b74e3 --- /dev/null +++ b/conversationkit_ui/src/main/ets/viewmodel/ConversationViewModel.ets @@ -0,0 +1,245 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { ChatKitClient, ConversationRepo, TeamRepo } from '@nimkit/chatkit' +import { + V2NIMConnectStatus, + V2NIMConversation, + V2NIMConversationType, + V2NIMFriend, + V2NIMFriendDeletionType, + V2NIMLoginStatus, + V2NIMTeam, + V2NIMTeamType +} from '@nimsdk/base' +import { Constant } from '../loader/Constant' +import { AitServer, AitSession, AitSessionChangeEvent } from '../service/ait/AitService' + +@ObservedV2 +export class ConversationViewModel { + static logTag = 'ConversationViewModel' + //是否已经加载完成 + public isFinished: boolean = false + //会话列表数据 + @Trace conversationList?: V2NIMConversation[] + onUreadMessageChange?: (unreadCount?: number) => void = undefined + // 网络连接状态 + @Trace networkBroken: boolean = ChatKitClient.connectBroken() + //记录偏移量,下次请求使用 + private offset: number = 0 + //每次请求拉取的上限 + private limit: number = Constant.PAGE_SIZE + //被@的会话 + @Trace aitConversationList: Set = new Set() + + //会话排序 + sortConversation(a: V2NIMConversation, b: V2NIMConversation): number { + return b.sortOrder - a.sortOrder + } + + initConversation() { + //首先拉取一次 + if (ChatKitClient.haveSyncedConversation) { + this.loadConversation(0) + } + //添加监听 + ChatKitClient.nim.conversationService?.on('onSyncFinished', + () => { + //同步完成拉一次 + ChatKitClient.logger?.debug(`${ConversationViewModel.logTag} onSyncFinished`) + this.loadConversation(0) + } + ) + + // 长连接状态变更 + ChatKitClient.nim.loginService?.on('onConnectStatus', + (status: V2NIMConnectStatus) => { + if (status !== V2NIMConnectStatus.V2NIM_CONNECT_STATUS_CONNECTED) { + this.networkBroken = true + } + } + ) + + // 登录状态变更 + ChatKitClient.nim.loginService?.on('onLoginStatus', + (status: V2NIMLoginStatus) => { + if (status === V2NIMLoginStatus.V2NIM_LOGIN_STATUS_LOGINED) { + this.networkBroken = false + } + } + ) + + //好友信息变更修改 + ChatKitClient.nim.friendService?.on('onFriendInfoChanged', async (friend: V2NIMFriend) => { + await this.updateConversationById(ChatKitClient.nim.conversationIdUtil.p2pConversationId(friend.accountId)) + }) + + //好友删除,别名不存在需要更新 + ChatKitClient.nim.friendService?.on('onFriendDeleted', + async (accountId: string, deletionType: V2NIMFriendDeletionType) => { + await this.updateConversationById(ChatKitClient.nim.conversationIdUtil.p2pConversationId(accountId)) + }) + + + //群解散 + ChatKitClient.nim.teamService?.on('onTeamDismissed', (team: V2NIMTeam) => { + this.deleteConversation(ChatKitClient.nim.conversationIdUtil.teamConversationId(team.teamId)) + }) + + //退出群 + ChatKitClient.nim.teamService?.on('onTeamLeft', (team: V2NIMTeam) => { + this.deleteConversation(ChatKitClient.nim.conversationIdUtil.teamConversationId(team.teamId)) + }) + + //会话未读数变化 + ChatKitClient.nim.conversationService?.on('onTotalUnreadCountChanged', (unreadCount: number) => { + if (this.onUreadMessageChange) { + this.onUreadMessageChange(unreadCount) + } + }) + + //会话创建 + ChatKitClient.nim.conversationService?.on('onConversationCreated', (conversation: V2NIMConversation) => { + ChatKitClient.logger?.debug(`${ConversationViewModel.logTag} onConversationCreated type is ${conversation.type}`) + if (conversation.type === V2NIMConversationType.V2NIM_CONVERSATION_TYPE_TEAM) { + this.addTeamConversation(conversation) + } else { + let existConversation: V2NIMConversation | undefined = + this.conversationList?.find((m) => m.conversationId === conversation.conversationId) + //如果已经存在,则不处理 + if (existConversation) { + return + } + this.conversationList?.push(...[conversation]) + this.conversationList?.sort((a, b) => this.sortConversation(a, b)) + } + }) + + //会话删除 + ChatKitClient.nim.conversationService?.on('onConversationDeleted', (conversationIds: string[]) => { + this.conversationList = + this.conversationList?.filter(conversation => !conversationIds.includes(conversation.conversationId)) + }) + //会话更新 + ChatKitClient.nim.conversationService?.on('onConversationChanged', (updateList: V2NIMConversation[]) => { + updateList.forEach( + changedItem => { + const index = + this.conversationList?.findIndex(conversation => conversation.conversationId === changedItem.conversationId) + if (index !== undefined && index > -1 && this.conversationList) { + this.conversationList[index] = changedItem + } + if (changedItem.type === V2NIMConversationType.V2NIM_CONVERSATION_TYPE_TEAM) { + setTimeout(() => { + this.addTeamConversation(changedItem) + }, 100) + } else { + //this.conversationList?.push(...[changedItem]) + } + } + ); + + this.conversationList?.sort((a, b) => this.sortConversation(a, b)) + }) + //监听@的回调 + getContext().eventHub.on(AitSessionChangeEvent, (session: AitSession) => { + ChatKitClient.logger?.debug(ConversationViewModel.logTag, + `AitSessionChangeEvent ConversationID = ${session.sessionId} been ait ${session.isAit}`) + if (session.isAit) { + this.aitConversationList.add(session.sessionId) + } else if (this.aitConversationList.has(session.sessionId)) { + this.aitConversationList.delete(session.sessionId) + } + + }) + //获取数据库中所有的@数据 + AitServer.instance.getAllAitSession(ChatKitClient.getLoginUserId()).then(( + aitSessions: string[] + ) => { + aitSessions.forEach((session) => { + this.aitConversationList.add(session) + }) + }) + } + + //按照会话ID更新会话 + async updateConversationById(conversationId: string) { + const newConversation = await ConversationRepo.getConversation(conversationId) + ChatKitClient.logger?.debug(`${ConversationViewModel.logTag} updateConversationById ${newConversation?.conversationId} name = ${newConversation?.name}`) + if (newConversation) { + const index = this.conversationList?.findIndex(e => e.conversationId === newConversation.conversationId) + if (index !== undefined && this.conversationList) { + this.conversationList[index] = newConversation + } + } + } + + //添加群会话 + async addTeamConversation(conversation: V2NIMConversation) { + let teamId: string = ChatKitClient.nim.conversationIdUtil.parseConversationTargetId(conversation.conversationId) + //添加之前判断是否合法team + let team = await TeamRepo.getTeamInfo(teamId, V2NIMTeamType.V2NIM_TEAM_TYPE_NORMAL) + if (team?.isValidTeam) { + let existConversation: V2NIMConversation | undefined = + this.conversationList?.find((m) => m.conversationId === conversation.conversationId) + //如果已经存在,则不处理 + if (existConversation) { + return + } + this.conversationList?.push(...[conversation]) + this.conversationList?.sort((a, b) => this.sortConversation(a, b)) + } else { + this.deleteConversation(conversation.conversationId) + } + } + + /** + * 删除会话 + * @param conversationId + */ + async deleteConversation(conversationId: string) { + await ConversationRepo.deleteConversation(conversationId) + //无论成功与否UI都删 + this.conversationList = this.conversationList?.filter((m) => m.conversationId !== conversationId) + } + + /** + * 请求回话列表 + * @param offset + */ + async loadConversation(offset?: number) { + try { + if (!this.conversationList) { + this.conversationList = [] + } + console.debug(`Performance Test start loadConversation`) + if (offset === 0) { + this.conversationList?.splice(0, this.conversationList.length); + } + const result = await ConversationRepo.getConversationList(offset ?? this.offset, this.limit) + if (result != null) { + if (offset === 0) { + this.conversationList?.splice(0, this.conversationList.length); + } + this.offset = result.offset + this.isFinished = result.finished + let newConversation = result.conversationList + if (this.conversationList.length > 0 && newConversation.length > 0) { + this.conversationList = + this.conversationList.filter(conversation => !newConversation.find((m) => m.conversationId === + conversation.conversationId)) + } + this.conversationList?.push(...newConversation) + this.conversationList?.sort((a, b) => this.sortConversation(a, b)) + console.debug(`Performance Test finish loadConversation`) + } + } catch (e) { + + } + + } +} \ No newline at end of file diff --git a/conversationkit_ui/src/main/module.json5 b/conversationkit_ui/src/main/module.json5 new file mode 100644 index 0000000..184ce12 --- /dev/null +++ b/conversationkit_ui/src/main/module.json5 @@ -0,0 +1,12 @@ +{ + "module": { + "routerMap": "$profile:route_map", + "name": "conversationkit_ui", + "type": "har", + "deviceTypes": [ + "phone", + "tablet", + "2in1" + ] + } +} \ No newline at end of file diff --git a/conversationkit_ui/src/main/resources/base/element/float.json b/conversationkit_ui/src/main/resources/base/element/float.json new file mode 100644 index 0000000..ada0270 --- /dev/null +++ b/conversationkit_ui/src/main/resources/base/element/float.json @@ -0,0 +1,48 @@ +{ + "float": [ + { + "name": "flexible_left_item_height", + "value": "20vp" + }, + { + "name": "flexible_left_item_width", + "value": "96vp" + }, + { + "name": "flexible_right_item_height", + "value": "20vp" + }, + { + "name": "flexible_right_item_width", + "value": "36vp" + }, + { + "name": "flexible_item_height", + "value": "60vp" + }, + { + "name": "flexible_left_item_border_radius", + "value": "2vp" + }, + { + "name": "flexible_right_item_border_radius", + "value": "12vp" + }, + { + "name": "flexible_item_border_radius", + "value": "24vp" + }, + { + "name": "flexible_item_padding_left", + "value": "12vp" + }, + { + "name": "flexible_item_padding_right", + "value": "12vp" + }, + { + "name": "slider_width", + "value": "300vp" + } + ] +} \ No newline at end of file diff --git a/conversationkit_ui/src/main/resources/base/element/string.json b/conversationkit_ui/src/main/resources/base/element/string.json new file mode 100644 index 0000000..ad31be8 --- /dev/null +++ b/conversationkit_ui/src/main/resources/base/element/string.json @@ -0,0 +1,40 @@ +{ + "string": [ + { + "name": "conversation_title", + "value": "云信 Demo" + }, + { + "name": "stick_top_conversation", + "value": "置顶该聊天" + }, + { + "name": "unstick_top_conversation", + "value": "取消置顶" + }, + { + "name": "delete_conversation", + "value": "删除该聊天" + }, + { + "name": "add_friend", + "value": "添加好友" + }, + { + "name": "create_discuss_team", + "value": "创建讨论组" + }, + { + "name": "create_advance_team", + "value": "创建高级群" + }, + { + "name": "pull_up_load_text", + "value": "上拉加载更多" + }, + { + "name": "createAdvancedTeamSuccess", + "value": "成功创建高级群" + } + ] +} diff --git a/conversationkit_ui/src/main/resources/base/media/brand.png b/conversationkit_ui/src/main/resources/base/media/brand.png new file mode 100644 index 0000000000000000000000000000000000000000..e1d8418c154d55f627bd9ec29a1577b2af69409d GIT binary patch literal 5263 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/conversationkit_ui/src/main/resources/base/media/friend_add.svg b/conversationkit_ui/src/main/resources/base/media/friend_add.svg new file mode 100644 index 0000000..1480c6c --- /dev/null +++ b/conversationkit_ui/src/main/resources/base/media/friend_add.svg @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/conversationkit_ui/src/main/resources/base/media/team_advance.svg b/conversationkit_ui/src/main/resources/base/media/team_advance.svg new file mode 100644 index 0000000..275117a --- /dev/null +++ b/conversationkit_ui/src/main/resources/base/media/team_advance.svg @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/conversationkit_ui/src/main/resources/base/media/team_discuss.svg b/conversationkit_ui/src/main/resources/base/media/team_discuss.svg new file mode 100644 index 0000000..ec03317 --- /dev/null +++ b/conversationkit_ui/src/main/resources/base/media/team_discuss.svg @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/conversationkit_ui/src/main/resources/base/profile/route_map.json b/conversationkit_ui/src/main/resources/base/profile/route_map.json new file mode 100644 index 0000000..81b042c --- /dev/null +++ b/conversationkit_ui/src/main/resources/base/profile/route_map.json @@ -0,0 +1,12 @@ +{ + "routerMap": [ + { + "name": "ConversationPage", + "pageSourceFile": "src/main/ets/pages/ConversationPage.ets", + "buildFunction": "ConversationPageBuilder", + "data": { + "description": "this is Conversation list page" + } + } + ] +} \ No newline at end of file diff --git a/conversationkit_ui/src/main/resources/en_US/element/string.json b/conversationkit_ui/src/main/resources/en_US/element/string.json new file mode 100644 index 0000000..ad31be8 --- /dev/null +++ b/conversationkit_ui/src/main/resources/en_US/element/string.json @@ -0,0 +1,40 @@ +{ + "string": [ + { + "name": "conversation_title", + "value": "云信 Demo" + }, + { + "name": "stick_top_conversation", + "value": "置顶该聊天" + }, + { + "name": "unstick_top_conversation", + "value": "取消置顶" + }, + { + "name": "delete_conversation", + "value": "删除该聊天" + }, + { + "name": "add_friend", + "value": "添加好友" + }, + { + "name": "create_discuss_team", + "value": "创建讨论组" + }, + { + "name": "create_advance_team", + "value": "创建高级群" + }, + { + "name": "pull_up_load_text", + "value": "上拉加载更多" + }, + { + "name": "createAdvancedTeamSuccess", + "value": "成功创建高级群" + } + ] +} diff --git a/conversationkit_ui/src/main/resources/zh_CN/element/string.json b/conversationkit_ui/src/main/resources/zh_CN/element/string.json new file mode 100644 index 0000000..ad31be8 --- /dev/null +++ b/conversationkit_ui/src/main/resources/zh_CN/element/string.json @@ -0,0 +1,40 @@ +{ + "string": [ + { + "name": "conversation_title", + "value": "云信 Demo" + }, + { + "name": "stick_top_conversation", + "value": "置顶该聊天" + }, + { + "name": "unstick_top_conversation", + "value": "取消置顶" + }, + { + "name": "delete_conversation", + "value": "删除该聊天" + }, + { + "name": "add_friend", + "value": "添加好友" + }, + { + "name": "create_discuss_team", + "value": "创建讨论组" + }, + { + "name": "create_advance_team", + "value": "创建高级群" + }, + { + "name": "pull_up_load_text", + "value": "上拉加载更多" + }, + { + "name": "createAdvancedTeamSuccess", + "value": "成功创建高级群" + } + ] +} diff --git a/conversationkit_ui/src/test/List.test.ets b/conversationkit_ui/src/test/List.test.ets new file mode 100644 index 0000000..5a7099d --- /dev/null +++ b/conversationkit_ui/src/test/List.test.ets @@ -0,0 +1,12 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import localUnitTest from './LocalUnit.test'; + +export default function testsuite() { + localUnitTest(); +} \ No newline at end of file diff --git a/conversationkit_ui/src/test/LocalUnit.test.ets b/conversationkit_ui/src/test/LocalUnit.test.ets new file mode 100644 index 0000000..c7f1321 --- /dev/null +++ b/conversationkit_ui/src/test/LocalUnit.test.ets @@ -0,0 +1,40 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { afterAll, afterEach, beforeAll, beforeEach, describe, expect, it } from '@ohos/hypium'; + +export default function localUnitTest() { + describe('localUnitTest', () => { + // Defines a test suite. Two parameters are supported: test suite name and test suite function. + beforeAll(() => { + // Presets an action, which is performed only once before all test cases of the test suite start. + // This API supports only one parameter: preset action function. + }); + beforeEach(() => { + // Presets an action, which is performed before each unit test case starts. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: preset action function. + }); + afterEach(() => { + // Presets a clear action, which is performed after each unit test case ends. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: clear action function. + }); + afterAll(() => { + // Presets a clear action, which is performed after all test cases of the test suite end. + // This API supports only one parameter: clear action function. + }); + it('assertContain', 0, () => { + // Defines a test case. This API supports three parameters: test case name, filter parameter, and test case function. + let a = 'abc'; + let b = 'b'; + // Defines a variety of assertion methods, which are used to declare expected boolean conditions. + expect(a).assertContain(b); + expect(a).assertEqual(a); + }); + }); +} \ No newline at end of file diff --git a/corekit/.gitignore b/corekit/.gitignore new file mode 100644 index 0000000..e2713a2 --- /dev/null +++ b/corekit/.gitignore @@ -0,0 +1,6 @@ +/node_modules +/oh_modules +/.preview +/build +/.cxx +/.test \ No newline at end of file diff --git a/corekit/BuildProfile.ets b/corekit/BuildProfile.ets new file mode 100644 index 0000000..cab3453 --- /dev/null +++ b/corekit/BuildProfile.ets @@ -0,0 +1,17 @@ +/** + * Use these variables when you tailor your ArkTS code. They must be of the const type. + */ +export const HAR_VERSION = '1.1.0'; +export const BUILD_MODE_NAME = 'release'; +export const DEBUG = false; +export const TARGET_NAME = 'default'; + +/** + * BuildProfile Class is used only for compatibility purposes. + */ +export default class BuildProfile { + static readonly HAR_VERSION = HAR_VERSION; + static readonly BUILD_MODE_NAME = BUILD_MODE_NAME; + static readonly DEBUG = DEBUG; + static readonly TARGET_NAME = TARGET_NAME; +} \ No newline at end of file diff --git a/corekit/Index.ets b/corekit/Index.ets new file mode 100644 index 0000000..f070a31 --- /dev/null +++ b/corekit/Index.ets @@ -0,0 +1,7 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +export { CoreKitClient } from './src/main/ets/CoreKitClient' diff --git a/corekit/build-profile.json5 b/corekit/build-profile.json5 new file mode 100644 index 0000000..697dff2 --- /dev/null +++ b/corekit/build-profile.json5 @@ -0,0 +1,31 @@ +{ + "apiType": "stageMode", + "buildOption": { + }, + "buildOptionSet": [ + { + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + }, + }, + ], + "targets": [ + { + "name": "default" + }, + { + "name": "ohosTest" + } + ] +} diff --git a/corekit/consumer-rules.txt b/corekit/consumer-rules.txt new file mode 100644 index 0000000..e69de29 diff --git a/corekit/hvigorfile.ts b/corekit/hvigorfile.ts new file mode 100644 index 0000000..9d34d19 --- /dev/null +++ b/corekit/hvigorfile.ts @@ -0,0 +1,13 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { harTasks } from '@ohos/hvigor-ohos-plugin'; + +export default { + system: harTasks, /* Built-in plugin of Hvigor. It cannot be modified. */ + plugins: [] /* Custom plugin to extend the functionality of Hvigor. */ +} diff --git a/corekit/obfuscation-rules.txt b/corekit/obfuscation-rules.txt new file mode 100644 index 0000000..272efb6 --- /dev/null +++ b/corekit/obfuscation-rules.txt @@ -0,0 +1,23 @@ +# Define project specific obfuscation rules here. +# You can include the obfuscation configuration files in the current module's build-profile.json5. +# +# For more details, see +# https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/source-obfuscation-V5 + +# Obfuscation options: +# -disable-obfuscation: disable all obfuscations +# -enable-property-obfuscation: obfuscate the property names +# -enable-toplevel-obfuscation: obfuscate the names in the global scope +# -compact: remove unnecessary blank spaces and all line feeds +# -remove-log: remove all console.* statements +# -print-namecache: print the name cache that contains the mapping from the old names to new names +# -apply-namecache: reuse the given cache file + +# Keep options: +# -keep-property-name: specifies property names that you want to keep +# -keep-global-name: specifies names that you want to keep in the global scope + +-enable-property-obfuscation +-enable-toplevel-obfuscation +-enable-filename-obfuscation +-enable-export-obfuscation \ No newline at end of file diff --git a/corekit/oh-package.json5 b/corekit/oh-package.json5 new file mode 100644 index 0000000..cf56238 --- /dev/null +++ b/corekit/oh-package.json5 @@ -0,0 +1,9 @@ +{ + "name": "@nimkit/corekit", + "version": "1.1.0", + "description": "Please describe the basic information.", + "main": "Index.ets", + "author": "", + "license": "Apache-2.0", + "dependencies": {} +} diff --git a/corekit/src/main/ets/CoreKitClient.ets b/corekit/src/main/ets/CoreKitClient.ets new file mode 100644 index 0000000..9d330f5 --- /dev/null +++ b/corekit/src/main/ets/CoreKitClient.ets @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import BuildProfile from '../../../BuildProfile' +import { KitReport } from './KitReport' + +export class CoreKitClient { + static init(param: CoreKitInitParam) { + KitReport.reportToServer({ + appKey: param.appKey, + component: 'ChatKit', + version: BuildProfile.HAR_VERSION, + imVersion: param.imVersion ?? '', + platform: 'harmony', + reportType: 'init', + timeStamp: Date.now() + }) + } +} + +export interface CoreKitInitParam { + //NIM 应用 AppKey + appKey: string, + + //NIM SDK 版本 + imVersion?: string, +} \ No newline at end of file diff --git a/corekit/src/main/ets/KitReport.ets b/corekit/src/main/ets/KitReport.ets new file mode 100644 index 0000000..b600854 --- /dev/null +++ b/corekit/src/main/ets/KitReport.ets @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { http } from '@kit.NetworkKit'; + +export interface ReportInfo { + appKey: string, + + //组件名 + component: string + version: string + imVersion: string, + platform: string, + reportType: string, //init,pv,uv,apiEvent + timeStamp: number +} + +export class KitReport { + static reportUrl: string = + 'https://statistic.live.126.net/statics/report/xkit/action'; + + static reportToServer(info: ReportInfo) { + let httpClient = http.createHttp(); + httpClient.request(KitReport.reportUrl, + { + method: http.RequestMethod.POST, + header: { + 'Content-Type': 'application/json', + 'charset': 'utf-8' + }, + extraData: info, + connectTimeout: 60000, // 可选,默认为60000ms + readTimeout: 60000, // 可选,默认为60000ms + }, (err, data) => { + if (!err) { + console.debug('coreKit server success') + } + console.debug('coreKit server failed') + }) + + } +} \ No newline at end of file diff --git a/corekit/src/main/module.json5 b/corekit/src/main/module.json5 new file mode 100644 index 0000000..0279dd2 --- /dev/null +++ b/corekit/src/main/module.json5 @@ -0,0 +1,23 @@ +{ + "module": { + "name": "corekit", + "type": "har", + "deviceTypes": [ + "default", + "tablet", + "2in1" + ], + "requestPermissions": [ + { + "name": "ohos.permission.INTERNET", + "reason": "$string:net_reason", + "usedScene": { + "abilities": [ + "FormAbility" + ], + "when": "inuse" + } + } + ] + } +} diff --git a/corekit/src/main/resources/base/element/string.json b/corekit/src/main/resources/base/element/string.json new file mode 100644 index 0000000..5a2d826 --- /dev/null +++ b/corekit/src/main/resources/base/element/string.json @@ -0,0 +1,12 @@ +{ + "string": [ + { + "name": "page_show", + "value": "page from package" + }, + { + "name": "net_reason", + "value": "IM 链接" + } + ] +} diff --git a/corekit/src/main/resources/en_US/element/string.json b/corekit/src/main/resources/en_US/element/string.json new file mode 100644 index 0000000..a8134e5 --- /dev/null +++ b/corekit/src/main/resources/en_US/element/string.json @@ -0,0 +1,12 @@ +{ + "string": [ + { + "name": "page_show", + "value": "page from package" + }, + { + "name": "net_reason", + "value": "IM Connect" + } + ] +} diff --git a/corekit/src/main/resources/zh_CN/element/string.json b/corekit/src/main/resources/zh_CN/element/string.json new file mode 100644 index 0000000..5a2d826 --- /dev/null +++ b/corekit/src/main/resources/zh_CN/element/string.json @@ -0,0 +1,12 @@ +{ + "string": [ + { + "name": "page_show", + "value": "page from package" + }, + { + "name": "net_reason", + "value": "IM 链接" + } + ] +} diff --git a/corekit/src/ohosTest/ets/test/Ability.test.ets b/corekit/src/ohosTest/ets/test/Ability.test.ets new file mode 100644 index 0000000..25f1ffb --- /dev/null +++ b/corekit/src/ohosTest/ets/test/Ability.test.ets @@ -0,0 +1,42 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { hilog } from '@kit.PerformanceAnalysisKit'; +import { afterAll, afterEach, beforeAll, beforeEach, describe, expect, it } from '@ohos/hypium'; + +export default function abilityTest() { + describe('ActsAbilityTest', () => { + // Defines a test suite. Two parameters are supported: test suite name and test suite function. + beforeAll(() => { + // Presets an action, which is performed only once before all test cases of the test suite start. + // This API supports only one parameter: preset action function. + }) + beforeEach(() => { + // Presets an action, which is performed before each unit test case starts. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: preset action function. + }) + afterEach(() => { + // Presets a clear action, which is performed after each unit test case ends. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: clear action function. + }) + afterAll(() => { + // Presets a clear action, which is performed after all test cases of the test suite end. + // This API supports only one parameter: clear action function. + }) + it('assertContain', 0, () => { + // Defines a test case. This API supports three parameters: test case name, filter parameter, and test case function. + hilog.info(0x0000, 'testTag', '%{public}s', 'it begin'); + let a = 'abc'; + let b = 'b'; + // Defines a variety of assertion methods, which are used to declare expected boolean conditions. + expect(a).assertContain(b); + expect(a).assertEqual(a); + }) + }) +} \ No newline at end of file diff --git a/corekit/src/ohosTest/ets/test/List.test.ets b/corekit/src/ohosTest/ets/test/List.test.ets new file mode 100644 index 0000000..b3acbf7 --- /dev/null +++ b/corekit/src/ohosTest/ets/test/List.test.ets @@ -0,0 +1,12 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import abilityTest from './Ability.test'; + +export default function testsuite() { + abilityTest(); +} \ No newline at end of file diff --git a/corekit/src/ohosTest/module.json5 b/corekit/src/ohosTest/module.json5 new file mode 100644 index 0000000..ac24aa7 --- /dev/null +++ b/corekit/src/ohosTest/module.json5 @@ -0,0 +1,13 @@ +{ + "module": { + "name": "corekit_test", + "type": "feature", + "deviceTypes": [ + "default", + "tablet", + "2in1" + ], + "deliveryWithInstall": true, + "installationFree": false + } +} diff --git a/corekit/src/test/List.test.ets b/corekit/src/test/List.test.ets new file mode 100644 index 0000000..5a7099d --- /dev/null +++ b/corekit/src/test/List.test.ets @@ -0,0 +1,12 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import localUnitTest from './LocalUnit.test'; + +export default function testsuite() { + localUnitTest(); +} \ No newline at end of file diff --git a/corekit/src/test/LocalUnit.test.ets b/corekit/src/test/LocalUnit.test.ets new file mode 100644 index 0000000..c7f1321 --- /dev/null +++ b/corekit/src/test/LocalUnit.test.ets @@ -0,0 +1,40 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { afterAll, afterEach, beforeAll, beforeEach, describe, expect, it } from '@ohos/hypium'; + +export default function localUnitTest() { + describe('localUnitTest', () => { + // Defines a test suite. Two parameters are supported: test suite name and test suite function. + beforeAll(() => { + // Presets an action, which is performed only once before all test cases of the test suite start. + // This API supports only one parameter: preset action function. + }); + beforeEach(() => { + // Presets an action, which is performed before each unit test case starts. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: preset action function. + }); + afterEach(() => { + // Presets a clear action, which is performed after each unit test case ends. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: clear action function. + }); + afterAll(() => { + // Presets a clear action, which is performed after all test cases of the test suite end. + // This API supports only one parameter: clear action function. + }); + it('assertContain', 0, () => { + // Defines a test case. This API supports three parameters: test case name, filter parameter, and test case function. + let a = 'abc'; + let b = 'b'; + // Defines a variety of assertion methods, which are used to declare expected boolean conditions. + expect(a).assertContain(b); + expect(a).assertEqual(a); + }); + }); +} \ No newline at end of file diff --git a/features/Home/BuildProfile.ets b/features/Home/BuildProfile.ets index 3a501e5..6033e79 100644 --- a/features/Home/BuildProfile.ets +++ b/features/Home/BuildProfile.ets @@ -2,8 +2,8 @@ * Use these variables when you tailor your ArkTS code. They must be of the const type. */ export const HAR_VERSION = '1.0.0'; -export const BUILD_MODE_NAME = 'debug'; -export const DEBUG = true; +export const BUILD_MODE_NAME = 'release'; +export const DEBUG = false; export const TARGET_NAME = 'default'; /** diff --git a/features/Home/src/main/ets/pages/VideoPage.ets b/features/Home/src/main/ets/pages/VideoPage.ets index 2c346d2..6be6af7 100644 --- a/features/Home/src/main/ets/pages/VideoPage.ets +++ b/features/Home/src/main/ets/pages/VideoPage.ets @@ -85,6 +85,7 @@ export struct VideoPage { .justifyContent(FlexAlign.Center) .onClick(() => { router.pushUrl({url:'pages/VideoPage/PlayBackPage'}) + }) }.width('100%').height(45) @@ -197,8 +198,9 @@ export struct VideoPage { }) .margin({bottom:60}) .onClick(() => { - router.pushUrl({url:'pages/VideoPage/PastVideoPage'}) - // router.pushUrl({url:'pages/VideoPage/VideoGandanPage'}) + // router.pushUrl({url:'pages/VideoPage/PastVideoPage'}) + // router.pushUrl({url:'pages/Netease/imTabPage'}) + router.pushUrl({url:'pages/Netease/PublicConsultationPage'}) }) } diff --git a/features/mypage/BuildProfile.ets b/features/mypage/BuildProfile.ets index 3a501e5..6033e79 100644 --- a/features/mypage/BuildProfile.ets +++ b/features/mypage/BuildProfile.ets @@ -2,8 +2,8 @@ * Use these variables when you tailor your ArkTS code. They must be of the const type. */ export const HAR_VERSION = '1.0.0'; -export const BUILD_MODE_NAME = 'debug'; -export const DEBUG = true; +export const BUILD_MODE_NAME = 'release'; +export const DEBUG = false; export const TARGET_NAME = 'default'; /** diff --git a/features/mypage/src/main/ets/view/EditUserDataComp.ets b/features/mypage/src/main/ets/view/EditUserDataComp.ets index 78dd8e6..a9ff708 100644 --- a/features/mypage/src/main/ets/view/EditUserDataComp.ets +++ b/features/mypage/src/main/ets/view/EditUserDataComp.ets @@ -136,10 +136,10 @@ export struct EditUserDataComp { this.photoSheetDialog = new CustomDialogController({ builder: PhotoActionSheet({ controller: this.photoSheetDialog, - onPhotoSelected: async (uri: string) => { - this.photoPath = uri; + onPhotoSelected: async (uri: string| string[]) => { + this.photoPath = String(uri); console.info('Selected image URI:', uri); - const base64String = await ChangeUtil.convertUriToBase64(uri); + const base64String = await ChangeUtil.convertUriToBase64(String(uri)); const updateDataUrl:string = BasicConstant.urlExpert + 'modify'; // 定义content,请根据实际情况选择 @@ -306,10 +306,10 @@ export struct EditUserDataComp { this.certificatePhotoSheetDialog = new CustomDialogController({ builder: PhotoActionSheet({ controller: this.certificatePhotoSheetDialog, - onPhotoSelected: async (url: string) => { - this.certificatePhoto = url; - console.log('Selected image URI:', url); - const base64String = await ChangeUtil.convertUriToBase64(url); + onPhotoSelected: async (uri: string| string[]) => { + this.certificatePhoto = String(uri); + + const base64String = await ChangeUtil.convertUriToBase64(String(uri)); const updateDataUrl:string = BasicConstant.urlExpert + 'modify'; // 定义content,请根据实际情况选择 const postContent = new rcp.MultipartForm({ diff --git a/features/netease/.gitignore b/features/netease/.gitignore new file mode 100644 index 0000000..e2713a2 --- /dev/null +++ b/features/netease/.gitignore @@ -0,0 +1,6 @@ +/node_modules +/oh_modules +/.preview +/build +/.cxx +/.test \ No newline at end of file diff --git a/features/netease/BuildProfile.ets b/features/netease/BuildProfile.ets new file mode 100644 index 0000000..6033e79 --- /dev/null +++ b/features/netease/BuildProfile.ets @@ -0,0 +1,17 @@ +/** + * Use these variables when you tailor your ArkTS code. They must be of the const type. + */ +export const HAR_VERSION = '1.0.0'; +export const BUILD_MODE_NAME = 'release'; +export const DEBUG = false; +export const TARGET_NAME = 'default'; + +/** + * BuildProfile Class is used only for compatibility purposes. + */ +export default class BuildProfile { + static readonly HAR_VERSION = HAR_VERSION; + static readonly BUILD_MODE_NAME = BUILD_MODE_NAME; + static readonly DEBUG = DEBUG; + static readonly TARGET_NAME = TARGET_NAME; +} \ No newline at end of file diff --git a/features/netease/Index.ets b/features/netease/Index.ets new file mode 100644 index 0000000..d9a6837 --- /dev/null +++ b/features/netease/Index.ets @@ -0,0 +1,17 @@ +export { MainPage } from './src/main/ets/components/MainPage'; + +export { TabBarComp } from './src/main/ets/view/TabBarComp' + +export { MessageComp } from './src/main/ets/view/MessageComp' + +export { TabBarConsultationComp } from './src/main/ets/view/TabBarConsultationComp' + +export { ConsultationDetailComp } from './src/main/ets/view/ConsultationDetailComp' + +export { PreviewPhoto } from './src/main/ets/components/PreviewPhoto' + +export { InterrogationDetailComp } from './src/main/ets/view/InterrogationDetailComp' + +export { PatientSimplyComp } from './src/main/ets/view/PatientSimplyComp' + +export { MyOpinionComp } from './src/main/ets/view/MyOpinionComp' \ No newline at end of file diff --git a/features/netease/PERMISSION_README.md b/features/netease/PERMISSION_README.md new file mode 100644 index 0000000..89a7f6d --- /dev/null +++ b/features/netease/PERMISSION_README.md @@ -0,0 +1,70 @@ +# 图片保存权限功能说明 + +## 功能概述 + +为 `PreviewPhoto.ets` 组件中的 `downloadImage` 方法添加了完整的权限检查和申请功能,确保在保存图片到相册时能够正确处理存储权限。 + +## 实现的功能 + +### 1. 权限检查 +- 在下载图片前检查 `ohos.permission.WRITE_MEDIA` 权限 +- 使用 `abilityAccessCtrl.AtManager` 检查权限状态 + +### 2. 权限申请 +- 如果权限未授予,自动申请权限 +- 使用项目中已有的 `PermissionsUtils` 工具类 +- 提供友好的用户提示 + +### 3. 错误处理 +- 网络连接失败提示 +- 文件写入失败提示 +- 权限拒绝提示 +- 下载进度提示 + +### 4. 国际化支持 +- 所有提示信息都使用字符串资源 +- 支持多语言显示 + +## 修改的文件 + +### 1. PreviewPhoto.ets +- 添加权限检查和申请方法 +- 优化 `downloadImage` 方法的错误处理 +- 使用字符串资源替代硬编码文本 + +### 2. module.json5 +- 添加 `ohos.permission.WRITE_MEDIA` 权限声明 +- 添加 `ohos.permission.READ_MEDIA` 权限声明 +- 使用字符串资源作为权限说明 + +### 3. string.json +- 添加权限相关的字符串资源 +- 添加用户提示信息的字符串资源 + +## 权限说明 + +### WRITE_MEDIA 权限 +- 用途:保存图片到相册 +- 申请时机:用户点击保存图片时 +- 说明:用于将下载的图片写入到设备相册 + +### READ_MEDIA 权限 +- 用途:读取相册中的图片 +- 申请时机:应用启动时 +- 说明:用于访问用户相册中的图片 + +## 使用流程 + +1. 用户点击保存图片按钮 +2. 系统检查是否有存储权限 +3. 如果没有权限,弹出权限申请对话框 +4. 用户授权后,开始下载图片 +5. 下载完成后保存到相册 +6. 显示相应的成功或失败提示 + +## 注意事项 + +1. 权限申请是异步操作,需要等待用户响应 +2. 如果用户拒绝权限,会显示提示信息 +3. 网络下载和文件写入都有超时设置 +4. 所有操作都有相应的错误处理 \ No newline at end of file diff --git a/features/netease/build-profile.json5 b/features/netease/build-profile.json5 new file mode 100644 index 0000000..e6773f9 --- /dev/null +++ b/features/netease/build-profile.json5 @@ -0,0 +1,31 @@ +{ + "apiType": "stageMode", + "buildOption": { + }, + "buildOptionSet": [ + { + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + }, + }, + ], + "targets": [ + { + "name": "default" + }, + { + "name": "ohosTest" + } + ] +} diff --git a/features/netease/consumer-rules.txt b/features/netease/consumer-rules.txt new file mode 100644 index 0000000..e69de29 diff --git a/features/netease/hvigorfile.ts b/features/netease/hvigorfile.ts new file mode 100644 index 0000000..4218707 --- /dev/null +++ b/features/netease/hvigorfile.ts @@ -0,0 +1,6 @@ +import { harTasks } from '@ohos/hvigor-ohos-plugin'; + +export default { + system: harTasks, /* Built-in plugin of Hvigor. It cannot be modified. */ + plugins:[] /* Custom plugin to extend the functionality of Hvigor. */ +} diff --git a/features/netease/obfuscation-rules.txt b/features/netease/obfuscation-rules.txt new file mode 100644 index 0000000..272efb6 --- /dev/null +++ b/features/netease/obfuscation-rules.txt @@ -0,0 +1,23 @@ +# Define project specific obfuscation rules here. +# You can include the obfuscation configuration files in the current module's build-profile.json5. +# +# For more details, see +# https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/source-obfuscation-V5 + +# Obfuscation options: +# -disable-obfuscation: disable all obfuscations +# -enable-property-obfuscation: obfuscate the property names +# -enable-toplevel-obfuscation: obfuscate the names in the global scope +# -compact: remove unnecessary blank spaces and all line feeds +# -remove-log: remove all console.* statements +# -print-namecache: print the name cache that contains the mapping from the old names to new names +# -apply-namecache: reuse the given cache file + +# Keep options: +# -keep-property-name: specifies property names that you want to keep +# -keep-global-name: specifies names that you want to keep in the global scope + +-enable-property-obfuscation +-enable-toplevel-obfuscation +-enable-filename-obfuscation +-enable-export-obfuscation \ No newline at end of file diff --git a/features/netease/oh-package-lock.json5 b/features/netease/oh-package-lock.json5 new file mode 100644 index 0000000..5cd021c --- /dev/null +++ b/features/netease/oh-package-lock.json5 @@ -0,0 +1,225 @@ +{ + "meta": { + "stableOrder": true + }, + "lockfileVersion": 3, + "ATTENTION": "THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.", + "specifiers": { + "@itcast/basic@../../commons/basic": "@itcast/basic@../../commons/basic", + "@nimkit/chatkit@../../chatkit": "@nimkit/chatkit@../../chatkit", + "@nimkit/chatkit_ui@../../chatkit_ui": "@nimkit/chatkit_ui@../../chatkit_ui", + "@nimkit/common@../../common": "@nimkit/common@../../common", + "@nimkit/conversationkit_ui@../../conversationkit_ui": "@nimkit/conversationkit_ui@../../conversationkit_ui", + "@nimkit/corekit@../../corekit": "@nimkit/corekit@../../corekit", + "@nimkit/localconversationkit_ui@../../localconversationkit_ui": "@nimkit/localconversationkit_ui@../../localconversationkit_ui", + "@nimkit/markdown@1.1.0": "@nimkit/markdown@1.1.0", + "@nimsdk/base@../../oh_modules/.ohpm/@nimsdk+conversation@10.9.10/oh_modules/@nimsdk/conversation/libs/base.har": "@nimsdk/base@../../oh_modules/.ohpm/@nimsdk+nim@10.9.10/oh_modules/@nimsdk/nim/libs/base.har", + "@nimsdk/base@../../oh_modules/.ohpm/@nimsdk+friend@10.9.10/oh_modules/@nimsdk/friend/libs/base.har": "@nimsdk/base@../../oh_modules/.ohpm/@nimsdk+nim@10.9.10/oh_modules/@nimsdk/nim/libs/base.har", + "@nimsdk/base@../../oh_modules/.ohpm/@nimsdk+message@10.9.10/oh_modules/@nimsdk/message/libs/base.har": "@nimsdk/base@../../oh_modules/.ohpm/@nimsdk+nim@10.9.10/oh_modules/@nimsdk/nim/libs/base.har", + "@nimsdk/base@../../oh_modules/.ohpm/@nimsdk+nim@10.9.10/oh_modules/@nimsdk/nim/libs/base.har": "@nimsdk/base@../../oh_modules/.ohpm/@nimsdk+nim@10.9.10/oh_modules/@nimsdk/nim/libs/base.har", + "@nimsdk/base@../../oh_modules/.ohpm/@nimsdk+team@10.9.10/oh_modules/@nimsdk/team/libs/base.har": "@nimsdk/base@../../oh_modules/.ohpm/@nimsdk+nim@10.9.10/oh_modules/@nimsdk/nim/libs/base.har", + "@nimsdk/base@../../oh_modules/.ohpm/@nimsdk+user@10.9.10/oh_modules/@nimsdk/user/libs/base.har": "@nimsdk/base@../../oh_modules/.ohpm/@nimsdk+nim@10.9.10/oh_modules/@nimsdk/nim/libs/base.har", + "@nimsdk/base@10.9.10": "@nimsdk/base@../../oh_modules/.ohpm/@nimsdk+nim@10.9.10/oh_modules/@nimsdk/nim/libs/base.har", + "@nimsdk/conversation@10.9.10": "@nimsdk/conversation@10.9.10", + "@nimsdk/friend@10.9.10": "@nimsdk/friend@10.9.10", + "@nimsdk/message@10.9.10": "@nimsdk/message@10.9.10", + "@nimsdk/nim@10.9.10": "@nimsdk/nim@10.9.10", + "@nimsdk/team@10.9.10": "@nimsdk/team@10.9.10", + "@nimsdk/user@10.9.10": "@nimsdk/user@10.9.10", + "@nimsdk/vendor@1.0.0": "@nimsdk/vendor@1.0.0", + "@ohos/pinyin4js@^2.0.0": "@ohos/pinyin4js@2.0.1", + "class-transformer@^0.5.1": "class-transformer@0.5.1", + "reflect-metadata@^0.1.13": "reflect-metadata@0.2.1" + }, + "packages": { + "@itcast/basic@../../commons/basic": { + "name": "@itcast/basic", + "version": "1.0.0", + "resolved": "../../commons/basic", + "registryType": "local" + }, + "@nimkit/chatkit@../../chatkit": { + "name": "@nimkit/chatkit", + "version": "10.1.0", + "resolved": "../../chatkit", + "registryType": "local", + "dependencies": { + "@nimsdk/conversation": "10.9.10", + "@nimsdk/message": "10.9.10", + "@nimsdk/team": "10.9.10", + "@nimsdk/user": "10.9.10", + "@nimsdk/friend": "10.9.10", + "@nimsdk/nim": "10.9.10", + "@nimsdk/base": "10.9.10", + "@nimkit/corekit": "file:../corekit", + "class-transformer": "^0.5.1", + "reflect-metadata": "^0.1.13" + } + }, + "@nimkit/chatkit_ui@../../chatkit_ui": { + "name": "@nimkit/chatkit_ui", + "version": "10.1.0", + "resolved": "../../chatkit_ui", + "registryType": "local", + "dependencies": { + "@nimkit/common": "file:../common", + "@nimkit/chatkit": "file:../chatkit", + "@nimkit/corekit": "file:../corekit", + "@nimsdk/base": "10.9.10", + "class-transformer": "^0.5.1", + "reflect-metadata": "^0.1.13", + "@nimkit/markdown": "1.1.0", + "@itcast/basic": "file:../commons/basic" + } + }, + "@nimkit/common@../../common": { + "name": "@nimkit/common", + "version": "1.1.0", + "resolved": "../../common", + "registryType": "local", + "dependencies": { + "@ohos/pinyin4js": "^2.0.0" + } + }, + "@nimkit/conversationkit_ui@../../conversationkit_ui": { + "name": "@nimkit/conversationkit_ui", + "version": "10.1.0", + "resolved": "../../conversationkit_ui", + "registryType": "local", + "dependencies": { + "@nimkit/common": "file:../common", + "@nimkit/chatkit": "file:../chatkit", + "@nimsdk/base": "10.9.10" + } + }, + "@nimkit/corekit@../../corekit": { + "name": "@nimkit/corekit", + "version": "1.1.0", + "resolved": "../../corekit", + "registryType": "local" + }, + "@nimkit/localconversationkit_ui@../../localconversationkit_ui": { + "name": "@nimkit/localconversationkit_ui", + "version": "10.1.0", + "resolved": "../../localconversationkit_ui", + "registryType": "local", + "dependencies": { + "@nimkit/common": "file:../common", + "@nimkit/chatkit": "file:../chatkit", + "@nimsdk/base": "10.9.10" + } + }, + "@nimkit/markdown@1.1.0": { + "name": "@nimkit/markdown", + "version": "1.1.0", + "integrity": "sha512-ITTM5bIkvcK+KsWHxn7vta1W3XGulMQ4vWHT37NidayhTlo04lG6JMABtsxCYYR7H6OiwuUcVpLzDvOyjScYSA==", + "resolved": "https://repo.harmonyos.com/ohpm/@nimkit/markdown/-/markdown-1.1.0.har", + "registryType": "ohpm" + }, + "@nimsdk/base@../../oh_modules/.ohpm/@nimsdk+nim@10.9.10/oh_modules/@nimsdk/nim/libs/base.har": { + "name": "@nimsdk/base", + "version": "10.9.10", + "resolved": "../../oh_modules/.ohpm/@nimsdk+nim@10.9.10/oh_modules/@nimsdk/nim/libs/base.har", + "registryType": "local", + "dependencies": { + "@nimsdk/vendor": "1.0.0" + } + }, + "@nimsdk/conversation@10.9.10": { + "name": "@nimsdk/conversation", + "version": "10.9.10", + "integrity": "sha512-1HLvs19/GJAHeIOCN0OiKlowkg6dzZwvZK0Jqu7tAcYGcLl4+G/Z3pwsGHhv+E2Tzs8FHZCqbESMgSh+LNyt/g==", + "resolved": "https://repo.harmonyos.com/ohpm/@nimsdk/conversation/-/conversation-10.9.10.har", + "registryType": "ohpm", + "dependencies": { + "@nimsdk/base": "file:./libs/base.har", + "@nimsdk/vendor": "1.0.0" + } + }, + "@nimsdk/friend@10.9.10": { + "name": "@nimsdk/friend", + "version": "10.9.10", + "integrity": "sha512-JVACpT8xqLLaN8D26YHmwfsS1dHFQvBnP3Jyk9El89P2trn/2ZFLvnQjxzyBDsqJRUtNFfIrN+TK7Idmud4ACQ==", + "resolved": "https://repo.harmonyos.com/ohpm/@nimsdk/friend/-/friend-10.9.10.har", + "registryType": "ohpm", + "dependencies": { + "@nimsdk/base": "file:./libs/base.har", + "@nimsdk/vendor": "1.0.0" + } + }, + "@nimsdk/message@10.9.10": { + "name": "@nimsdk/message", + "version": "10.9.10", + "integrity": "sha512-f59rWiM4SjhhxNftRUt9vg7lIwkGycV/aL8J3omH+Te4SMbUGolwDGErDr7adtZ3tDUThtxxgU8n5tD28TBRtA==", + "resolved": "https://repo.harmonyos.com/ohpm/@nimsdk/message/-/message-10.9.10.har", + "registryType": "ohpm", + "dependencies": { + "@nimsdk/base": "file:./libs/base.har", + "@nimsdk/vendor": "1.0.0" + } + }, + "@nimsdk/nim@10.9.10": { + "name": "@nimsdk/nim", + "version": "10.9.10", + "integrity": "sha512-WpT8vBTld92ExtH30Ffsm+xq6BW6/UFj8SuhJrcQaZY3AYf9sg+d+euqx/dFzjZin5cWRxd/yoodBiVcGfsM4w==", + "resolved": "https://repo.harmonyos.com/ohpm/@nimsdk/nim/-/nim-10.9.10.har", + "registryType": "ohpm", + "dependencies": { + "@nimsdk/base": "file:./libs/base.har", + "@nimsdk/vendor": "1.0.0" + } + }, + "@nimsdk/team@10.9.10": { + "name": "@nimsdk/team", + "version": "10.9.10", + "integrity": "sha512-T4YSN395VXQr1TDX2B24DmGYuvUgUqE7wndbleR980wEyki9IfhC2VxxJ1yajhxVlVkfmuBjCB/eKWL0zLzu5A==", + "resolved": "https://repo.harmonyos.com/ohpm/@nimsdk/team/-/team-10.9.10.har", + "registryType": "ohpm", + "dependencies": { + "@nimsdk/base": "file:./libs/base.har", + "@nimsdk/vendor": "1.0.0" + } + }, + "@nimsdk/user@10.9.10": { + "name": "@nimsdk/user", + "version": "10.9.10", + "integrity": "sha512-KyWVDDPbymj3qoC8Y0mB8umgvLg89Y2cB02tM35oSG8IW95C936v5ogip2Jk7qAfabXxI/XTyy5wQoW1z950JA==", + "resolved": "https://repo.harmonyos.com/ohpm/@nimsdk/user/-/user-10.9.10.har", + "registryType": "ohpm", + "dependencies": { + "@nimsdk/base": "file:./libs/base.har", + "@nimsdk/vendor": "1.0.0" + } + }, + "@nimsdk/vendor@1.0.0": { + "name": "@nimsdk/vendor", + "version": "1.0.0", + "integrity": "sha512-q49MJM6PfucNs8jvLP56a2etyqRfZCeJaMa1BT9vO4sIgwt15bin+hpUWZ1qkflBs9YkDb2nMIX5O8zt556muw==", + "resolved": "https://repo.harmonyos.com/ohpm/@nimsdk/vendor/-/vendor-1.0.0.har", + "registryType": "ohpm" + }, + "@ohos/pinyin4js@2.0.1": { + "name": "@ohos/pinyin4js", + "version": "2.0.1", + "integrity": "sha512-qmYDelku5gcgKVmJyMqa7kWf0a+e8nnGS9ts5FRLA0LdRf+Iz36X/4Vub6hhh/RusuDmmWG9h153KZe+kraIVg==", + "resolved": "https://ohpm.openharmony.cn/ohpm/@ohos/pinyin4js/-/pinyin4js-2.0.1.har", + "registryType": "ohpm" + }, + "class-transformer@0.5.1": { + "name": "class-transformer", + "version": "0.5.1", + "integrity": "sha512-SQa1Ws6hUbfC98vKGxZH3KFY0Y1lm5Zm0SY8XX9zbK7FJCyVEac3ATW0RIpwzW+oOfmHE5PMPufDG9hCfoEOMw==", + "resolved": "https://repo.harmonyos.com/ohpm/class-transformer/-/class-transformer-0.5.1.tgz", + "shasum": "24147d5dffd2a6cea930a3250a677addf96ab336", + "registryType": "ohpm" + }, + "reflect-metadata@0.2.1": { + "name": "reflect-metadata", + "version": "0.2.1", + "integrity": "sha512-i5lLI6iw9AU3Uu4szRNPPEkomnkjRTaVt9hy/bn5g/oSzekBSMeLZblcjP74AW0vBabqERLLIrz+gR8QYR54Tw==", + "resolved": "https://repo.harmonyos.com/ohpm/reflect-metadata/-/reflect-metadata-0.2.1.tgz", + "shasum": "8d5513c0f5ef2b4b9c3865287f3c0940c1f67f74", + "registryType": "ohpm" + } + } +} \ No newline at end of file diff --git a/features/netease/oh-package.json5 b/features/netease/oh-package.json5 new file mode 100644 index 0000000..da6bbef --- /dev/null +++ b/features/netease/oh-package.json5 @@ -0,0 +1,18 @@ +{ + "name": "netease", + "version": "1.0.0", + "description": "Please describe the basic information.", + "main": "Index.ets", + "author": "", + "license": "Apache-2.0", + "dependencies": { + "@itcast/basic": "file:../../commons/basic", + "@nimkit/conversationkit_ui": "file:../../conversationkit_ui", + "@nimkit/chatkit_ui": "file:../../chatkit_ui", + "@nimkit/chatkit": "file:../../chatkit", + "@nimsdk/base": "10.9.10", + "@nimkit/common": "file:../../common", + "@nimkit/localconversationkit_ui": "file:../../localconversationkit_ui", + + } +} \ No newline at end of file diff --git a/features/netease/src/main/ets/components/ItemCompMany.ets b/features/netease/src/main/ets/components/ItemCompMany.ets new file mode 100644 index 0000000..e0f393f --- /dev/null +++ b/features/netease/src/main/ets/components/ItemCompMany.ets @@ -0,0 +1,84 @@ + +import { InterrogationBean } from '../model/ConsulModel' +import { router } from '@kit.ArkUI' + +import { calculateExactAge } from '@itcast/basic' + + +@Preview +@Component +export struct ItemCompMany { + @Prop item:InterrogationBean; + @State isHistory:boolean = false;//是否是我已回答 + @State status:string='' + aboutToAppear(): void { + + } + + build() { + Column() { + Row() + { + Text() + { + Span(this.item.user_status==0?$r('app.string.cancellation'):this.item.name.substring(0,1)+'**').fontColor($r('app.color.top_title')) + Span(this.item.sex==0?"(男 "+this.getYears(this.item.birthday)+"岁)":"(女 "+this.getYears(this.item.birthday)+"岁)").fontColor($r('app.color.common_gray_03')) + + }.fontSize(19).layoutWeight(1) + Text(this.item.create_date?this.item.create_date.length>10?this.item.create_date.substring(0,10):this.item.create_date:'') + .fontSize(15).fontColor($r('app.color.common_gray_03')).padding({left:5}) + // Text('').width(11).height(11).backgroundColor('#ffff3e3e').borderRadius(20).margin({top:-20}) + // .visibility(this.isHistory?Visibility.Visible:Visibility.None) + + } + Text(this.item.disease_describe) + .fontSize(14).fontColor($r('app.color.common_gray_03')).padding(9).margin({top:10}) + .maxLines(2) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .backgroundColor($r('app.color.f6f6f6')).borderRadius(8) + .width('100%') + Row() + { + + if(this.item.answer_num==0) + { + Text('').width(11).height(11).backgroundColor('#ffff3e3e').borderRadius(20) .textAlign(TextAlign.Start) + Text('暂未有医生回答').fontSize(12).fontColor($r('app.color.common_gray_03')) + .textAlign(TextAlign.Start).layoutWeight(1).margin({left:3}) + } + else + { + Text(this.item.answer_num+'位医生已回答').fontSize(12).fontColor($r('app.color.top_title')) + .textAlign(TextAlign.Start).layoutWeight(1) + } + + Text(this.item.disease_name.includes("甲、乙、丙、丁")?'肝炎':this.item.disease_name).fontSize(11).borderColor($r('app.color.top_title')).fontColor($r('app.color.top_title')) + .width(63).height(25).borderRadius(17).borderWidth(1).textAlign(TextAlign.Center).margin({left:10}) + + }.alignSelf(ItemAlign.Start) + .margin({top:10}) + + + } + .width('100%') + .padding(10) + .onClick(() => { + router.pushUrl({ + url: 'pages/Netease/InterrogationDetailCompPage', + params: { uuid: this.item.step1_uuid,isHistory:this.isHistory+''} + }); + }) + } + + + getYears(birthDateStr:string): number + { + const birthDate: Date = new Date(birthDateStr); + return calculateExactAge(birthDate) + } + + + + +} + diff --git a/features/netease/src/main/ets/components/ItemCompPublic.ets b/features/netease/src/main/ets/components/ItemCompPublic.ets new file mode 100644 index 0000000..c70e812 --- /dev/null +++ b/features/netease/src/main/ets/components/ItemCompPublic.ets @@ -0,0 +1,66 @@ + +import { ConsulList } from '../model/ConsulModel' +import { router } from '@kit.ArkUI' + + +@Preview +@Component +export struct ItemCompPublic { + @Prop item:ConsulList; + @State isHistory:boolean = false;//是否是我已回答 + @State status:string='' + aboutToAppear(): void { + + } + + build() { + Column() { + Row() + { + Text(this.item.state==0?$r('app.string.cancellation'):this.item.realName).fontSize(19).fontColor($r('app.color.top_title')).layoutWeight(1) + Text(this.item.createDate?this.item.createDate.length>16?this.item.createDate.substring(1,16):this.item.createDate:'') + .fontSize(15).fontColor($r('app.color.top_title')).padding({left:5}) + Text('').width(11).height(11).backgroundColor('#ffff3e3e').borderRadius(20).margin({top:-20}) + .visibility(this.isHistory?Visibility.Visible:Visibility.None) + + } + Text(this.item.content) + .fontSize(14).fontColor($r('app.color.common_gray_03')).padding(9).margin({top:10}) + .backgroundColor($r('app.color.f6f6f6')).borderRadius(8) + .width('100%') + .maxLines(2) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + Row() + { + Text('问题详情').fontSize(11).backgroundColor($r('app.color.top_title')).fontColor(Color.White) + .width(63).height(25).borderRadius(17).textAlign(TextAlign.Center) + .onClick(() => { + router.pushUrl({ + url: 'pages/Netease/ConsultationDetailPage', + params: { uuid: this.item.uuid,isHistory:this.isHistory+''} + }); + }) + Text(this.item.diseaseName.includes("甲、乙、丙、丁")?'肝炎':this.item.diseaseName).fontSize(11).borderColor($r('app.color.top_title')).fontColor($r('app.color.top_title')) + .width(63).height(25).borderRadius(17).borderWidth(1).textAlign(TextAlign.Center).margin({left:10}) + + }.alignSelf(ItemAlign.Start) + .margin({top:10}) + + + } + .width('100%') + .padding(10) + .onClick(() => { + router.pushUrl({ + url: 'pages/Netease/ConsultationDetailPage', + params: { uuid: this.item.uuid,isHistory:this.isHistory+''} + }); + }) + } + + + + + +} + diff --git a/features/netease/src/main/ets/components/ListCompInterrogation.ets b/features/netease/src/main/ets/components/ListCompInterrogation.ets new file mode 100644 index 0000000..c07240d --- /dev/null +++ b/features/netease/src/main/ets/components/ListCompInterrogation.ets @@ -0,0 +1,151 @@ +import { ItemCompMany } from './ItemCompMany' +import { ListInterrogationBean,InterrogationBean } from '../model/ConsulModel' +import { HdList, HdListController,BasicConstant,hdHttp, HdResponse ,logger} from '@itcast/basic/Index' +import { promptAction, router } from '@kit.ArkUI' +import { BusinessError } from '@kit.BasicServicesKit'; +import { EmptyViewComp,HdLoadingDialog } from '@itcast/basic' +import HashMap from '@ohos.util.HashMap'; + + +@Component +export struct ListCompInterrogation { + + @State isEmptyViewVisible: boolean = false; // 控制显隐的状态变量 + @Prop + @Watch('onUpdate') + isHistory:boolean = false;//是否是我已回答 + + @State + list: InterrogationBean[] = [] + controller = new HdListController() + @State + page: number = 1 + + + @State url:string=BasicConstant.newConsultList + + hashMap: HashMap = new HashMap(); + + + dialog: CustomDialogController = new CustomDialogController({ + builder: HdLoadingDialog({ message: '加载中...' }), + customStyle: true, + alignment: DialogAlignment.Center + }) + + onUpdate() { + this.onRefresh() + + } + + onRefresh() { + this.page = 1 + this.initData(0) + + } + + initData(type:number) + { + this.dialog.open() + this.hashMap.clear(); + this.hashMap.set('page', this.page+"") + if(this.isHistory) + { + this.url=BasicConstant.listMyAnsweredInterrogation + } + else + { + this.url=BasicConstant.listNewInterrogation + } + hdHttp.httpReq(this.url,this.hashMap).then(async (res: HdResponse) => { + this.dialog.close() + + if(type==0) + { + this.controller.refreshed() + } + else + { + this.controller.loaded() + } + + let json:ListInterrogationBean = JSON.parse(res+'') as ListInterrogationBean; + if(this.page==1) + { + this.list=[] + if(json.data!=null&&json.data.list!=null&&json.data.list.length>0) + { + this.list = json.data.list + } + + } + else if(this.page>1&&json.data!=null&&json.data.list!=null&&json.data.list.length>0) + { + this.list.push(...json.data.list) + } + + if (json.data.isLastPage) { + this.controller.finished() + } else { + this.page++ + } + + + + + if (this.list.length > 0) { + this.isEmptyViewVisible = false; + } else { + this.isEmptyViewVisible = true; + } + + }).catch((err: BusinessError) => { + this.dialog.close() + if (this.list.length > 0) { + this.isEmptyViewVisible = false; + } else { + this.isEmptyViewVisible = true; + } + }) + } + + build() { + Column() + { + + if (this.isEmptyViewVisible){ + EmptyViewComp({promptText:'暂无公益咨询',isVisibility:this.isEmptyViewVisible}) + .width('100%') + .height('100%') + } else + { + HdList({ + lw: 1, + controller: this.controller, + strokeWidth:5, + onRefresh: () => { + this.onRefresh() + }, + onLoad: () => { + this.initData(1) + + } + + }) + + { + ForEach(this.list, (item: InterrogationBean) => { + ListItem() { + ItemCompMany({ item,isHistory:this.isHistory }) + + } + + }) + } + } + + + } + + } +} \ No newline at end of file diff --git a/features/netease/src/main/ets/components/ListCompMany.ets b/features/netease/src/main/ets/components/ListCompMany.ets new file mode 100644 index 0000000..1963ebb --- /dev/null +++ b/features/netease/src/main/ets/components/ListCompMany.ets @@ -0,0 +1,151 @@ +import { ItemCompMany } from './ItemCompMany' +import { ListInterrogationBean,InterrogationBean } from '../model/ConsulModel' +import { HdList, HdListController,BasicConstant,hdHttp, HdResponse ,logger} from '@itcast/basic/Index' +import { promptAction, router } from '@kit.ArkUI' +import { BusinessError } from '@kit.BasicServicesKit'; +import { EmptyViewComp,HdLoadingDialog } from '@itcast/basic' +import HashMap from '@ohos.util.HashMap'; + + +@Component +export struct ListCompMany { + + @State isEmptyViewVisible: boolean = false; // 控制显隐的状态变量 + @Prop + @Watch('onUpdate') + isHistory:boolean = false;//是否是我已回答 + + @State + list: InterrogationBean[] = [] + controller = new HdListController() + @State + page: number = 1 + + + @State url:string=BasicConstant.newConsultList + + hashMap: HashMap = new HashMap(); + + + dialog: CustomDialogController = new CustomDialogController({ + builder: HdLoadingDialog({ message: '加载中...' }), + customStyle: true, + alignment: DialogAlignment.Center + }) + + onUpdate() { + this.onRefresh() + + } + + onRefresh() { + this.page = 1 + this.initData(0) + + } + + initData(type:number) + { + this.dialog.open() + this.hashMap.clear(); + this.hashMap.set('page', this.page+"") + if(this.isHistory) + { + this.url=BasicConstant.listMyAnsweredInterrogation + } + else + { + this.url=BasicConstant.listNewInterrogation + } + hdHttp.httpReq(this.url,this.hashMap).then(async (res: HdResponse) => { + this.dialog.close() + + if(type==0) + { + this.controller.refreshed() + } + else + { + this.controller.loaded() + } + + let json:ListInterrogationBean = JSON.parse(res+'') as ListInterrogationBean; + if(this.page==1) + { + this.list=[] + if(json.data!=null&&json.data.list!=null&&json.data.list.length>0) + { + this.list = json.data.list + } + + } + else if(this.page>1&&json.data!=null&&json.data.list!=null&&json.data.list.length>0) + { + this.list.push(...json.data.list) + } + + if (json.data.isLastPage) { + this.controller.finished() + } else { + this.page++ + } + + + + + if (this.list.length > 0) { + this.isEmptyViewVisible = false; + } else { + this.isEmptyViewVisible = true; + } + + }).catch((err: BusinessError) => { + this.dialog.close() + if (this.list.length > 0) { + this.isEmptyViewVisible = false; + } else { + this.isEmptyViewVisible = true; + } + }) + } + + build() { + Column() + { + + if (this.isEmptyViewVisible){ + EmptyViewComp({promptText:'暂无公益咨询',isVisibility:this.isEmptyViewVisible}) + .width('100%') + .height('100%') + } else + { + HdList({ + lw: 1, + controller: this.controller, + strokeWidth:5, + onRefresh: () => { + this.onRefresh() + }, + onLoad: () => { + this.initData(1) + + } + + }) + + { + ForEach(this.list, (item: InterrogationBean) => { + ListItem() { + ItemCompMany({ item,isHistory:this.isHistory }) + + } + + }) + } + } + + + } + + } +} \ No newline at end of file diff --git a/features/netease/src/main/ets/components/ListCompPublic.ets b/features/netease/src/main/ets/components/ListCompPublic.ets new file mode 100644 index 0000000..71430e6 --- /dev/null +++ b/features/netease/src/main/ets/components/ListCompPublic.ets @@ -0,0 +1,222 @@ +import { ItemCompPublic } from './ItemCompPublic' +import { ConsulList,ConsulModel,ConsulModelHis } from '../model/ConsulModel' +import { HdList, HdListController,BasicConstant,hdHttp, HdResponse ,logger} from '@itcast/basic/Index' +import { promptAction, router } from '@kit.ArkUI' +import { BusinessError } from '@kit.BasicServicesKit'; +import { EmptyViewComp,HdLoadingDialog } from '@itcast/basic' +import HashMap from '@ohos.util.HashMap'; + + +@Component +export struct ListCompPublic { + + @State isEmptyViewVisible: boolean = false; // 控制显隐的状态变量 + @Prop + @Watch('onUpdate') + isHistory:boolean = false;//是否是我已回答 + + @State + list: ConsulList[] = [] + controller = new HdListController() + @State + page: number = 1 + @State + yetDayTotalNum: number = 0 + @State + yetDayTotalnumEPNum: number = 0 + + @State url:string=BasicConstant.newConsultList + + hashMap: HashMap = new HashMap(); + + + dialog: CustomDialogController = new CustomDialogController({ + builder: HdLoadingDialog({ message: '加载中...' }), + customStyle: true, + alignment: DialogAlignment.Center + }) + + onUpdate() { + this.onRefresh() + + } + + onRefresh() { + this.page = 1 + this.initData(0) + + } + + initData(type:number) + { + this.dialog.open() + this.hashMap.clear(); + this.hashMap.set('page', this.page+"") + if(this.isHistory) + { + this.url=BasicConstant.consultListHis + } + else + { + this.url=BasicConstant.newConsultList + } + hdHttp.httpReq(this.url,this.hashMap).then(async (res: HdResponse) => { + this.dialog.close() + + if(type==0) + { + this.controller.refreshed() + } + else + { + this.controller.loaded() + } + if(this.isHistory) + { + let json:ConsulModelHis = JSON.parse(res+'') as ConsulModelHis; + if(this.page==1) + { + this.list=[] + if(json.data!=null&&json.data.list!=null&&json.data.list!=null&&json.data.list.length>0) + { + this.list = json.data.list + } + + } + else if(this.page>1&&json.data!=null&&json.data.list!=null&&json.data.list.length>0) + { + this.list.push(...json.data.list) + } + + if (this.page >= json.data.totalPage) { + this.controller.finished() + } else { + this.page++ + } + + } + else + { + let json:ConsulModel = JSON.parse(res+'') as ConsulModel; + this.yetDayTotalNum=json.data.yetDayTotalNum + this.yetDayTotalnumEPNum=json.data.yetDayTotalnumEPNum + if(this.page==1) + { + this.list=[] + if(json.data!=null&&json.data.consult_list!=null&&json.data.consult_list.list!=null&&json.data.consult_list.list.length>0) + { + this.list = json.data.consult_list.list + } + + } + else if(this.page>1&&json.data!=null&&json.data.consult_list!=null&&json.data.consult_list.list!=null&&json.data.consult_list.list.length>0) + { + this.list.push(...json.data.consult_list.list) + } + + if (this.page >= json.data.consult_list.totalPage) { + this.controller.finished() + } else { + this.page++ + } + } + + if (this.list.length > 0) { + this.isEmptyViewVisible = false; + } else { + this.isEmptyViewVisible = true; + } + + }).catch((err: BusinessError) => { + this.dialog.close() + if (this.list.length > 0) { + this.isEmptyViewVisible = false; + } else { + this.isEmptyViewVisible = true; + } + }) + } + + build() { + Column() + { + if(!this.isHistory) + { + Column() + { + Text() { + Span('昨天共有').fontSize(14).fontColor(Color.White) + Span(this.yetDayTotalNum+'').fontColor('#FFEB63') .fontSize(20) + Span('条公益咨询').fontSize(14).fontColor(Color.White) + + } + .margin({top:20}) + .width('100%') + .textAlign(TextAlign.Start) + .padding({left:120}) + Text() { + if(this.yetDayTotalnumEPNum>0) + { + Span('您回答了').fontSize(14).fontColor(Color.White) + Span(this.yetDayTotalnumEPNum+'').fontColor('#FFEB63') .fontSize(20) + Span('条,谢谢您的支持!').fontSize(14).fontColor(Color.White) + } + else + { + Span('邀请您一起参与').fontSize(14).fontColor(Color.White) + ImageSpan($r('app.media.consult_zero')).width(35).height(20).padding({top:4,bottom:2}).objectFit(ImageFit.Contain) + + } + + } + .width('100%') + .textAlign(TextAlign.Start) + .padding({left:120}) + .margin({top:10}) + } + .backgroundImage($r('app.media.consult_background')) + .height(90) + .backgroundImageSize(ImageSize.Cover) + .backgroundImagePosition(Alignment.Center) + .width('100%') + .visibility(this.yetDayTotalNum>0?Visibility.Visible:Visibility.None) + Text('').width('100%').height(5).backgroundColor($r('app.color.efefef')) + .visibility(this.yetDayTotalNum>0?Visibility.Visible:Visibility.None) + + } + if (this.isEmptyViewVisible){ + EmptyViewComp({promptText:'暂无公益咨询',isVisibility:this.isEmptyViewVisible}) + .width('100%') + .height('100%') + } else + { + HdList({ + lw: 1, + controller: this.controller, + strokeWidth:5, + onRefresh: () => { + this.onRefresh() + }, + onLoad: () => { + this.initData(1) + + } + + }) + + { + ForEach(this.list, (item: ConsulList) => { + ListItem() { + ItemCompPublic({ item,isHistory:this.isHistory }) + + } + + }) + } + } + + + } + + } +} \ No newline at end of file diff --git a/features/netease/src/main/ets/components/MainPage.ets b/features/netease/src/main/ets/components/MainPage.ets new file mode 100644 index 0000000..9de5eb3 --- /dev/null +++ b/features/netease/src/main/ets/components/MainPage.ets @@ -0,0 +1,19 @@ +@Component +export struct MainPage { + @State message: string = 'Hello World'; + + build() { + Row() { + Column() { + Text(this.message) + .fontSize($r('app.float.page_text_font_size')) + .fontWeight(FontWeight.Bold) + .onClick(() => { + this.message = 'Welcome'; + }) + } + .width('100%') + } + .height('100%') + } +} diff --git a/features/netease/src/main/ets/components/PreviewPhoto.ets b/features/netease/src/main/ets/components/PreviewPhoto.ets new file mode 100644 index 0000000..73016e8 --- /dev/null +++ b/features/netease/src/main/ets/components/PreviewPhoto.ets @@ -0,0 +1,263 @@ +import { BasicConstant } from "@itcast/basic" +import { ConsultPhoto } from "../model/ConsulModel" +import { router } from "@kit.ArkUI"; +import http from '@ohos.net.http' +import fileio from '@ohos.fileio' +import prompt from '@ohos.promptAction' +import { abilityAccessCtrl, common, Permissions } from '@kit.AbilityKit'; +import { BusinessError } from '@kit.BasicServicesKit'; +import { PermissionsUtils } from '@itcast/basic'; + +@Component +export struct PreviewPhoto { + @State + imgListurl: string[]=[] + @State + imgList: ConsultPhoto[]=[] // 传入图片数组 + @State params:paramPhoto= router.getParams() as paramPhoto + @State previewIndex: number = 0 + + // 检查存储权限 + async checkStoragePermission(): Promise { + try { + const atManager = abilityAccessCtrl.createAtManager(); + const grantStatus = await atManager.checkAccessToken( + globalThis.abilityContext.applicationInfo.accessTokenId, + 'ohos.permission.WRITE_MEDIA' + ); + return grantStatus === abilityAccessCtrl.GrantStatus.PERMISSION_GRANTED; + } catch (error) { + console.error('检查权限失败:', error); + return false; + } + } + + // 申请存储权限 + async requestStoragePermission(): Promise { + try { + const context = getContext(this) as common.UIAbilityContext; + const result = await PermissionsUtils.reqPermissionsFromUser(['ohos.permission.WRITE_MEDIA'], context); + return result.grantStatus || false; + } catch (error) { + console.error('申请权限失败:', error); + return false; + } + } + + // 下载图片方法(伪代码,需根据实际API实现) + async downloadImage(url: string) { + try { + // 1. 检查权限 + const hasPermission = await this.checkStoragePermission(); + if (!hasPermission) { + // 申请权限 + const granted = await this.requestStoragePermission(); + if (!granted) { + prompt.showToast({ message: $r('app.string.netease_permission_denied_tips') }); + return; + } + } + + // 显示下载中提示 + prompt.showToast({ message: $r('app.string.netease_saving_image_tips') }); + + // 2. 下载图片 + const httpRequest = http.createHttp() + const response = await httpRequest.request(url, { + method: http.RequestMethod.GET, + expectDataType: http.HttpDataType.ARRAY_BUFFER, + connectTimeout: 30000, // 30秒连接超时 + readTimeout: 30000, // 30秒读取超时 + }) + httpRequest.destroy() + + if (response.responseCode !== 200) { + prompt.showToast({ message: $r('app.string.netease_download_failed_tips') }) + return + } + + // 3. 写入到公共图片目录 + const fileName = 'img_' + Date.now() + '.jpg' + const filePath = '/storage/media/100/local/photos/' + fileName + + try { + const fd = await fileio.open(filePath, 0o2 | 0o100) // 写入+创建 + await fileio.write(fd, new Uint8Array(response.result as ArrayBuffer)) + await fileio.close(fd) + prompt.showToast({ message: $r('app.string.netease_save_success_tips') }) + } catch (fileError) { + console.error('文件写入失败:', fileError); + prompt.showToast({ message: $r('app.string.netease_save_failed_tips') }) + } + } catch (e) { + console.error('下载图片失败:', e); + prompt.showToast({ message: $r('app.string.netease_save_error_tips') }) + } + } + + aboutToAppear(): void { + this.imgList= this.params.imgList + this.imgListurl= this.params.imgListurl + this.previewIndex=this.params.previewIndex + } + + dialog = new CustomDialogController({ + builder: SaveDialog( + { + CallBack:()=>{ + + + } + } + ), + cornerRadius: 4, + width: '70%', + }) + + build() { + RelativeContainer() { + // 遮罩层 + Stack() { + // 半透明背景 + Text().backgroundColor(Color.Black).width('100%').height('100%') + // 大图浏览 + Column({ space: 16 }) { + // 角标 + + // 可滑动大图 + Swiper() { + if(this.imgListurl.length>0) + { + ForEach(this.imgListurl, (item: string, idx: number) => { + Image(BasicConstant.urlHtml + item) + .width('100%') + // .objectFit(ImageFit.ScaleDown) + .gesture( + LongPressGesture({ + duration: 1000, // 设置长按触发时间为1秒 + repeat: true // 允许连续触发回调 + }) + .onAction((event: GestureEvent) => { + this.dialog.open() + }) + ) + + }) + } + else if(this.imgList.length>0) + { + ForEach(this.imgList, (item: ConsultPhoto, idx: number) => { + Image(BasicConstant.urlHtml + item.path) + .width('100%') + // .objectFit(ImageFit.Contain) + .gesture( + LongPressGesture({ + duration: 1000, // 设置长按触发时间为1秒 + repeat: true // 允许连续触发回调 + }) + .onAction((event: GestureEvent) => { + this.dialog.open() + }) + ) + + }) + } + + } + .indicator(false) + .loop(false) // 禁用循环滑动 + .onChange((index: number) => { + this.previewIndex = index + }) + + } + .align(Alignment.Center) + + + + } + .width('100%') + .height('100%') + .onClick(() => { + router.back() + }) + Row() + { + + if(this.imgListurl.length>0) + { + Image($r('app.media.ic_topbar_save')).width(30).height(30) + .onClick(()=>{ + this.downloadImage(BasicConstant.urlHtml + this.imgListurl[this.previewIndex]) + }) + Blank() + + Text(`${this.previewIndex + 1}/${this.imgListurl.length}`) + .fontSize(18) + .fontColor($r('app.color.top_title')) + + } + else + { + Image($r('app.media.ic_topbar_save')).width(30).height(30) + .onClick(()=>{ + this.downloadImage(BasicConstant.urlHtml + this.imgList[this.previewIndex].path) + }) + Blank() + + Text(`${this.previewIndex + 1}/${this.imgList.length}`) + .fontSize(18) + .fontColor($r('app.color.top_title')) + + } + + } + .height(30) + .width('100%') + .padding({ left:20,right:20 }) + .margin({bottom:40}) + .alignRules({bottom: { anchor: "__container__", align: VerticalAlign.Bottom }} ) + } + .width('100%') + .height('100%') + } +} + +interface paramPhoto +{ + previewIndex:number , + imgList:ConsultPhoto[] + imgListurl:string[] +} + +@CustomDialog +struct SaveDialog { + controller: CustomDialogController + CallBack: () => void = () => {}; + build() { + Column() { + Text('提示') + .fontSize(17) + .fontColor('#444444') + .padding(15) + Text('').height(1).width('100%') + .backgroundColor($r('app.color.home_gray')) + Text('保存到手机') + .fontSize(16).fontColor($r('app.color.common_gray_03')) + .padding(10).width('100%').textAlign(TextAlign.Start) + .onClick(() => { + + if (this.controller != undefined) { + this.controller.close() + this.CallBack(); + } + }) + Text('').height(1).width('100%') + .backgroundColor($r('app.color.home_gray')) + .margin({bottom:10}) + } + + .backgroundColor($r('app.color.white')) + + } +} \ No newline at end of file diff --git a/features/netease/src/main/ets/components/TabBarConsultationItems.ets b/features/netease/src/main/ets/components/TabBarConsultationItems.ets new file mode 100644 index 0000000..b142369 --- /dev/null +++ b/features/netease/src/main/ets/components/TabBarConsultationItems.ets @@ -0,0 +1,13 @@ + +import { TabBarCompModel } from '../model/TabBarCompModel' + +export const TabBarItems: TabBarCompModel[] = [ + { + + label: '快速问医生' + }, + { + + label: '多对一解惑' + } +] \ No newline at end of file diff --git a/features/netease/src/main/ets/components/TabBarItems.ets b/features/netease/src/main/ets/components/TabBarItems.ets new file mode 100644 index 0000000..fc237ea --- /dev/null +++ b/features/netease/src/main/ets/components/TabBarItems.ets @@ -0,0 +1,17 @@ + +import { TabBarCompModel } from '../model/TabBarCompModel' + +export const TabBarItems: TabBarCompModel[] = [ + { + + label: '患者消息' + }, + { + + label: '患者列表' + }, + { + + label: '随访计划' + } +] \ No newline at end of file diff --git a/features/netease/src/main/ets/model/ConsulModel.ets b/features/netease/src/main/ets/model/ConsulModel.ets new file mode 100644 index 0000000..f7a4520 --- /dev/null +++ b/features/netease/src/main/ets/model/ConsulModel.ets @@ -0,0 +1,149 @@ +export interface ConsulModel { + code:string; + data:ConsulData; + message:string; + +} +export interface ConsulModelHis { + code:string; + data:ConsulBean; + message:string; + +} + +export interface ConsulData{ + + yetDayTotalNum:number; + yetDayTotalnumEPNum:number; + consult_list:ConsulBean; +} +export interface ConsulBean{ + + totalPage:number; + list:ConsulList[]; +} +export interface ConsulList{ + + uuid:string; + patientUuid:string; + expertUuid:string; + title:string; + createDate:string; + content:string; + diseaseUuid:string; + state:number; + realName:string; + sex:number; + birthDate:string; + photo:string; + mobile:string; + diseaseName:string; + user_status:string; + patientName:string; + patientPhoto:string; +} + +export interface ConsultDetail { + code:string; + data:ConsulDetailBean; + message:string; + +} +export interface ConsulDetailBean{ + + detail:ConsultBeans; + imgList:ConsultPhoto[]; +} + +export interface ConsultBeans extends ConsulList{ + + patientName:string; + patientPhoto:string; +} + +export interface ConsultPhoto{ + + uuid:string; + path:string; + createDate:string; +} + +export interface ListInterrogationBean +{ + code:string; + data:InterrogationListBean; + message:string; +} + +export interface InterrogationListBean +{ + pages:number; + isLastPage:boolean + list:InterrogationBean[] + +} + +export interface InterrogationBean +{ + birthday:string; + answer_num:number; + your_question:string; + sex:number; + name:string; + disease_describe:string; + step1_uuid:string; + disease_name:string; + create_date:string; + user_status:number; + +} + +export interface GetInterrogationBean +{ + code:string; + data:InterrogationDataBean; + message:string; +} + +export interface InterrogationDataBean +{ + birthday:string; + imgs:string; + answer_num:number; + your_question:string; + sex:number; + name:string; + disease_describe:string; + step1_uuid:string; + disease_name:string; + create_date:string; + status:number; + user_status:string + AnswerList:AnswerListBean[] + SupplementList:SupplementListBean[] + +} + +export interface AnswerListBean +{ + note:string; + imgs:string; + answer_uuid:string; + satisfied:string; + name:string; + expert_uuid:string; + photo:string; + create_date:string; + realname:string; + hospital_name:string; + expert_status:string; + examine_status:string; +} + +export interface SupplementListBean +{ + imgs:string; + your_question:string; + disease_describe:string; + create_date:string; +} \ No newline at end of file diff --git a/features/netease/src/main/ets/model/InterrogationPatientInfoBean.ets b/features/netease/src/main/ets/model/InterrogationPatientInfoBean.ets new file mode 100644 index 0000000..3cd6ffe --- /dev/null +++ b/features/netease/src/main/ets/model/InterrogationPatientInfoBean.ets @@ -0,0 +1,28 @@ +export interface InterrogationPatientInfoBean +{ + code:string; + data:InterrogationPatientInfo; + message:string; +} + +export interface InterrogationPatientInfo +{ + birthday:string; + disease_date:string; + address:string; + regist_patient:string; + prov_id:number; + sex:number; + boolean_medication:string; + medication_info:string; + county_id:number; + whether_hbv:number; + whether_pregnant:number; + liver_status:string; + other_disease:string; + name:string; + go_hospital:number; + disease_name:string; + expected_date_of_childbirth:string; + city_id:number; +} \ No newline at end of file diff --git a/features/netease/src/main/ets/model/TabBarCompModel.ets b/features/netease/src/main/ets/model/TabBarCompModel.ets new file mode 100644 index 0000000..9aec91e --- /dev/null +++ b/features/netease/src/main/ets/model/TabBarCompModel.ets @@ -0,0 +1,5 @@ + +export class TabBarCompModel { + + label: string = '' +} \ No newline at end of file diff --git a/features/netease/src/main/ets/view/BaseInfoComp.ets b/features/netease/src/main/ets/view/BaseInfoComp.ets new file mode 100644 index 0000000..259fbdd --- /dev/null +++ b/features/netease/src/main/ets/view/BaseInfoComp.ets @@ -0,0 +1,180 @@ +import { BasicConstant, calculateExactAge, hdHttp, HdLoadingDialog,HdNav, HdResponse } from '@itcast/basic' +import { TabBarTopComp } from './TabBarTopComp'; +import { HashMap } from '@kit.ArkTS'; +import { router } from '@kit.ArkUI'; +import { BusinessError } from '@kit.BasicServicesKit'; +import { InterrogationPatientInfoBean } from '../model/InterrogationPatientInfoBean'; + + +@Component +export struct BaseInfoComp { + @State sex: number=0; + + hashMap: HashMap = new HashMap(); + @State params:Record = router.getParams() as Record; + @State name:string=''; + dialog: CustomDialogController = new CustomDialogController({ + builder: HdLoadingDialog({ message: '加载中...' }), + customStyle: true, + alignment: DialogAlignment.Center + }) + @State birthday: string='' ; + @State address: string='' ; + @State whether_hbv: string='' ; + @State whether_pregnant: string=''; + @State expected_date_of_childbirth: string=''; + + aboutToAppear() { + + this.initData() + } + + initData() + { + this.dialog.open() + this.hashMap.clear(); + this.hashMap.set('step1_uuid', this.params.uuid) + + hdHttp.httpReq(BasicConstant.InterrogationPatientInfo,this.hashMap).then(async (res: HdResponse) => { + this.dialog.close() + let json:InterrogationPatientInfoBean = JSON.parse(res+'') as InterrogationPatientInfoBean; + this.name=json.data.name+' ' + this.sex=json.data.sex + this.birthday=json.data.birthday + this.address=json.data.address + if(json.data.whether_hbv==0) + { + this.whether_hbv='无' + } + else if(json.data.whether_hbv==1) + { + this.whether_hbv='有' + } + else + { + this.whether_hbv='未知' + } + if(json.data.whether_pregnant==0) + { + this.whether_pregnant='' + } + else if(json.data.whether_pregnant==1) + { + this.whether_pregnant='无计划' + } + else if(json.data.whether_pregnant==2) + { + this.whether_pregnant='计划中' + } + else if(json.data.whether_pregnant==3) + { + this.whether_pregnant='已怀孕' + } + else if(json.data.whether_pregnant==4) + { + this.whether_pregnant='家有宝宝' + } + if(json.data.expected_date_of_childbirth!=null) + { + this.expected_date_of_childbirth=json.data.expected_date_of_childbirth + } + + + }).catch((err: BusinessError) => { + this.dialog.close() + + }) + } + + + build() { + + Column() { + + Row() + { + Text('姓名').customStyle().layoutWeight(1) + Text(this.name.substring(0,1)+'**').customStyle1() + } + .width('100%') + Text('').height(1).width('100%') + .backgroundColor($r('app.color.common_gray_border')) + Row() + { + Text('性别').customStyle().layoutWeight(1) + Text(this.sex==0?"男":"女").customStyle1() + } + .width('100%') + Text('').height(1).width('100%') + .backgroundColor($r('app.color.common_gray_border')) + Row() + { + Text('年龄').customStyle().layoutWeight(1) + Text(this.getYears(this.birthday)+'').customStyle1() + } + .width('100%') + Text('').height(1).width('100%') + .backgroundColor($r('app.color.common_gray_border')) + Row() + { + Text('地址').customStyle().layoutWeight(1) + Text(this.address).customStyle1() + } + .width('100%') + Text('').height(1).width('100%') + .backgroundColor($r('app.color.common_gray_border')) + Row() + { + Text('是否怀孕').customStyle().layoutWeight(1) + Text(this.whether_pregnant).customStyle1() + } + .width('100%') + .visibility(this.whether_pregnant==''?Visibility.None:Visibility.Visible) + Text('').height(1).width('100%') + .backgroundColor($r('app.color.common_gray_border')).visibility(this.whether_pregnant==''?Visibility.None:Visibility.Visible) + Row() + { + Text('是否怀孕').customStyle().layoutWeight(1) + Text(this.expected_date_of_childbirth).customStyle1() + } + .width('100%') + .visibility(this.expected_date_of_childbirth==''?Visibility.None:Visibility.Visible) + Text('').height(1).width('100%') + .backgroundColor($r('app.color.common_gray_border')).visibility(this.expected_date_of_childbirth==''?Visibility.None:Visibility.Visible) + Row() + { + Text('肝硬化或肝癌家族史').customStyle().layoutWeight(1) + Text(this.whether_hbv).customStyle1() + } + .width('100%') + }.width('100%') + .height('100%') + .backgroundColor(Color.White) + .padding({left:10,right:10}) + + } + getYears(birthDateStr:string): number + { + const birthDate: Date = new Date(birthDateStr); + return calculateExactAge(birthDate) + } +} + + +@Extend(Text) +function customStyle() { + + .fontColor($r('app.color.common_gray_01')) + .fontSize(16) + .padding({top:15,bottom:15}) + +} + +@Extend(Text) +function customStyle1() { + + .fontColor($r('app.color.999999')) + .fontSize(16) + + +} \ No newline at end of file diff --git a/features/netease/src/main/ets/view/ConsultationDetailComp.ets b/features/netease/src/main/ets/view/ConsultationDetailComp.ets new file mode 100644 index 0000000..2258bbe --- /dev/null +++ b/features/netease/src/main/ets/view/ConsultationDetailComp.ets @@ -0,0 +1,200 @@ + +import { authStore, BaseBean, BasicConstant, hdHttp, HdLoadingDialog, HdNav, HdResponse, + PhotoGrids, + ViewImageInfo} from '@itcast/basic' +import { HashMap } from '@kit.ArkTS'; +import { ConsultDetail, ConsultPhoto } from '../model/ConsulModel'; +import { BusinessError } from '@kit.BasicServicesKit'; +import { promptAction, router } from '@kit.ArkUI'; +import { PerfactInputSheet } from '@itcast/basic/src/main/ets/Views/PerfactInputSheet'; + + +@Component +export struct ConsultationDetailComp { + @State patientName: string='' ; + hashMap: HashMap = new HashMap(); + @State params:Record = router.getParams() as Record; + @State state: number=1 ; + @State createDate: string='' ; + @State content: string='' ; + @State diseaseName: string='' ; + @State imgList:ConsultPhoto[]=[] + + dialog: CustomDialogController = new CustomDialogController({ + builder: HdLoadingDialog({ message: '加载中...' }), + customStyle: true, + alignment: DialogAlignment.Center + }) + private custom!:CustomDialogController; + @State inputPlaceholder:string='是否确认回答?' + initDialog() { + this.custom = new CustomDialogController({ + builder:PerfactInputSheet({ + controller:this.custom, + inputTitle:'', + inputPlaceholder:this.inputPlaceholder, + style:'2', + okColor:$r('app.color.top_title'), + inputCallBack:(input: string,title:string)=>{ + this. resConsult() + + } + }), + alignment: DialogAlignment.Center, + customStyle: true, + autoCancel: false, + backgroundColor: ('rgba(0,0,0,0.5)'), + height: '100%' + }) + } + + aboutToAppear() { + this.initDialog() + this.initData() + } + + initData() + { + this.dialog.open() + this.hashMap.clear(); + this.hashMap.set('uuid', this.params.uuid) + + hdHttp.httpReq(BasicConstant.consultDetail,this.hashMap).then(async (res: HdResponse) => { + this.dialog.close() + let json:ConsultDetail = JSON.parse(res+'') as ConsultDetail; + this.patientName=json.data.detail.patientName + + this.state=json.data.detail.state + this.createDate=json.data.detail.createDate + this.content=json.data.detail.content + this.diseaseName=json.data.detail.diseaseName + this.imgList = [...json.data.imgList] + + + }).catch((err: BusinessError) => { + this.dialog.close() + + }) + } + countConsult() + { + this.dialog.open() + hdHttp.post(BasicConstant.countConsult, { + consultUuid:this.params.uuid, + expertUuid: authStore.getUser().uuid, + } as extraData).then(async (res: HdResponse) => { + this.dialog.close() + let json = JSON.parse(res+'') as Record; + let data=json.data as string + if(data!='0') + { + this.inputPlaceholder="您已回答过该患者" + data + "次公益咨询,是否确定回答?"; + } + this.custom.open() + + }).catch((err: BusinessError) => { + + }) + } + + resConsult() + { + this.dialog.open() + hdHttp.post(BasicConstant.resConsult, { + consultUuid:this.params.uuid, + expertUuid: authStore.getUser().uuid, + } as extraData).then(async (res: HdResponse) => { + this.dialog.close() + let json = JSON.parse(res+'') as BaseBean; + + if(json.code=='1') + { + promptAction.showToast({ message: '抢答成功' }) + } + else + { + promptAction.showToast({ message: json.message }) + } + + + }).catch((err: BusinessError) => { + + }) + } + build() { + + Column() { + HdNav({ title: '咨询详情', showRightIcon: false, showLeftIcon: true}) + Text(this.state==0?$r('app.string.cancellation'):this.patientName).fontSize(19).fontColor($r('app.color.top_title')).width('100%') .padding(10) + Row() + { + Text(this.diseaseName.includes("甲、乙、丙、丁")?'肝炎':this.diseaseName).fontSize(11).borderColor($r('app.color.top_title')).fontColor($r('app.color.top_title')) + .width(63).height(25).borderRadius(17).borderWidth(1).textAlign(TextAlign.Center) + Blank() + Text(this.createDate?this.createDate.length>16?this.createDate.substring(1,16):this.createDate:'') + .fontSize(15).fontColor($r('app.color.common_gray_03')).padding({left:5}) + + } + .width('100%') + .alignSelf(ItemAlign.Start) + .padding({left:10,right:10,bottom:10}) + Row() + { + Text(this.content) + .fontSize(14).fontColor($r('app.color.common_gray_03')).padding(9) + .backgroundColor($r('app.color.f6f6f6')).borderRadius(8) + .width('100%') + } + .margin({left:10,right:10,bottom:10}) + // PhotoGrids({imgList:this.imgList}) + PhotoGrids({imgList:this.changeToImg(this.imgList)}) + + Button({ type: ButtonType.Normal }){ + Text('我要回答') + } + .width('90%') + .height(53) + .position({x:'5%',y:'91%'}) + .backgroundColor('#ffffff') + .borderColor($r('app.color.main_color')) + .borderRadius(8) + .borderWidth(1) + .fontColor($r('app.color.main_color')) + .onClick(() => { + this.countConsult() + + + }) + .visibility(this.params.isHistory=='false'?Visibility.Visible:Visibility.None) + + + + } + .width('100%') + .width('100%') + + .onClick(() => { + // router.pushUrl({ + // url: 'pages/Netease/ConsultationDetailPage', + // params: { uuid: this.item.uuid} + // }); + }) + + } + + changeToImg( imgListurl:ConsultPhoto[]) + { + let imgListtmps:ViewImageInfo[]=[] + imgListurl.forEach((items: ConsultPhoto) => { + let item = {url:items.path} as ViewImageInfo + imgListtmps.push(item) + }) + return imgListtmps + + } +} + +interface extraData { + consultUuid:string, + expertUuid: string, +} \ No newline at end of file diff --git a/features/netease/src/main/ets/view/InterrogationDetailComp.ets b/features/netease/src/main/ets/view/InterrogationDetailComp.ets new file mode 100644 index 0000000..95e230a --- /dev/null +++ b/features/netease/src/main/ets/view/InterrogationDetailComp.ets @@ -0,0 +1,311 @@ + +import { authStore, BasicConstant, + calculateExactAge, + hdHttp, HdLoadingDialog, HdNav, HdResponse, + PhotoGrids, + ViewImageInfo} from '@itcast/basic' +import { HashMap } from '@kit.ArkTS'; +import { GetInterrogationBean, ConsultPhoto, SupplementListBean, AnswerListBean } from '../model/ConsulModel'; +import { BusinessError } from '@kit.BasicServicesKit'; +import { promptAction, router } from '@kit.ArkUI'; + + + +@Component +export struct InterrogationDetailComp { + @State patientName: string='' ; + hashMap: HashMap = new HashMap(); + @State params:Record = router.getParams() as Record; + @State state: string='1' ; + @State createDate: string='' ; + @State content: string='' ; + @State diseaseName: string='' ; + @State imgListurl:string[]=[] + @State sex:number=0 + @State birthday: string='' ; + @State supplementList:SupplementListBean[]=[] + @State AnswerList:AnswerListBean[]=[] + @State flag_more:boolean=true + scroller = new Scroller() + dialog: CustomDialogController = new CustomDialogController({ + builder: HdLoadingDialog({ message: '加载中...' }), + customStyle: true, + alignment: DialogAlignment.Center + }) + + + aboutToAppear() { + + this.initData() + } + + initData() + { + this.dialog.open() + this.hashMap.clear(); + this.hashMap.set('uuid', this.params.uuid) + + hdHttp.httpReq(BasicConstant.getInterrogation,this.hashMap).then(async (res: HdResponse) => { + this.dialog.close() + let json:GetInterrogationBean = JSON.parse(res+'') as GetInterrogationBean; + this.patientName=json.data.name + this.state=json.data.user_status + this.sex=json.data.sex + this.birthday=json.data.birthday + this.createDate=json.data.create_date + this.content=json.data.disease_describe + this.diseaseName=json.data.disease_name + if(json.data.imgs!=null) + { + this.imgListurl = [...json.data.imgs.split(",")] + + } + this.supplementList=json.data.SupplementList + this.AnswerList=json.data.AnswerList + + + + }).catch((err: BusinessError) => { + this.dialog.close() + + }) + } + + + build() { + + Column() { + HdNav({ title: '问题详情', showRightIcon: false, showLeftIcon: true}) + + Scroll(this.scroller) { + Column() { + Row() { + Text() { + Span(this.state == '0' ? $r('app.string.cancellation') : this.patientName.substring(0, 1) + '**') + .fontColor($r('app.color.top_title')) + Span(this.sex == 0 ? "(男 " + this.getYears(this.birthday) + "岁)" : + "(女 " + this.getYears(this.birthday) + "岁)").fontColor($r('app.color.common_gray_03')) + + }.fontSize(19).padding({ left: 10, right: 3 }).textAlign(TextAlign.Start) + + Image($r('app.media.iv_zixun')).width(91).height(17) + .onClick(() => { + router.pushUrl({ + url: 'pages/Netease/PatientSimplyPage', + params: { uuid: this.params.uuid } + }); + }) + + } + .padding({ top: 10, bottom: 10 }) + .alignSelf(ItemAlign.Start) + + Row() { + Text(this.diseaseName.includes("甲、乙、丙、丁") ? '肝炎' : this.diseaseName) + .fontSize(11) + .borderColor($r('app.color.top_title')) + .fontColor($r('app.color.top_title')) + .width(63) + .height(25) + .borderRadius(17) + .borderWidth(1) + .textAlign(TextAlign.Center) + Blank() + Text(this.createDate ? this.createDate.length > 10 ? this.createDate.substring(0, 10) : this.createDate : + '') + .fontSize(15).fontColor($r('app.color.common_gray_03')).padding({ left: 5 }) + + } + .width('100%') + .alignSelf(ItemAlign.Start) + .padding({ left: 10, right: 10, bottom: 10 }) + + Row() { + Text(this.content) + .fontSize(14) + .fontColor($r('app.color.common_gray_03')) + .padding(9) + .backgroundColor($r('app.color.f6f6f6')) + .borderRadius(8) + .width('100%') + } + .margin({ left: 10, right: 10, bottom: 10 }) + + PhotoGrids({ imgList: this.changeToImg(this.imgListurl) }) + Row() + { + Text(this.flag_more?'查看更多':'收起').fontSize(14).fontColor($r('app.color.top_title')) + Image(this.flag_more?$r('app.media.icon_down'):$r('app.media.icon_up')).width(8).height(4) + } + .margin(10) + .onClick(()=>{ + this.flag_more=!this.flag_more + }) + .visibility(this.supplementList.length&&this.AnswerList.length>0?Visibility.Visible:Visibility.None) + List() { + ForEach(this.supplementList, (item: SupplementListBean,index:number) => { + ListItem() { + Column() { + Row() + { + Text('信息补充').width(54).height(30).fontColor(Color.White).fontSize(11) + .textAlign(TextAlign.Center) + .padding({bottom:5}) + .backgroundImage($r('app.media.complete_question')) + .backgroundImageSize(ImageSize.FILL) + Blank() + Text(item.create_date.split(" ")[0]).fontColor($r('app.color.common_gray_03')) + } + .width('100%') + .padding(10) + Text(item.disease_describe) + .fontSize(14).fontColor($r('app.color.common_gray_03')).padding(9) + .backgroundColor($r('app.color.f6f6f6')).borderRadius(8) + .width('calc(100% - 20vp)') + .margin({bottom:10}) + PhotoGrids({ imgList: this.changeToImg(item.imgs?[...item.imgs.split(",") ]:[]) }) + // PhotoGridUrl({ imgListurl: item.imgs?[...item.imgs.split(",") ]:[] }) + } + } + }) + + } .visibility(this.flag_more?Visibility.None:Visibility.Visible) + Text('').width('100%').height(10).backgroundColor($r('app.color.efefef')) + .visibility(this.AnswerList.length>0?Visibility.Visible:Visibility.None) + Text('医生回答') + .fontSize(18).fontColor($r('app.color.top_title')) + .width('calc(100% - 20vp)') + .margin({bottom:10,top:10}) + .visibility(this.AnswerList.length>0?Visibility.Visible:Visibility.None) + Text('').width('100%').height(0.5).backgroundColor($r('app.color.f6f6f6')) + .visibility(this.AnswerList.length>0?Visibility.Visible:Visibility.None) + List() { + ForEach(this.AnswerList, (item: AnswerListBean,index:number) => { + ListItem() { + Column() { + Row() + { + Image(BasicConstant.urlHtml+item.photo).width(45).height(45).borderRadius(6) + Column() + { + Row() { + Text() + { + if(item.expert_status=='0') + { + Span($r('app.string.cancellation')).fontColor($r('app.color.top_title')).fontSize(18) + } + else + { + Span(item.realname.length>5?item.realname.substring(0,5)+"...":item.realname).fontColor($r('app.color.top_title')).fontSize(18) + } + Span('|').fontColor($r('app.color.common_gray_03')).fontSize(17).padding({left:5,right:5}).visibility(item.name=='其他'?Visibility.Hidden:Visibility.Visible) + Span(item.name).fontColor($r('app.color.common_gray_03')).fontSize(17).visibility(item.name=='其他'?Visibility.Hidden:Visibility.Visible) + }.layoutWeight(1) + Text('满意答复').fontSize(13).padding({left:9,right:9,bottom:3,top:3}) + .backgroundColor('#ffa800').borderRadius(17).fontColor(Color.White).visibility(item.satisfied=='1'?Visibility.Visible:Visibility.None) + }.width('100%') + Row() { + Text(item.hospital_name).fontColor($r('app.color.common_gray_03')).fontSize(14). + visibility(item.hospital_name=='其他医院'?Visibility.Hidden:Visibility.Visible) + .layoutWeight(1) + Text(item.create_date).fontColor($r('app.color.common_gray_03')).fontSize(16) + } + .margin({top:5}) + .width('100%') + }.layoutWeight(1) + .margin({left:10}) + + } + .width('100%') + .padding(10) + Text(item.note) + .fontSize(14).fontColor($r('app.color.common_gray_03')).padding(9) + .backgroundColor($r('app.color.f6f6f6')).borderRadius(8) + .width('calc(100% - 20vp)') + .margin({bottom:10}) + PhotoGrids({ imgList: this.changeToImg(item.imgs?[...item.imgs.split(",") ]:[]) }) + + } + } + }) + } + .divider({ + strokeWidth: 5, // 线宽 + color:$r('app.color.f6f6f6'), // 颜色 + }) + + + } + + } + .width('100%') + .layoutWeight(1) + .align(Alignment.TopStart) + + + Column() + { + Text() + { + Span('特别声明:').fontColor($r('app.color.top_title')) + Span('答案仅为医生个人经验或建议分享,不能视为诊断依据,如有诊疗需求,请务必前往正规医院就诊。').fontColor($r('app.color.common_gray_03')) + } + .fontSize(14).padding(9).margin({left:10,right:10,top:10,bottom:10}) + .backgroundColor($r('app.color.f6f6f6')).borderRadius(8) + + Button({ type: ButtonType.Normal }){ + + Text(this.params.isHistory =='false'?'我要回答':'我要编辑') + } + .width('100%') + .height(53) + .backgroundColor($r('app.color.patient_theme')) + .fontColor(Color.White) + .onClick(() => { + + router.pushUrl({ + url: 'pages/Netease/MyOpinionPage', + // params: { uuid: this.item.uuid} + }); + + }) + } + .backgroundColor(Color.White) + .width('100%') + + + + + + } + .width('100%') + .width('100%') + + .onClick(() => { + // router.pushUrl({ + // url: 'pages/Netease/ConsultationDetailPage', + // params: { uuid: this.item.uuid} + // }); + }) + + } + getYears(birthDateStr:string): number + { + const birthDate: Date = new Date(birthDateStr); + return calculateExactAge(birthDate) + } + + changeToImg( imgListurl:string[]) + { + let imgListtmps:ViewImageInfo[]=[] + imgListurl.forEach((url: string) => { + let item = {url:url} as ViewImageInfo + imgListtmps.push(item) + }) + return imgListtmps + + } + +} + diff --git a/features/netease/src/main/ets/view/ManyForOneComp.ets b/features/netease/src/main/ets/view/ManyForOneComp.ets new file mode 100644 index 0000000..796fc35 --- /dev/null +++ b/features/netease/src/main/ets/view/ManyForOneComp.ets @@ -0,0 +1,27 @@ +import { BasicConstant,HdNav } from '@itcast/basic' +import { TabBarTopComp } from './TabBarTopComp'; + + +@Component +export struct ManyForOneComp { + @State + @Watch('onChangeIndex') + activeIndex: number = 0 + @State type: number=1 + + onChangeIndex() { + } + + build() { + + Column() { + + + TabBarTopComp({activeIndex:this.activeIndex,type:this.type}); + + }.width('100%') + .height('100%') + .backgroundColor(Color.White) + + } +} \ No newline at end of file diff --git a/features/netease/src/main/ets/view/MessageComp.ets b/features/netease/src/main/ets/view/MessageComp.ets new file mode 100644 index 0000000..43e6d59 --- /dev/null +++ b/features/netease/src/main/ets/view/MessageComp.ets @@ -0,0 +1,85 @@ +import { BasicConstant,HdNav } from '@itcast/basic' +import { ChatKitClient, ContactRepo, IMKitConfigCenter, + LocalConversationRepo } from '@nimkit/chatkit'; +import { ChatKitConfig } from '@nimkit/chatkit_ui/src/main/ets/ChatKitConfig'; +import { CommonConstants } from '@nimkit/common'; +import { LocalConversationPage } from '@nimkit/localconversationkit_ui'; +import { V2NIMFriendAddApplication } from '@nimsdk/base'; + +@ComponentV2 +export struct MessageComp { + + @Param pathStack: NavPathStack = new NavPathStack() + @Param onUreadMessageChange?: (unreadCount?: number) => void = undefined + + loadUnreadApplication = async () => { + + try { + const unreadCount = await ContactRepo.getAddApplicationUnreadCount() + + } catch (err) { + console.log(err) + } + } + + + //获取会话列表未读数 + loadUnreadMessageCount = () => { + let unreadCount = 0 + + unreadCount = LocalConversationRepo.getTotalUnreadCount() ?? 0 + + } + // 加载配置信息 + loadConfig = () => { + // let readOrOpen: boolean = AppStorage.get(CommonConstants.KEY_SETTING_MESSAGE_READ_OR) ?? true + ChatKitConfig.messageReadState = true + + } + + async aboutToAppear(): Promise { + + ChatKitClient.nim.localConversationService?.on('onSyncFinished', + async () => { + //同步完成拉一次 + ChatKitClient.logger?.debug(`onSyncFinished`) + + } + ) + ChatKitClient.nim.friendService?.on('onFriendAddApplication', async (application: V2NIMFriendAddApplication) => { + await this.loadUnreadApplication() + }) + try { + await this.loadUnreadApplication() + } catch (err) { + console.log(err) + } + this.loadConfig() + this.loadUnreadMessageCount() + } + + + + build() { + // Navigation(this.pathStack) { + Column() { + HdNav({ title: '患者消息', showRightIcon: true, showLeftIcon: true,showRightText:false,rightIcon:$r('app.media.selected_hospital_ws'),rightItemAction:()=>{ + // router.pushUrl({ + // url:'pages/SearchPage/VideoSearchPage', + // params:{'pageName':'视频'} + // }) + }}) + LocalConversationPage({ + pathStack: this.pathStack, + onUreadMessageChange: this.onUreadMessageChange, + + }) + + }.width('100%') + .height('100%') + .backgroundColor($r('app.color.top_bg')) + // } + // .mode(NavigationMode.Auto) + // .hideTitleBar(true) + } +} \ No newline at end of file diff --git a/features/netease/src/main/ets/view/MyOpinionComp.ets b/features/netease/src/main/ets/view/MyOpinionComp.ets new file mode 100644 index 0000000..87ed401 --- /dev/null +++ b/features/netease/src/main/ets/view/MyOpinionComp.ets @@ -0,0 +1,91 @@ +import { ChangePhotoGrids, HdNav, ViewImageInfo } from "@itcast/basic" +import { PhotoActionSheet } from '@itcast/basic' + +@Component +export struct MyOpinionComp { + @State photos: string[] = [] + @State previewIndex: number = -1 + @State maxSelectNumber: number = 6 + private photoSheetDialog!: CustomDialogController; + @State + @Watch('onRemoveImg') + removeImg: boolean=false + + @State + @Watch('onAddImg') + addImg: boolean=false + + @State removeIndex: number=0 + onAddImg() + { + this.photoSheetDialog.open() + } + onRemoveImg() + { + this.photos.splice(this.removeIndex, 1) + this.maxSelectNumber = this.maxSelectNumber - this.photos.length; + } + private initPhotoDialog() { + this.photoSheetDialog = new CustomDialogController({ + builder: PhotoActionSheet({ + controller: this.photoSheetDialog, + maxSelectNumber:this.maxSelectNumber, + // 修改为支持多选 + onPhotoSelected: async (uris: string[] | string) => { + let selectedUris: string[] = []; + if (Array.isArray(uris)) { + selectedUris = uris; + } else if (typeof uris === 'string') { + selectedUris = [uris]; + } + + this.photos.push(...selectedUris); + this.maxSelectNumber = this.maxSelectNumber - this.photos.length; + + + } + // onPhotoSelected: async (uri: string) => { + // if (uri && this.photos.length < 9) { + // this.photos.push(uri) + // } + // // this.photoPath = uri; + // // this.base64Stringphoto = await ChangeUtil.convertUriToBase64(uri); + // } + }), + alignment: DialogAlignment.Bottom, + customStyle: true, + autoCancel: false, + backgroundColor: ('rgba(0,0,0,0.5)'), + height: '100%' + }); + } + aboutToAppear(): void { + this.initPhotoDialog() + } + + + build() { + Column() { + HdNav({ title: '我的意见', showRightIcon: false, showLeftIcon: true }) + + ChangePhotoGrids({imgList:this.changeToImg(this.photos),maxSelectNumber:6 + ,addImg:this.addImg,removeImg:this.removeImg,removeIndex:this.removeIndex}) + .backgroundColor(Color.Red) + + + } + .height('100%') + .width('100%') + } + + changeToImg( imgListurl:string[]) + { + let imgListtmps:ViewImageInfo[]=[] + imgListurl.forEach((url: string) => { + let item = {uri:url} as ViewImageInfo + imgListtmps.push(item) + }) + return imgListtmps + + } +} \ No newline at end of file diff --git a/features/netease/src/main/ets/view/PatientSimplyComp.ets b/features/netease/src/main/ets/view/PatientSimplyComp.ets new file mode 100644 index 0000000..f2268d2 --- /dev/null +++ b/features/netease/src/main/ets/view/PatientSimplyComp.ets @@ -0,0 +1,88 @@ +import { BasicConstant,HdNav } from '@itcast/basic' +import { TabBarCompModel } from '../model/TabBarCompModel' +import { TabBarTopComp } from '../view/TabBarTopComp' +import { BaseInfoComp } from './BaseInfoComp' +import { medicalHistoryComp } from './medicalHistoryComp' + +@Component +export struct PatientSimplyComp { + @StorageProp('bottomHeight') + bottomHeight: number = 0 + @State activeIndex: number=0 + + + aboutToAppear() { + + } + + + @Builder + TabBarBuilder(item: TabBarCompModel, index: number) { + Row() { + Text(item.label) + .fontSize(16) + .fontColor(this.activeIndex === index ? $r('app.color.top_title'):$r('app.color.common_gray_03') ) + .animation({ duration: 300 }) + .textAlign(TextAlign.Center) + .layoutWeight(1) + if (index < TabBarItems.length - 1) { + // 竖线 + Text('|').fontColor($r('app.color.common_gray_02')) // 可选:左右留点间距 + + } + } + } + + build() { + + Column() + { + HdNav({ title: '患者信息', showRightIcon: false, showLeftIcon: true }) + Tabs({ + index: this.activeIndex + }) { + ForEach(TabBarItems, (item: TabBarCompModel, index: number) => { + TabContent() { + if (this.activeIndex==0) + { + BaseInfoComp() + + } + else + { + medicalHistoryComp() + + } + + } + .tabBar(this.TabBarBuilder(item, index)) + + + }) + } + .layoutWeight(1) + .divider({ strokeWidth:"5vp", color: $r('app.color.common_gray_border') }) + .barPosition(BarPosition.Start) + .barHeight(50) + .scrollable(false) + .onTabBarClick((index) => { + this.activeIndex = index + + + }) + } + + + + } +} +export const TabBarItems: TabBarCompModel[] = [ + { + + label: '基本资料' + }, + { + + label: '病史信息' + } +] \ No newline at end of file diff --git a/features/netease/src/main/ets/view/QuictDoctorComp.ets b/features/netease/src/main/ets/view/QuictDoctorComp.ets new file mode 100644 index 0000000..8bb98b0 --- /dev/null +++ b/features/netease/src/main/ets/view/QuictDoctorComp.ets @@ -0,0 +1,27 @@ +import { BasicConstant,HdNav } from '@itcast/basic' +import { TabBarTopComp } from '../view/TabBarTopComp' + +@Component +export struct QuictDoctorComp { + @State + @Watch('onChangeIndex') + activeIndex: number = 0 + @State type: number=0 + + onChangeIndex() { + } + build() { + + Column() { + + TabBarTopComp({activeIndex:this.activeIndex,type:this.type}); + + + + + }.width('100%') + .height('100%') + + + } +} \ No newline at end of file diff --git a/features/netease/src/main/ets/view/TabBarComp.ets b/features/netease/src/main/ets/view/TabBarComp.ets new file mode 100644 index 0000000..1374724 --- /dev/null +++ b/features/netease/src/main/ets/view/TabBarComp.ets @@ -0,0 +1,56 @@ +import { TabBarCompModel } from '../model/TabBarCompModel' +import { TabBarItems } from '../components/TabBarItems' +import { BasicConstant } from '@itcast/basic' +import { MessageComp } from '../view/MessageComp' + +@Component +export struct TabBarComp { + pathStack: NavPathStack = new NavPathStack() + @StorageProp('bottomHeight') + bottomHeight: number = 0 + @Link + activeIndex: number + + aboutToAppear() { + + } + + + @Builder + TabBarBuilder(item: TabBarCompModel, index: number) { + Column({ space: BasicConstant.SPACE_SM }) { + Text(item.label) + .fontSize(16) + .fontColor(this.activeIndex === index ? $r('app.color.top_title'):$r('app.color.common_gray_01') ) + .animation({ duration: 300 }) + } + } + + build() { + // Navigation(this.pathStack) { + Tabs({ + index: this.activeIndex + }) { + ForEach(TabBarItems, (item: TabBarCompModel, index: number) => { + TabContent() { + if (index === 0) MessageComp({ pathStack: this.pathStack }) + // else if (index === 1) VideoGandan() + // else if (index === 2) MyHomePage() + + } + .tabBar(this.TabBarBuilder(item, index)) + .expandSafeArea([SafeAreaType.SYSTEM], [SafeAreaEdge.BOTTOM]) + }) + } + .divider({ strokeWidth: $r('app.float.common_border_width'), color: $r('app.color.common_gray_border') }) + .barPosition(BarPosition.End) + .barHeight(50) + .scrollable(false) + .margin({ bottom: this.bottomHeight }) + .onTabBarClick((index) => { + this.activeIndex = index + }) + // }.mode(NavigationMode.Auto) + // .hideTitleBar(true) + } +} \ No newline at end of file diff --git a/features/netease/src/main/ets/view/TabBarConsultationComp.ets b/features/netease/src/main/ets/view/TabBarConsultationComp.ets new file mode 100644 index 0000000..70be375 --- /dev/null +++ b/features/netease/src/main/ets/view/TabBarConsultationComp.ets @@ -0,0 +1,72 @@ +import { TabBarCompModel } from '../model/TabBarCompModel' +import { TabBarItems } from '../components/TabBarConsultationItems' +import { BasicConstant,HdNav } from '@itcast/basic' +import { QuictDoctorComp } from '../view/QuictDoctorComp' +import { ManyForOneComp } from '../view/ManyForOneComp' + +@Component +export struct TabBarConsultationComp { + + @StorageProp('bottomHeight') + bottomHeight: number = 0 + @Link activeIndex: number + + aboutToAppear() { + + } + + + @Builder + TabBarBuilder(item: TabBarCompModel, index: number) { + Column({ space: BasicConstant.SPACE_SM }) { + Text(item.label) + .fontSize(16) + .fontColor(this.activeIndex === index ? Color.White:$r('app.color.common_gray_03') ) + .backgroundColor(this.activeIndex === index ? $r('app.color.top_title'):Color.White) + .textAlign(TextAlign.Center) + .width('100%') + .height(49) + .animation({ duration: 300 }) + } + } + + build() { + + Column() + { + HdNav({ title: '公益咨询', showLeftIcon: true, showRightIcon: false}) + Tabs({ + index: this.activeIndex + }) { + ForEach(TabBarItems, (item: TabBarCompModel, index: number) => { + TabContent() { + if (index === 0) + { + QuictDoctorComp() + } + else if(index === 1) + { + ManyForOneComp() + } + + } + .tabBar(this.TabBarBuilder(item, index)) + .expandSafeArea([SafeAreaType.SYSTEM], [SafeAreaEdge.BOTTOM]) + }) + } + .layoutWeight(1) + .divider({ strokeWidth: $r('app.float.common_border_width'), color: $r('app.color.common_gray_border') }) + .barPosition(BarPosition.End) + .barHeight(50) + .scrollable(false) + .margin({ bottom: this.bottomHeight }) + .onTabBarClick((index) => { + this.activeIndex = index + }) + } + .width('100%') + .height('100%') + + + } +} \ No newline at end of file diff --git a/features/netease/src/main/ets/view/TabBarTopComp.ets b/features/netease/src/main/ets/view/TabBarTopComp.ets new file mode 100644 index 0000000..ebcfbcd --- /dev/null +++ b/features/netease/src/main/ets/view/TabBarTopComp.ets @@ -0,0 +1,97 @@ +import { TabBarCompModel } from '../model/TabBarCompModel' +import { BasicConstant,HdNav } from '@itcast/basic' +import { ListCompPublic } from '../components/ListCompPublic' +import { ListCompMany } from '../components/ListCompMany' + +@Component +export struct TabBarTopComp { + + @StorageProp('bottomHeight') + bottomHeight: number = 0 + @Link activeIndex: number + + @Link type:number //type=0是快速问医生,type=1是 多对一解惑 + @State isHistory:boolean = false;//是否是我已回答 + aboutToAppear() { + + } + + + @Builder + TabBarBuilder(item: TabBarCompModel, index: number) { + Row() { + Text(item.label) + .fontSize(16) + .fontColor(this.activeIndex === index ? $r('app.color.top_title'):$r('app.color.common_gray_03') ) + .animation({ duration: 300 }) + .textAlign(TextAlign.Center) + .layoutWeight(1) + if (index < TabBarItems.length - 1) { + // 竖线 + Text('|').fontColor($r('app.color.common_gray_02')) // 可选:左右留点间距 + + } + } + } + + build() { + + Column() + { + + Tabs({ + index: this.activeIndex + }) { + ForEach(TabBarItems, (item: TabBarCompModel, index: number) => { + TabContent() { + if (this.type==0) + { + ListCompPublic({isHistory:this.isHistory}) + + } + else if(this.type==1) + { + ListCompMany({isHistory:this.isHistory}) + + } + + } + .tabBar(this.TabBarBuilder(item, index)) + + + }) + } + .layoutWeight(1) + .divider({ strokeWidth: $r('app.float.common_border_width'), color: $r('app.color.common_gray_border') }) + .barPosition(BarPosition.Start) + .barHeight(50) + .scrollable(false) + .onTabBarClick((index) => { + this.activeIndex = index + if(this.activeIndex === 0) + { + this.isHistory=false + } + else + { + this.isHistory=true + } + + }) + } + + + + } +} + +export const TabBarItems: TabBarCompModel[] = [ + { + + label: '新的咨询' + }, + { + + label: '我已回答' + } +] \ No newline at end of file diff --git a/features/netease/src/main/ets/view/medicalHistoryComp.ets b/features/netease/src/main/ets/view/medicalHistoryComp.ets new file mode 100644 index 0000000..8ce36b1 --- /dev/null +++ b/features/netease/src/main/ets/view/medicalHistoryComp.ets @@ -0,0 +1,176 @@ +import { BasicConstant, calculateExactAge, hdHttp, HdLoadingDialog,HdNav, HdResponse } from '@itcast/basic' +import { TabBarTopComp } from './TabBarTopComp'; +import { HashMap } from '@kit.ArkTS'; +import { router } from '@kit.ArkUI'; +import { BusinessError } from '@kit.BasicServicesKit'; +import { InterrogationPatientInfoBean } from '../model/InterrogationPatientInfoBean'; + + +@Component +export struct medicalHistoryComp { + + + hashMap: HashMap = new HashMap(); + @State params:Record = router.getParams() as Record; + + dialog: CustomDialogController = new CustomDialogController({ + builder: HdLoadingDialog({ message: '加载中...' }), + customStyle: true, + alignment: DialogAlignment.Center + }) + @State go_hospital: string='' ; + @State disease_date: string='' ; + @State liver_status: string='' ; + @State medication: string='' ; + @State Medication_info: string=''; + @State other_disease: string=''; + @State disease: string[]=[]; + aboutToAppear() { + + this.initData() + } + + initData() + { + this.dialog.open() + this.hashMap.clear(); + this.hashMap.set('step1_uuid', this.params.uuid) + + hdHttp.httpReq(BasicConstant.InterrogationPatientInfo,this.hashMap).then(async (res: HdResponse) => { + this.dialog.close() + let json:InterrogationPatientInfoBean = JSON.parse(res+'') as InterrogationPatientInfoBean; + if(json.data.go_hospital==0) + { + this.go_hospital='否' + } + else + { + this.go_hospital='是' + } + + this.disease_date=json.data.disease_date + this.liver_status=json.data.liver_status + this.medication=json.data.boolean_medication + + if(json.data.medication_info!=null) + { + this.Medication_info=json.data.medication_info + } + + if(json.data.other_disease!=null) + { + this.other_disease=json.data.other_disease + this.disease=this.other_disease.split(",") + + } + + + }).catch((err: BusinessError) => { + this.dialog.close() + + }) + } + + + build() { + + Column() { + + Row() + { + Text('前往医院就诊该疾病情况').customStyle().layoutWeight(1) + Text(this.go_hospital).customStyle1() + } + .width('100%') + Text('').height(1).width('100%') + .backgroundColor($r('app.color.common_gray_border')) + Row() + { + Text('患病时间').customStyle().layoutWeight(1) + Text(this.disease_date).customStyle1() + } + .width('100%') + Text('').height(1).width('100%') + .backgroundColor($r('app.color.common_gray_border')) + Row() + { + Text('目前肝脏状态').customStyle().layoutWeight(1) + Text(this.liver_status).customStyle1() + } + .width('100%') + Text('').height(1).width('100%') + .backgroundColor($r('app.color.common_gray_border')) + Row() + { + Text('当前服用肝病用药情况').customStyle().layoutWeight(1) + Text(this.medication).customStyle1() + } + .width('100%') + Text('').height(1).width('100%') + .backgroundColor($r('app.color.common_gray_border')) + Column() + { + Text('当前服用的肝病药物及服用时长').customStyle().width('100%').textAlign(TextAlign.Start) + Text(this.Medication_info) + .fontSize(14).fontColor($r('app.color.common_gray_03')).padding(9).margin({bottom:10}) + .backgroundColor($r('app.color.f6f6f6')).borderRadius(8) + .width('100%') + } + .width('100%') + .visibility(this.Medication_info==''?Visibility.None:Visibility.Visible) + Text('').height(1).width('100%') + .backgroundColor($r('app.color.common_gray_border')).visibility(this.Medication_info==''?Visibility.None:Visibility.Visible) + Column() + { + Text('是否合并其他慢性疾病').fontColor($r('app.color.common_gray_01')) + .fontSize(16) + .padding({top:15,bottom:5}).width('100%').textAlign(TextAlign.Start) + Flex({ direction: FlexDirection.Row, wrap: FlexWrap.Wrap}) { + ForEach(this.disease, + (item: string) => { + Text(item) + .fontSize(11).borderColor($r('app.color.top_title')).fontColor($r('app.color.top_title')) + .height(25).borderRadius(17).borderWidth(1).margin({left:10}) + .padding({left:10,right:10}) + .margin({top:10,left:10,right:10}) + + }) + } .width('100%') + + + + + } + .width('100%') + .visibility(this.other_disease==''?Visibility.None:Visibility.Visible) + + }.width('100%') + .height('100%') + .backgroundColor(Color.White) + .padding({left:10,right:10}) + + } + getYears(birthDateStr:string): number + { + const birthDate: Date = new Date(birthDateStr); + return calculateExactAge(birthDate) + } +} + + +@Extend(Text) +function customStyle() { + + .fontColor($r('app.color.common_gray_01')) + .fontSize(16) + .padding({top:15,bottom:15}) + +} + +@Extend(Text) +function customStyle1() { + + .fontColor($r('app.color.999999')) + .fontSize(16) + +} \ No newline at end of file diff --git a/features/netease/src/main/module.json5 b/features/netease/src/main/module.json5 new file mode 100644 index 0000000..6de4581 --- /dev/null +++ b/features/netease/src/main/module.json5 @@ -0,0 +1,33 @@ +{ + "module": { + "name": "netease", + "type": "har", + "deviceTypes": [ + "default", + "tablet", + "2in1" + ], + "requestPermissions": [ + { + "name": "ohos.permission.WRITE_MEDIA", + "reason": "$string:netease_permission_write_media_desc", + "usedScene": { + "abilities": [ + "FormAbility" + ], + "when": "always" + } + }, + { + "name": "ohos.permission.READ_MEDIA", + "reason": "$string:netease_permission_read_media_desc", + "usedScene": { + "abilities": [ + "FormAbility" + ], + "when": "always" + } + } + ] + } +} diff --git a/features/netease/src/main/resources/base/element/float.json b/features/netease/src/main/resources/base/element/float.json new file mode 100644 index 0000000..33ea223 --- /dev/null +++ b/features/netease/src/main/resources/base/element/float.json @@ -0,0 +1,8 @@ +{ + "float": [ + { + "name": "page_text_font_size", + "value": "50fp" + } + ] +} diff --git a/features/netease/src/main/resources/base/element/string.json b/features/netease/src/main/resources/base/element/string.json new file mode 100644 index 0000000..c08242d --- /dev/null +++ b/features/netease/src/main/resources/base/element/string.json @@ -0,0 +1,40 @@ +{ + "string": [ + { + "name": "page_show", + "value": "page from package" + }, + { + "name": "netease_permission_write_media_desc", + "value": "用于保存图片到相册" + }, + { + "name": "netease_permission_read_media_desc", + "value": "用于读取相册中的图片" + }, + { + "name": "netease_permission_denied_tips", + "value": "需要存储权限才能保存图片,请在设置中开启权限" + }, + { + "name": "netease_saving_image_tips", + "value": "正在保存图片..." + }, + { + "name": "netease_download_failed_tips", + "value": "图片下载失败,请检查网络连接" + }, + { + "name": "netease_save_success_tips", + "value": "图片已保存到相册" + }, + { + "name": "netease_save_failed_tips", + "value": "保存失败,请检查存储空间" + }, + { + "name": "netease_save_error_tips", + "value": "保存失败,请稍后重试" + } + ] +} diff --git a/features/netease/src/main/resources/base/media/complete_question.png b/features/netease/src/main/resources/base/media/complete_question.png new file mode 100644 index 0000000000000000000000000000000000000000..52ddb09b2a8ad63024d24823d9c4af7cddd4342c GIT binary patch literal 1312 zcmeAS@N?(olHy`uVBq!ia0vp^*+6W`!3HD^e_s6nq$EpRBT9nv(@M${i&7aJQ}UBi z6+Ckj(^G>|6H_V+Po~;1FfglShD4M^`1)8S=jZArg4F0$^BXQ!4Z zB&DWj=GiK}-@RW+Av48RDcsc8z_-9TH6zobswg$M$}c3jDm&RSMakYy!KT6rXh3di zNuokUZcbjYRfVk**jy_h8zii+qySb@l5ML5aa4qFfP!;=QL2Keo|$g4p|OR6xuu?= zsilRHiH?GifuWhcfu+8oiLQa6m4T&|fuRBvC;@FNN=dT{a&d#&1?1T(Wt5Z@Sn2DR zmzV368|&p4rRy77T3YHG80i}s=>k>g7FXt#Bv$C=6)VF`a7isrF3Kz@$;{7F0GXJW zlwVq6s|0i@#0$9vaAWg|p}_ zb#pW{a5gtJcd~%#b;(aI%}vcKf$2>_=rzHq7nB@w3xGDeq!wkCrKY$Q<>xAZy=|3= z+bxDT&4cPq!R;0!oO<dK}gn%gs#DphZAP1iKQ}ci+z6hAKA3472XJBBQ z;OXKRQgQ3e9A7V|L8}1{a6Q_G^`QRkYb!n4J3YS@^nT5ZULzLWvLJQitTzHpX%qdL9?W+;$hPs^CkGt` zv5gH84mwGUKm34$ao9|SirGGwi=7PRiU R8V)M6JYD@<);T3K0RSTY)N}v< literal 0 HcmV?d00001 diff --git a/features/netease/src/main/resources/base/media/consult_background.png b/features/netease/src/main/resources/base/media/consult_background.png new file mode 100644 index 0000000000000000000000000000000000000000..921e4e8cd7090c2f1114f12b76463eb6256d0236 GIT binary patch literal 27798 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 literal 0 HcmV?d00001 diff --git a/features/netease/src/main/resources/base/media/consult_zero.png b/features/netease/src/main/resources/base/media/consult_zero.png new file mode 100644 index 0000000000000000000000000000000000000000..aac73c66fea37e48fa148fc971bf8efd933e536e GIT binary patch literal 2842 zcmaJ@c{r4N8`h!>$&w<5GseEoj+xI8W`@Z+vbPyC!whCI3r2@imaL8JI<}BgUkf@% z9cekoh>$2zQOZ~fSw`tY_30a(>U@8EeeZR>?{B&8`+n}{_dLJrdNX~zT$L5I73JjQ zl!W1wgZ3oSPhp;)kVAv`(s*nEmm(`%xWRfT4#tH`BlFo@KQ=r1>nZxs*?cyS z&gOtzTtKFQ3>K9g$20p3_w>XNSv)?OMWGRKSg=gMn!%uAP)Mj93T6Yv*`V++7~U35 zaB*^mJHz1!C>)8mbNw6kY*6dtaR|k|E+sesp z%_ZWT{Njga4@5<4_-ouc7dJre$E1GdW+ zG1A-noZWl#m0-cc-=Rt~F<-gs-AMARn_$XfD)QHD8gosIpI&rgE)j}v<{0JZZ!_5@ zj@YVDk$M>5Sh;Z-5+EX(XX{))3QggdNubASOV&~mF}*M`$$4jWW#b8{8d+abwawIo zBqEtc0m%R|Ses?@9+=Jhu;~}5BrjDsm3HHkP1@eQ@^?nN`v7Qzw^7n|e zC99Af*YrH-hTBs9n8hzpuKg_Ct#A)K>v=5SxBW8abPcO!P8%6y+*r_<(OBGgchcO0 zZccU}BdbNwqa3Tw7sPmo6TVJFDQY+q6d1+$pj}-A^#M1Eq##M|QQPB0Y`TtLdf#?+ z2a}$(hawBU_wm{q-3+hb7EJ2Z1$AS!NQF<}nNwa*)JSX=j;#l9#-=U+9!7f-n!5KE z*VfD_S4B+E3^gT|LFEmbH7(C(A6C}~Y4e%7Xtt3nj5)+t(CD6duh=UC}m=y_J%+*~Rml=9S#RCRlF)K)co ztYb1%@u~UJ{z+h(+wt1^tMdDb)hZisn|b9@MYHqRj*N>b(v3g5Vm(}4{ zEagf4xw-pGll%Lep9qR~k^Qc><(yxVQDKJ&k6e7sW=#6u_vz`r3*Mm9MS3E%e)Tak z`bAIXypoWTB@?liiA>PXUYu@@x7`b2ZNBAnFQ@Ifkps~(xoQ;N8&E=D5IAej2oTQZ z7Chiwq2SuYv&YTI35wmnLzV_?exR17X2nXEg>d%GwpE~S*+Z4KGur!AySBI=tp z?vghHw;E~Ty9LR+4y{*CPt>8V=q^HMbL?~TGft^^xaa-)i~Gyh5VOngOoGSG(GRjF ze~I1Z^l0{gilg*+`p+c=(&hLucF|oS?~K}_Q)gK|S`^zIVo941?7t73GY&^x!7#f(p< zG$fv6?AZ?2_=%Sr!r;vth|lH!7G2O&sz6tK*hhMBHDPzKrMEjRf2eK;*{I)AabLe? zYnA2Bc9dOk{IT)3sejp2>~&;)%7yey^8UVTEn#Gs zoWlhtmEmKDnujFABTuS0QihWe0yy%x<@HRoT}uLzvx|{Z zH8AIrC)DMF%lpbkgS*IM?Z6Xfapi{EB8TCHxz^1G6Wz56=>8eLtd6COlC9^2Z!QA# z;RVB1icu3{cfN{oArIM8qY3D}yiw(-BPa)@5RQE4WmxrYWyESK_(#O^Ww+$O)sG@6 z#@g(aDQ*%yGc!haEq<^`XHV$H@>k?1VK!SySe58C0;0z)ms8e}`LDbxs-1a=pwPg5 zbf{V<^>XusDv+*JW6(RFo(lRiTl+8`hf*_KAzaG6Hc${LT6><-nvK?Ah7&jYXR8Bj z$CSvHn|DuKUi`R3*veJ2UR^2?AE-Q0@$(+0sP^|2JM-azse7ld1RqF&-`g|on127X z^@^@>v&yG&;uSRo$`AyIFOAAt-JTh6G8^${BOM+Aani2iBj$92kF(?qXZP$8l^$Y=X=Q@rvA*WG3XQa_+dB+S&8kip z`f+mJC?hJ)F#$`rb}ikmu4&|6)j?gEQ;55cziLPl6(z*&cshNe#%IuBr%|jZk&VB5 c@}tS0awDQqqYL&`#_NBpM7$TS-Z?b+KeSS^i~s-t literal 0 HcmV?d00001 diff --git a/features/netease/src/main/resources/base/media/icon_down.png b/features/netease/src/main/resources/base/media/icon_down.png new file mode 100644 index 0000000000000000000000000000000000000000..d3a5dca72e7e3e485374478032f5d2a8dae419af GIT binary patch literal 1113 zcmaJ=TWHfz7>;hPbGj*R^DZ7UoKDszY1giat6SS_u3*RPiYwxSX>z)TEjd|oX1lQm zt0Ggp>_t%#^i3Z`6cJ>KZcs#hP!N=$nl&W3A7YS%eX1UyKi_>o162voz1}DrHNr5h zc8-{^XQV4GkMzsDLbvV!Em?sGXb?*vs}1OukPXnYx&m3-#|#Z-A-F$4|4u3q?FM0F zLg01zoHFO}gJ#~vd3nFPsS&tY&d0Dk!!sZPX!QS3O`AtsI0paZ`%hsjK5RfH1}!vX%H-lwb#^F2 z2%AvC$c!U2Q0QWJ8ewFmkpaSCyKBv0Yp<#+C}TCua-vZoqFY$fWf&0yG*NM>sv?9u zJ~wHPKg4ojj%(-rtS1!Yy*@7JZ4Whbp#oP#@{k5~T;M8yxO`ErZ3oRDkws{#2cXhn zA`Q%zEvUtF@fFpZ<0{2-X)elTNHUClxqn@D;fOfMUd~&WZ05}mb>euFSljcx=LUHe zk0W9*o_(GCv}fg;smaN=Re7Op^i0k_S&~1U`&L&ye$G*QZ)tw7n0{Y2bE~b9%2x-= zt}RSDKZq`LL*!KDN1+xxEuGnMuC)4s^G9xa*^~PVZr466d$q4B?-}>9(%{Dw_$odx zH&4>bKTw0KCX)5*bBm7eWx&}ZM;(uz_1tVwrmAP&t<8 literal 0 HcmV?d00001 diff --git a/features/netease/src/main/resources/base/media/icon_up.png b/features/netease/src/main/resources/base/media/icon_up.png new file mode 100644 index 0000000000000000000000000000000000000000..e20a4505ecf8d4ac749cc0bb01137011088bcbc5 GIT binary patch literal 1094 zcmaJ=OK1~87~ZBBYcVtz1*Ot)1)oj!(KhLB8_i=A4RlLLgUzk(W7@9m?yS30v#lON z4_ZM%Pl_JI$Ds%DprD9~6?#$hAb3%F>OoKn(u)U0>TKJz9*hgK^Wgiw|1sZOD)b)@ zHScbwC@PdcAr;9SCSzMukoOJP!iZ%u@P~nJSCFt+ZU(vwO6ZBx0%*u8Kjv6PX z95^u5U(%+=G(o429RYyX&`!72ogCFr%J%5ni@kOM(i zG#1ggj&2YaqFk5I&3Co~p592a=)+=B%B{yDy97Oou`M!8 zrBaDjI-06o8knPdOfjhUw7w`z_NVs*MTr5S0CEFWzY<)I&{c6M8!h3KAfuk++ZPoIgnU%oue(>Wptnwc}T~02wOvJV?1k}Xr z-dlH+X|=jNJk+QT&wi21FV2QeH#LoKQP16IxR5;G_HAUS_2#wEhv4E$@;o*3I~l~O ndmZ7Kr))R~GWgEYSE?aMUHRGO3@tpl?Z51NwqJUfJ~jOZ=+0ag literal 0 HcmV?d00001 diff --git a/features/netease/src/main/resources/base/media/iv_zixun.png b/features/netease/src/main/resources/base/media/iv_zixun.png new file mode 100644 index 0000000000000000000000000000000000000000..67ef2f7cf0570ba81cc854ec7f024257f3f99352 GIT binary patch literal 4690 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 { + // Defines a test suite. Two parameters are supported: test suite name and test suite function. + beforeAll(() => { + // Presets an action, which is performed only once before all test cases of the test suite start. + // This API supports only one parameter: preset action function. + }) + beforeEach(() => { + // Presets an action, which is performed before each unit test case starts. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: preset action function. + }) + afterEach(() => { + // Presets a clear action, which is performed after each unit test case ends. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: clear action function. + }) + afterAll(() => { + // Presets a clear action, which is performed after all test cases of the test suite end. + // This API supports only one parameter: clear action function. + }) + it('assertContain', 0, () => { + // Defines a test case. This API supports three parameters: test case name, filter parameter, and test case function. + hilog.info(0x0000, 'testTag', '%{public}s', 'it begin'); + let a = 'abc'; + let b = 'b'; + // Defines a variety of assertion methods, which are used to declare expected boolean conditions. + expect(a).assertContain(b); + expect(a).assertEqual(a); + }) + }) +} \ No newline at end of file diff --git a/features/netease/src/ohosTest/ets/test/List.test.ets b/features/netease/src/ohosTest/ets/test/List.test.ets new file mode 100644 index 0000000..794c7dc --- /dev/null +++ b/features/netease/src/ohosTest/ets/test/List.test.ets @@ -0,0 +1,5 @@ +import abilityTest from './Ability.test'; + +export default function testsuite() { + abilityTest(); +} \ No newline at end of file diff --git a/features/netease/src/ohosTest/module.json5 b/features/netease/src/ohosTest/module.json5 new file mode 100644 index 0000000..c4671de --- /dev/null +++ b/features/netease/src/ohosTest/module.json5 @@ -0,0 +1,13 @@ +{ + "module": { + "name": "netease_test", + "type": "feature", + "deviceTypes": [ + "default", + "tablet", + "2in1" + ], + "deliveryWithInstall": true, + "installationFree": false + } +} diff --git a/features/netease/src/test/List.test.ets b/features/netease/src/test/List.test.ets new file mode 100644 index 0000000..bb5b5c3 --- /dev/null +++ b/features/netease/src/test/List.test.ets @@ -0,0 +1,5 @@ +import localUnitTest from './LocalUnit.test'; + +export default function testsuite() { + localUnitTest(); +} \ No newline at end of file diff --git a/features/netease/src/test/LocalUnit.test.ets b/features/netease/src/test/LocalUnit.test.ets new file mode 100644 index 0000000..165fc16 --- /dev/null +++ b/features/netease/src/test/LocalUnit.test.ets @@ -0,0 +1,33 @@ +import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from '@ohos/hypium'; + +export default function localUnitTest() { + describe('localUnitTest', () => { + // Defines a test suite. Two parameters are supported: test suite name and test suite function. + beforeAll(() => { + // Presets an action, which is performed only once before all test cases of the test suite start. + // This API supports only one parameter: preset action function. + }); + beforeEach(() => { + // Presets an action, which is performed before each unit test case starts. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: preset action function. + }); + afterEach(() => { + // Presets a clear action, which is performed after each unit test case ends. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: clear action function. + }); + afterAll(() => { + // Presets a clear action, which is performed after all test cases of the test suite end. + // This API supports only one parameter: clear action function. + }); + it('assertContain', 0, () => { + // Defines a test case. This API supports three parameters: test case name, filter parameter, and test case function. + let a = 'abc'; + let b = 'b'; + // Defines a variety of assertion methods, which are used to declare expected boolean conditions. + expect(a).assertContain(b); + expect(a).assertEqual(a); + }); + }); +} \ No newline at end of file diff --git a/features/register/BuildProfile.ets b/features/register/BuildProfile.ets index 3a501e5..6033e79 100644 --- a/features/register/BuildProfile.ets +++ b/features/register/BuildProfile.ets @@ -2,8 +2,8 @@ * Use these variables when you tailor your ArkTS code. They must be of the const type. */ export const HAR_VERSION = '1.0.0'; -export const BUILD_MODE_NAME = 'debug'; -export const DEBUG = true; +export const BUILD_MODE_NAME = 'release'; +export const DEBUG = false; export const TARGET_NAME = 'default'; /** diff --git a/features/register/src/main/ets/view/LoginComp.ets b/features/register/src/main/ets/view/LoginComp.ets index 79b9376..226c7d3 100644 --- a/features/register/src/main/ets/view/LoginComp.ets +++ b/features/register/src/main/ets/view/LoginComp.ets @@ -7,6 +7,7 @@ import { deviceInfo } from '@kit.BasicServicesKit'; @Preview @Component export struct LoginComp { + @Link loginstatus: boolean; @State mobile: string = '' @State @@ -49,6 +50,7 @@ export struct LoginComp { }) osFullName: string = deviceInfo.marketName.replace(/[\s\-\p{P}\p{S}]/gu, ''); login() { + if (this.loading) return; if (!this.mobile) { return promptAction.showToast({ message: '手机号码不为空' }) @@ -91,6 +93,8 @@ export struct LoginComp { console.info(`Response login succeeded: ${res}`); let json:LoginInfo = JSON.parse(res+'') as LoginInfo; if(json.code=='1'||json.code=='200') { + preferenceStore.setItemString(BasicConstant.YX_accid,json.YX_accid) + preferenceStore.setItemString(BasicConstant.YX_token,json.YX_token) this.arrToStringSpecialy(json.special) this.getSaveUserInfor(1,json) } else { @@ -117,6 +121,9 @@ export struct LoginComp { } }) } else { + + + this.loginstatus=true authStore.setUser(objs.data) // emitter.emit({ eventId: 100401 }) logger.info('Response state'+state); diff --git a/features/register/src/main/ets/view/PerfectUserDataComp.ets b/features/register/src/main/ets/view/PerfectUserDataComp.ets index 9df2f33..a5d99c9 100644 --- a/features/register/src/main/ets/view/PerfectUserDataComp.ets +++ b/features/register/src/main/ets/view/PerfectUserDataComp.ets @@ -417,9 +417,9 @@ export struct PerfectUserDataComp { this.photoSheetDialog = new CustomDialogController({ builder: PhotoActionSheet({ controller: this.photoSheetDialog, - onPhotoSelected: async (uri: string) => { - this.photoPath = uri; - this.base64Stringphoto = await ChangeUtil.convertUriToBase64(uri); + onPhotoSelected: async (uri: string| string[]) => { + this.photoPath = String(uri); + this.base64Stringphoto = await ChangeUtil.convertUriToBase64( String(uri)); } }), alignment: DialogAlignment.Bottom, @@ -468,11 +468,11 @@ export struct PerfectUserDataComp { this.certificatePhotoSheetDialog = new CustomDialogController({ builder: PhotoActionSheet({ controller: this.certificatePhotoSheetDialog, - onPhotoSelected: async (url: string) => { - this.certificatePhoto = url; - this.base64Stringcertificate = await ChangeUtil.convertUriToBase64(url); + onPhotoSelected: async (uri: string| string[]) => { + this.certificatePhoto = String(uri); + this.base64Stringcertificate = await ChangeUtil.convertUriToBase64( String(uri)); - console.log('Selected image URI:', url); + // console.log('Selected image URI:', url); } }), alignment: DialogAlignment.Bottom, diff --git a/localconversationkit_ui/.gitignore b/localconversationkit_ui/.gitignore new file mode 100644 index 0000000..eadab4e --- /dev/null +++ b/localconversationkit_ui/.gitignore @@ -0,0 +1,7 @@ +/node_modules +/oh_modules +/.preview +/build +/.cxx +/.test +/oh-package-lock.json5 \ No newline at end of file diff --git a/localconversationkit_ui/BuildProfile.ets b/localconversationkit_ui/BuildProfile.ets new file mode 100644 index 0000000..f8f2bba --- /dev/null +++ b/localconversationkit_ui/BuildProfile.ets @@ -0,0 +1,17 @@ +/** + * Use these variables when you tailor your ArkTS code. They must be of the const type. + */ +export const HAR_VERSION = '10.1.0'; +export const BUILD_MODE_NAME = 'release'; +export const DEBUG = false; +export const TARGET_NAME = 'default'; + +/** + * BuildProfile Class is used only for compatibility purposes. + */ +export default class BuildProfile { + static readonly HAR_VERSION = HAR_VERSION; + static readonly BUILD_MODE_NAME = BUILD_MODE_NAME; + static readonly DEBUG = DEBUG; + static readonly TARGET_NAME = TARGET_NAME; +} \ No newline at end of file diff --git a/localconversationkit_ui/Index.ets b/localconversationkit_ui/Index.ets new file mode 100644 index 0000000..d7a1c8a --- /dev/null +++ b/localconversationkit_ui/Index.ets @@ -0,0 +1,8 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +export { LocalConversationPage } from './src/main/ets/pages/LocalConversationPage' \ No newline at end of file diff --git a/localconversationkit_ui/build-profile.json5 b/localconversationkit_ui/build-profile.json5 new file mode 100644 index 0000000..41f23de --- /dev/null +++ b/localconversationkit_ui/build-profile.json5 @@ -0,0 +1,28 @@ +{ + "apiType": "stageMode", + "buildOption": { + }, + "buildOptionSet": [ + { + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": false, + "files": [ + "./obfuscation-rules.txt" + ] + }, + "consumerFiles": [ + "./consumer-rules.txt" + ] + } + } + }, + ], + "targets": [ + { + "name": "default" + } + ] +} diff --git a/localconversationkit_ui/consumer-rules.txt b/localconversationkit_ui/consumer-rules.txt new file mode 100644 index 0000000..e69de29 diff --git a/localconversationkit_ui/hvigorfile.ts b/localconversationkit_ui/hvigorfile.ts new file mode 100644 index 0000000..9d34d19 --- /dev/null +++ b/localconversationkit_ui/hvigorfile.ts @@ -0,0 +1,13 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { harTasks } from '@ohos/hvigor-ohos-plugin'; + +export default { + system: harTasks, /* Built-in plugin of Hvigor. It cannot be modified. */ + plugins: [] /* Custom plugin to extend the functionality of Hvigor. */ +} diff --git a/localconversationkit_ui/obfuscation-rules.txt b/localconversationkit_ui/obfuscation-rules.txt new file mode 100644 index 0000000..272efb6 --- /dev/null +++ b/localconversationkit_ui/obfuscation-rules.txt @@ -0,0 +1,23 @@ +# Define project specific obfuscation rules here. +# You can include the obfuscation configuration files in the current module's build-profile.json5. +# +# For more details, see +# https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/source-obfuscation-V5 + +# Obfuscation options: +# -disable-obfuscation: disable all obfuscations +# -enable-property-obfuscation: obfuscate the property names +# -enable-toplevel-obfuscation: obfuscate the names in the global scope +# -compact: remove unnecessary blank spaces and all line feeds +# -remove-log: remove all console.* statements +# -print-namecache: print the name cache that contains the mapping from the old names to new names +# -apply-namecache: reuse the given cache file + +# Keep options: +# -keep-property-name: specifies property names that you want to keep +# -keep-global-name: specifies names that you want to keep in the global scope + +-enable-property-obfuscation +-enable-toplevel-obfuscation +-enable-filename-obfuscation +-enable-export-obfuscation \ No newline at end of file diff --git a/localconversationkit_ui/oh-package.json5 b/localconversationkit_ui/oh-package.json5 new file mode 100644 index 0000000..1e5b604 --- /dev/null +++ b/localconversationkit_ui/oh-package.json5 @@ -0,0 +1,13 @@ +{ + "name": "@nimkit/localconversationkit_ui", + "version": "10.1.0", + "description": "Please describe the basic information.", + "main": "Index.ets", + "author": "", + "license": "Apache-2.0", + "dependencies": { + "@nimkit/common": "file:../common", + "@nimkit/chatkit": "file:../chatkit", + "@nimsdk/base": "10.9.10" + } +} \ No newline at end of file diff --git a/localconversationkit_ui/src/main/ets/loader/Constant.ets b/localconversationkit_ui/src/main/ets/loader/Constant.ets new file mode 100644 index 0000000..20d3542 --- /dev/null +++ b/localconversationkit_ui/src/main/ets/loader/Constant.ets @@ -0,0 +1,38 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +export class Constant { + /** + * The page size. + */ + static readonly PAGE_SIZE: number = 100; + /** + * The off set coefficient. + */ + static readonly Y_OFF_SET_COEFFICIENT: number = 0.1; + /** + * The animation duration. + */ + static readonly ANIMATION_DURATION: number = 2000; + /** + * The delay time. + */ + static readonly DELAY_TIME: number = 1000; + /** + * The refresh and load height. + */ + static readonly CUSTOM_LAYOUT_HEIGHT: number = 70; +} + +/** + * The newsList state enum. + */ +export const enum PageState { + Loading = 0, + Success = 1, + Fail = 2 +} \ No newline at end of file diff --git a/localconversationkit_ui/src/main/ets/pages/LocalConversationPage.ets b/localconversationkit_ui/src/main/ets/pages/LocalConversationPage.ets new file mode 100644 index 0000000..a3afd60 --- /dev/null +++ b/localconversationkit_ui/src/main/ets/pages/LocalConversationPage.ets @@ -0,0 +1,354 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { ChatKitClient, ChatRepo, NEUserWithFriend, PersonSelectParam, TeamRepo } from '@nimkit/chatkit'; +import { CommonEmptyResult, CommonLongLoadingProgress, NetworkBrokenBuilder } from '@nimkit/common'; +import { V2NIMConversationType, V2NIMLocalConversation } from '@nimsdk/base'; +import { AitServer } from '../service/ait/AitService'; +import { ConversationViewItem } from '../view/ConversationViewItem'; +import { LocalConversationViewModel } from '../viewmodel/LocalConversationViewModel'; + +@ComponentV2 +export struct LocalConversationPage { + @Param pathStack: NavPathStack = new NavPathStack() + @Param onUreadMessageChange?: (unreadCount?: number) => void = undefined + private viewModel: LocalConversationViewModel = new LocalConversationViewModel() + + aboutToAppear(): void { + + this.viewModel.onUreadMessageChange = this.onUreadMessageChange + //初始化@ 服务 + AitServer.instance.init() + this.viewModel.initConversation() + } + + build() { + NavDestination() { + if (this.viewModel.conversationList) { + if (this.viewModel.conversationList.length <= 0 && this.viewModel.isFinishedSyncLoad) { + CommonEmptyResult({ + tips: $r('app.string.conversation_empty') + }).margin({ + top: 80 + }) + } else { + if (this.viewModel.networkBroken) { + NetworkBrokenBuilder() + } + + List() { + ForEach(this.viewModel.conversationList, (item: V2NIMLocalConversation) => { + ListItem() { + ConversationViewItem({ + conversationInfo: item, + haveBeanAit: this.viewModel.aitConversationList.has(item.conversationId), + onItemClick: () => { + //goto ChatPage + this.goToChatPage(item) + } + }) + } + }) + } + .listDirection(Axis.Vertical) + .onReachEnd(() => { + if (this.viewModel.conversationList && + this.viewModel.conversationList.length > 0 && + !this.viewModel.isFinished) { + this.viewModel.loadConversation() + } + }) + .scrollBar(BarState.Off) + .width('100%') + .height('100%') + .backgroundColor('#ffFFFFFF') + } + + } else { + CommonLongLoadingProgress({ contentText: $r('app.string.conversation_loading') }) + } + + } + .hideTitleBar(true) + // .title(this.titleBuilder) + .backgroundColor(Color.White) + } + + @Builder + titleBuilder() { + ConversationNavigationTitleBar({ + pathStack: this.pathStack + }) + } + + /** + * 跳转到聊天页面 + */ + goToChatPage(conversationInfo: V2NIMLocalConversation) { + if (conversationInfo?.type == V2NIMConversationType.V2NIM_CONVERSATION_TYPE_P2P) { + this.pathStack.pushPath({ name: "ChatP2PPage", param: conversationInfo.conversationId }) + } else if (conversationInfo?.type == V2NIMConversationType.V2NIM_CONVERSATION_TYPE_TEAM) { + this.pathStack.pushPath({ name: "ChatTeamPage", param: conversationInfo.conversationId }) + } + } +} + +@ComponentV2 +struct ConversationNavigationTitleBar { + @Local conversationPopupShowed: boolean = false + @Param pathStack: NavPathStack = new NavPathStack() + + build() { + Column({ space: 10 }) { + Row() { + //标题栏左侧图标 + Image($r('app.media.brand')) + .margin({ left: 20 }) + .width(32) + .height(32) + .objectFit(ImageFit.Contain) + //标题栏左侧文字 + Text($r('app.string.conversation_title')) + .fontSize(20) + .fontWeight(FontWeight.Bold) + .height(32) + .width('100%') + .margin({ left: 12, right: 12 }) + .layoutWeight(2) + .textAlign(TextAlign.Start) + .maxLines(1) + .textOverflow({ overflow: TextOverflow.Ellipsis }) + + + Row() + .height(1) + .layoutWeight(1) + + //标题栏右侧搜索图标 + Image($r('app.media.nav_search')) + .width(32) + .height(32) + .padding({ + left: 3, + right: 3, + top: 3, + bottom: 3 + }) + .margin({ right: 10 }) + .onClick(() => { + //点击去搜索 + this.goSearchPage(this.pathStack) + }) + + //标题栏右侧更多按钮图标 + Image($r('app.media.nav_add')) + .width(32) + .height(32) + .padding({ + left: 3, + right: 3, + top: 3, + bottom: 3 + }) + .margin({ right: 20 }) + .onClick(() => { + this.conversationPopupShowed = !this.conversationPopupShowed + }) + .bindPopup(this.conversationPopupShowed, + //右侧更多操作弹框 + { + targetSpace: 'popupLocation', + builder: this.popupBuilder, + placement: Placement.Bottom, + mask: true, + popupColor: Color.White, + enableArrow: false, + showInSubWindow: false, + autoCancel: true, + onStateChange: (e) => { + if (!e.isVisible) { + this.conversationPopupShowed = false + } + } + }) + + } + .height(55) + .alignSelf(ItemAlign.Start) + + Row() + .width('100%') + .height(1) + .backgroundColor("#E9EFF5") + } + .height('100%') + .width('100%') + } + + @Builder + popupBuilder() { + Column({ space: 16 }) { + //添加好友 + Row() { + Image($r('app.media.friend_add')) + .width(14) + .height(14) + Text($r('app.string.add_friend')) + .fontSize(14) + .fontColor('#ff333333') + .margin({ left: 6 }) + }.onClick(() => { + if (this.conversationPopupShowed) { + this.conversationPopupShowed = false + this.goAddFriend(this.pathStack) + } + }) + + //创建讨论组 + Row() { + Image($r('app.media.team_discuss')) + .width(14) + .height(14) + Text($r('app.string.create_discuss_team')) + .fontSize(14) + .fontColor('#ff333333') + .margin({ left: 6 }) + }.onClick(() => { + if (this.conversationPopupShowed) { + this.conversationPopupShowed = false + this.goToPersonSelectPage(this.pathStack, true) + } + }) + + //创建高级群 + Row() { + Image($r("app.media.team_advance")) + .width(14) + .height(14) + Text($r('app.string.create_advance_team')) + .fontSize(14) + .fontColor('#ff333333') + .margin({ left: 6 }) + }.onClick(() => { + if (this.conversationPopupShowed) { + this.conversationPopupShowed = false + this.goToPersonSelectPage(this.pathStack, false) + } + }) + } + .width(122) + .padding({ + top: 16, + left: 16, + bottom: 16 + }) + .alignItems(HorizontalAlign.Start) + .borderRadius(8) + .backgroundColor('#ffFFFFFF') + } + + /** + * 搜索页面 + */ + goSearchPage(pathStack: NavPathStack) { + pathStack.pushPath({ name: "SearchPage" }) + } + + /** + * 添加好友 + */ + goAddFriend(pathStack: NavPathStack) { + pathStack.pushPath({ name: "AddFriendPage" }) + } + + // 创建讨论组的人选选择器返回 + groupSelectorCallback = async (selectedList: NEUserWithFriend[]) => { + try { + this.pathStack.pop() + let invitees = selectedList.map(user => user.user?.accountId ?? '') + this.createGroupTeam(invitees) + } catch (err) { + console.log(err) + } + } + // 创建高级群的人选选择器返回 + teamSelectorCallback = async (selectedList: NEUserWithFriend[]) => { + try { + this.pathStack.pop() + let invitees = selectedList.map(user => user.user?.accountId ?? '') + this.createAdvanceTeam(invitees) + } catch (err) { + console.log(err) + } + } + + /** + * 跳转到人员选择器 + * @param pathStack + * @param isGroup + */ + goToPersonSelectPage(pathStack: NavPathStack, isGroup: boolean) { + if (isGroup) { + pathStack.pushPath({ + name: "PersonSelectPage", + param: new PersonSelectParam(this.groupSelectorCallback) + }) + } else { + pathStack.pushPath({ + name: "PersonSelectPage", + param: new PersonSelectParam(this.teamSelectorCallback) + }) + } + + } + + /** + * 创建讨论组 + */ + createGroupTeam(invitees: string[]) { + TeamRepo.createGroupTeam(invitees).then((result) => { + if (result) { + // 跳转到聊天页面 + this.pathStack.pushPath({ + name: "ChatTeamPage", + param: ChatKitClient.nim.conversationIdUtil.teamConversationId(result.team.teamId) + }) + } + }) + } + + /** + * 创建高级群 + */ + createAdvanceTeam(invitees: string[]) { + TeamRepo.createAdvanceTeam(invitees).then((result) => { + if (result) { + //1,本地保存一条消息 + let message = ChatKitClient.nim.messageCreator.createTipsMessage( + getContext(this).resourceManager.getStringSync($r('app.string.createAdvancedTeamSuccess')) + ) + ChatRepo.saveLocalMessage(message, + ChatKitClient.nim.conversationIdUtil.teamConversationId(result.team.teamId), + ChatKitClient.getLoginUserId(), + (new Date()).valueOf() - 500 + ) + // 2 跳转到聊天页面 + this.pathStack.pushPath({ + name: "ChatTeamPage", + param: ChatKitClient.nim.conversationIdUtil.teamConversationId(result.team.teamId) + }) + } + }) + + } +} + +// 跳转页面入口函数 +@Builder +export function LocalConversationPageBuilder() { + LocalConversationPage() +} \ No newline at end of file diff --git a/localconversationkit_ui/src/main/ets/service/ait/AitDatabaseHelper.ets b/localconversationkit_ui/src/main/ets/service/ait/AitDatabaseHelper.ets new file mode 100644 index 0000000..ca9dd60 --- /dev/null +++ b/localconversationkit_ui/src/main/ets/service/ait/AitDatabaseHelper.ets @@ -0,0 +1,158 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { relationalStore } from '@kit.ArkData'; + +export class AitDatabase { + static _databaseName: string = "nim_kit_ait.db"; + static _databaseVersion = 1; + static table: string = 'session_messages'; + static sessionIdColumn: string = 'session_id'; + static messageIdColumn: string = 'message_id'; + static myAccId: string = 'my_acc_id'; + private store: relationalStore.RdbStore | undefined = undefined; + private static _instance: AitDatabase | undefined = undefined + + public static get instance() { + return this._instance ?? (this._instance = new AitDatabase()) + } + + private constructor() { + } + + static STORE_CONFIG: relationalStore.StoreConfig = { + name: AitDatabase._databaseName, // 数据库文件名 + securityLevel: relationalStore.SecurityLevel.S3, // 数据库安全级别 + encrypt: false, // 可选参数,指定数据库是否加密,默认不加密。 + isReadOnly: false // 可选参数,指定数据库是否以只读方式打开。该参数默认为false,表示数据库可读可写。该参数为true时,只允许从数据库读取数据,不允许对数据库进行写操作,否则会返回错误码801。 + }; + static SQL_CREATE_TABLE = `CREATE TABLE IF NOT EXISTS ${AitDatabase.table} + (ID INTEGER PRIMARY KEY AUTOINCREMENT, + ${AitDatabase.sessionIdColumn} TEXT NOT NULL, + ${AitDatabase.messageIdColumn} TEXT NOT NULL, + ${AitDatabase.myAccId} TEXT NOT NULL)` + + /** + * 获取数据库 + * @returns + */ + async getDatabase(): Promise { + let store = await relationalStore.getRdbStore(getContext(), AitDatabase.STORE_CONFIG) + if (store) { + // 当数据库创建时,数据库默认版本为0 + if (store.version === 0) { + store.executeSql(AitDatabase.SQL_CREATE_TABLE); // 创建数据表 + // 设置数据库的版本,入参为大于0的整数 + store.version = AitDatabase._databaseVersion; + } + return store + } + return undefined + } + + /** + * 插入一条@消息 + * @param sessionId + * @param messageId + * @param accId + * @returns + */ + async insertAitMessage(sessionId: string, messageId: string, accId: string): Promise { + if (!this.store) { + this.store = await this.getDatabase() + } + const bucket: relationalStore.ValuesBucket = { + 'session_id': sessionId, + 'message_id': messageId, + 'my_acc_id': accId + } + return this.store?.insert(AitDatabase.table, bucket) + } + + /** + * 删除一条@消息 + * @param sessionId + * @param messageId + * @param accId + * @returns + */ + async deleteMessage(sessionId: string, messageId: string, accId: string): Promise { + if (!this.store) { + this.store = await this.getDatabase() + } + let predicates1 = new relationalStore.RdbPredicates(`${AitDatabase.table}`); + predicates1.equalTo(`${AitDatabase.sessionIdColumn}`, sessionId); + predicates1.equalTo(`${AitDatabase.messageIdColumn}`, messageId); + predicates1.equalTo(`${AitDatabase.myAccId}`, accId); + return this.store?.delete(predicates1) + } + + /** + * 清除sessionId对应的所有messageId + * @param sessionId + * @param accId + * @returns + */ + async clearSessionAitMessage(sessionId: string, accId: string): Promise { + if (!this.store) { + this.store = await this.getDatabase() + } + let predicates1 = new relationalStore.RdbPredicates(`${AitDatabase.table}`); + predicates1.equalTo(`${AitDatabase.sessionIdColumn}`, sessionId); + predicates1.equalTo(`${AitDatabase.myAccId}`, accId); + return this.store?.delete(predicates1) + } + + /** + * 查询session中对应的@消息 + * @param sessionId + * @param accId + * @returns + */ + async queryMessageIdsBySessionId( + sessionId: string, accId: string): Promise { + if (!this.store) { + this.store = await this.getDatabase() + } + let predicates1 = new relationalStore.RdbPredicates(AitDatabase.table); + predicates1.equalTo(`${AitDatabase.sessionIdColumn}`, sessionId); + predicates1.equalTo(`${AitDatabase.myAccId}`, accId); + let resultSet = await this.store?.query(predicates1, [`${AitDatabase.messageIdColumn}`]) + let resultList: string[] = [] + if (resultSet) { + while (resultSet.goToNextRow()) { + resultList.push(...[resultSet.getString(resultSet.getColumnIndex(AitDatabase.messageIdColumn))]) + } + resultSet.close() + } + return resultList + + } + + /** + * 查询对应账号中所有@的sessionId + * @param sessionId + * @param accId + * @returns + */ + async queryAllAitSession(accId: string): Promise { + if (!this.store) { + this.store = await this.getDatabase() + } + let predicates1 = new relationalStore.RdbPredicates(AitDatabase.table); + predicates1.equalTo(AitDatabase.myAccId, accId); + let resultSet = await this.store?.query(predicates1, [`${AitDatabase.sessionIdColumn}`]) + let resultList: string[] = [] + if (resultSet) { + while (resultSet.goToNextRow()) { + resultList.push(...[resultSet.getString(resultSet.getColumnIndex(AitDatabase.sessionIdColumn))]) + } + resultSet.close() + } + return resultList + + } +} \ No newline at end of file diff --git a/localconversationkit_ui/src/main/ets/service/ait/AitService.ets b/localconversationkit_ui/src/main/ets/service/ait/AitService.ets new file mode 100644 index 0000000..85348ae --- /dev/null +++ b/localconversationkit_ui/src/main/ets/service/ait/AitService.ets @@ -0,0 +1,190 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { ChatRepo, getAitModelFromJson } from '@nimkit/chatkit'; +import { ChatKitClient, currentConversationChanged } from '@nimkit/chatkit/src/main/ets/ChatKitClient'; +import { V2NIMConversation, V2NIMConversationType, V2NIMMessage, V2NIMMessageRevokeNotification } from '@nimsdk/base'; +import { AitDatabase } from './AitDatabaseHelper'; + +export const AitSessionChangeEvent: string = 'AitSessionChangeEvent' + +/** + * 管理session列表的@消息处理 + */ +export class AitServer { + private static _instance: AitServer | undefined = undefined; + + public static get instance(): AitServer { + return this._instance ?? (this._instance = new AitServer()); + } + + private constructor() { + + } + + //有@的会话,缓存 + private aitConversationSet: Set = new Set() + /// 当前会话id, 用于判断是否需要保存@消息 + private _currentSessionId: string | null = null; + + public init() { + this.initListener() + } + + private initListener(): void { + + //当前会话设置变更的回到 + getContext().eventHub.on(currentConversationChanged, (conversationId: string) => { + this._currentSessionId = conversationId + if (conversationId.length > 0) { + this.clearAitMessage(conversationId) + this.aitConversationSet.delete(conversationId) + this.sendAitChange({ + sessionId: conversationId, + messageId: undefined, + isAit: false + }) + } + }) + + // 注册消息接受监听 + ChatRepo.onReceiverMessage(this.onReceiveFun.bind(this)) + + // 注册消息撤回监听 + ChatRepo.onRevokeMessage(this.onRevokeFun.bind(this)) + + //会话已读未读数的变化 + ChatKitClient.nim.conversationService?.on('onConversationChanged', (updateList: V2NIMConversation[]) => { + updateList.forEach((conversation) => { + if (conversation.unreadCount === 0 && + this.aitConversationSet.has(conversation.conversationId)) { + this.clearAitMessage(conversation.conversationId) + this.sendAitChange({ + sessionId: conversation.conversationId, + isAit: false + }) + } + }) + }) + + } + + //接收到消息 + onReceiveFun = (messages: V2NIMMessage[]) => { + let myAccId = ChatKitClient.getLoginUserId() + messages.forEach(msg => { + if (!msg.isSelf + && msg.conversationType === V2NIMConversationType.V2NIM_CONVERSATION_TYPE_TEAM + && msg.conversationId != this._currentSessionId) { + if (msg.serverExtension) { + ChatKitClient.logger?.debug(`AitService`, `onReceiveFun text = ${msg.text} id = ${msg.messageClientId}`) + let aitModel = getAitModelFromJson(msg.serverExtension) + if (aitModel && aitModel.isUserBeenAit(myAccId)) { + ChatKitClient.logger?.debug(`AitService`, `onReceiveFun been ait ConversationID = ${msg.conversationId}`) + // 回调 + this.sendAitChange({ + sessionId: msg.conversationId, + messageId: msg.messageClientId, + isAit: true + }) + this.saveAitMessage(msg.conversationId, msg.messageClientId) + } + } + } + }) + } + // 撤回消息 + onRevokeFun = (messages: V2NIMMessageRevokeNotification[]) => { + let myAccId = ChatKitClient.getLoginUserId() + messages.forEach(msg => { + if (msg.messageRefer.senderId != myAccId + && msg.messageRefer.conversationType === V2NIMConversationType.V2NIM_CONVERSATION_TYPE_TEAM + && msg.messageRefer.conversationId != this._currentSessionId) { + this.handleRevokeAitMessage(msg, myAccId) + + } + }) + } + + /** + * 发送变更通知 + * @param aitSession + */ + sendAitChange(aitSession: AitSession) { + getContext().eventHub.emit(AitSessionChangeEvent, aitSession) + } + + /** + * 处理@消息的撤回 + * @param msg + * @param myAccId + */ + async handleRevokeAitMessage(msg: V2NIMMessageRevokeNotification, myAccId: string) { + //查找出此Conversation 中所有的ait Message + let aitMessageList = await AitDatabase.instance.queryMessageIdsBySessionId(msg.messageRefer.conversationId, myAccId) + let aitMessageId = aitMessageList.find((e) => e === msg.messageRefer.messageClientId) + if (aitMessageId) { + await AitDatabase.instance.deleteMessage(msg.messageRefer.conversationId, msg.messageRefer.messageClientId, + myAccId) + let haveAit = await this.isAitSession(msg.messageRefer.conversationId, myAccId) + //if (haveAit === false) { + // 回调 + this.sendAitChange({ + sessionId: msg.messageRefer.conversationId, + messageId: msg.messageRefer.messageClientId, + isAit: false + }) + this.aitConversationSet.delete(msg.messageRefer.conversationId) + //} + } + + } + + public async saveAitMessage(sessionId: string, messageId: string): Promise { + if (sessionId === this._currentSessionId) { + return false; + } + const myId = ChatKitClient.getLoginUserId() + if (!myId) { + return false; + } + this.aitConversationSet.add(sessionId) + return ((await AitDatabase.instance.insertAitMessage(sessionId, messageId, myId)) ?? 0) > 0; + } + + public async clearAitMessage(sessionId: string): Promise { + const myId = ChatKitClient.getLoginUserId() + if (!myId) { + return Promise.resolve(0); + } + this.aitConversationSet.delete(sessionId) + return AitDatabase.instance.clearSessionAitMessage(sessionId, myId); + } + + /** + * 是否是Ait 会话 + * @param sessionId + * @param myId + * @returns + */ + public async isAitSession(sessionId: string, myId: string): Promise { + if (this.aitConversationSet.has(sessionId)) { + return true + } + const msgList = await AitDatabase.instance.queryMessageIdsBySessionId(sessionId, myId); + return msgList.length > 0; + } + + public async getAllAitSession(myId: string): Promise { + return AitDatabase.instance.queryAllAitSession(myId); + } +} + +export interface AitSession { + sessionId: string; + messageId?: string; + isAit: boolean; +} \ No newline at end of file diff --git a/localconversationkit_ui/src/main/ets/view/ConversationViewItem.ets b/localconversationkit_ui/src/main/ets/view/ConversationViewItem.ets new file mode 100644 index 0000000..856b2e4 --- /dev/null +++ b/localconversationkit_ui/src/main/ets/view/ConversationViewItem.ets @@ -0,0 +1,218 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { ChatKitClient } from '@nimkit/chatkit'; +import { AvatarColorUntil, AvatarItem, CommonAvatar } from '@nimkit/common'; +import { DateUtil } from '@nimkit/common/src/main/ets/utils/DateUtil'; +import { V2NIMLocalConversation, V2NIMMessageCallAttachment, V2NIMMessageType } from '@nimsdk/base'; +import { LocalConversationOperationDialog } from './LocalConversationOperationDialog'; + +@ComponentV2 +export struct ConversationViewItem { + @Param conversationInfo: V2NIMLocalConversation | null = null + @Param haveBeanAit: boolean = false + @Param onItemClick?: () => void | undefined = undefined + dialogController: CustomDialogController = new CustomDialogController({ + builder: LocalConversationOperationDialog({ + conversationInfo: this.conversationInfo + }), + cornerRadius: 15, + borderWidth: 0.5, + width: '60%', + borderColor: '#ffDCDFE5' + }) + + build() { + if (this.conversationInfo !== null) { + Row() { + //头像 + Stack({ + alignContent: Alignment.TopEnd + }) { + CommonAvatar({ + item: new AvatarItem(this.conversationInfo.avatar, + this.getAvatarShowName(this.conversationInfo.name ?? ''), + AvatarColorUntil.getBackgroundColorById( + ChatKitClient.nim.conversationIdUtil + .parseConversationTargetId(this.conversationInfo.conversationId) + )) + }) + //未读数显示 + if (this.conversationInfo.mute !== true && this.conversationInfo.unreadCount > 0) { + Text(this.getUnreadCountStr(this.conversationInfo.unreadCount)) + .fontSize(12) + .fontColor('#ffFFFFFF') + .textAlign(TextAlign.Center) + .backgroundColor('#ffF24957') + .borderRadius(20) + .height(18) + .width(18 + (this.getUnreadCountStr(this.conversationInfo.unreadCount).length - 1) * 4) + } + + } + .width(42) + .height(42) + + Column() { + //item 显示名称 + Text(this.conversationInfo.name) + .fontSize(16) + .fontColor("#ff333333") + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .maxLines(1) + .margin({ + bottom: 8 + }) + + Row() { + if (this.haveBeanAit && this.conversationInfo.unreadCount > 0) { + Text('[有人@我]') + .fontSize(13) + .maxLines(1) + .fontColor("#fff24957") + } + //item 最后一条消息显示 + Text(this.getConversationContent(this.conversationInfo)) + .fontSize(13) + .maxLines(1) + .fontColor("#ff999999") + .textOverflow({ overflow: TextOverflow.Ellipsis }) + .width('100%') + }.width(this.conversationInfo.mute ? '80%' : '100%') + + } + .width('60%') + .margin({ + left: 12, + right: 12 + }).alignItems(HorizontalAlign.Start) + + //时间戳和mute + Column() { + Text(DateUtil.formatTimestamp(this.conversationInfo.lastMessage?.messageRefer?.createTime ?? + this.conversationInfo.updateTime)) + .fontColor('#ffCCCCCC') + .fontSize(12) + .alignSelf(ItemAlign.End) + .margin({ + bottom: 8, + top:2 + }) + + //mute 状态显示 + if (this.conversationInfo.mute) { + + Image($r('app.media.conversation_mute')) + .width(14) + .height(14) + } + } + .alignSelf(ItemAlign.Start) + .width('20%') + .margin({ + right: 12 + }) + + } + .width('100%') + .height(62) + .onClick(() => { + // this.goToChatPage() + if (this.onItemClick !== undefined) { + this.onItemClick() + } + }) + .backgroundColor(this.conversationInfo.stickTop ? '#ffF3F5F7' : '#ffffffff') + .gesture( + // 绑定可以重复触发的LongPressGesture + LongPressGesture({ repeat: true }) + .onAction((event: GestureEvent) => { + if (!event.repeat) { + //show 操作弹框 + this.dialogController.open() + } + }) + ) + .padding({ + left: 20, + top: 10, + bottom: 10, + right: 20 + }) + } + + } + + /** + * 获取未读数展示 + * @param unreadCount + * @returns + */ + getUnreadCountStr(unreadCount: number): string { + if (unreadCount < 100) { + return unreadCount + '' + } else { + return '99+' + } + } + + /** + * 头像只显示后两位 + * @param sourceName + * @returns + */ + getAvatarShowName(sourceName: string): string { + let size = sourceName.length + if (size <= 2) { + return sourceName + } else { + return sourceName.substring(size - 2) + } + } + + /** + * 获取会话列表展示的内容 + * @param item + * @returns + */ + getConversationContent(item: V2NIMLocalConversation): string | Resource { + if (!item.lastMessage) { + return '' + } + + switch (item.lastMessage?.messageType) { + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_TEXT: + return item.lastMessage.text ?? '' + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_IMAGE: + return $r('app.string.imageMessageType') + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_AUDIO: + return $r('app.string.audioMessageType') + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_VIDEO: + return $r('app.string.videoMessageType') + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_LOCATION: + return $r('app.string.locationMessageType') + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_FILE: + return $r('app.string.fileMessageType') + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_NOTIFICATION: + return $r('app.string.notificationMessageType') + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_TIPS: + return $r('app.string.tipMessageType') + case V2NIMMessageType.V2NIM_MESSAGE_TYPE_CALL: + if (item.lastMessage?.attachment) { + const messageAttachment = item.lastMessage.attachment as V2NIMMessageCallAttachment + if (messageAttachment.type == 1) { + return $r('app.string.msg_type_rtc_audio') + } else { + return $r('app.string.msg_type_rtc_video') + } + } + + } + return item.lastMessage?.text ?? $r('app.string.chatMessageNonsupportType') + + } +} \ No newline at end of file diff --git a/localconversationkit_ui/src/main/ets/view/LocalConversationOperationDialog.ets b/localconversationkit_ui/src/main/ets/view/LocalConversationOperationDialog.ets new file mode 100644 index 0000000..028a445 --- /dev/null +++ b/localconversationkit_ui/src/main/ets/view/LocalConversationOperationDialog.ets @@ -0,0 +1,65 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { ErrorUtils, LocalConversationRepo } from '@nimkit/chatkit' +import { V2NIMLocalConversation } from '@nimsdk/base' + +@CustomDialog +export struct LocalConversationOperationDialog { + @State conversationInfo: V2NIMLocalConversation | null = null + private controller: CustomDialogController = new CustomDialogController({ + builder: LocalConversationOperationDialog(), + }) + + build() { + if (this.conversationInfo != null) { + Column({ space: 10 }) { + if (this.conversationInfo.stickTop) { + Text($r('app.string.unstick_top_conversation')) + .fontSize(16) + .fontColor('#333333') + .onClick(() => { + if (ErrorUtils.checkNetworkAndToast()) { + LocalConversationRepo.stickTopConversation(this.conversationInfo?.conversationId ?? '', false) + } + this.controller.close() + }) + .height(30) + .width('100%') + .margin({ top: 15 }) + .textAlign(TextAlign.Center) + } else { + Text($r('app.string.stick_top_conversation')) + .fontSize(16) + .fontColor('#333333') + .onClick(() => { + if (ErrorUtils.checkNetworkAndToast()) { + LocalConversationRepo.stickTopConversation(this.conversationInfo?.conversationId ?? '', true) + } + this.controller.close() + }) + .height(30) + .width('100%') + .margin({ top: 15 }) + .textAlign(TextAlign.Center) + } + Line().height(1).backgroundColor('#EFF1F4').width('100%').opacity(0.5) + Text($r('app.string.delete_conversation')) + .fontSize(16) + .fontColor('#333333') + .onClick(() => { + LocalConversationRepo.deleteConversation(this.conversationInfo?.conversationId ?? '') + this.controller.close() + }) + .height(30) + .width('100%') + .margin({ bottom: 15 }) + .textAlign(TextAlign.Center) + }.width('100%').backgroundColor($r('sys.color.white')) + } + } +} \ No newline at end of file diff --git a/localconversationkit_ui/src/main/ets/viewmodel/LocalConversationListData.ets b/localconversationkit_ui/src/main/ets/viewmodel/LocalConversationListData.ets new file mode 100644 index 0000000..bcdead8 --- /dev/null +++ b/localconversationkit_ui/src/main/ets/viewmodel/LocalConversationListData.ets @@ -0,0 +1,56 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { V2NIMConversation } from '@nimsdk/base'; + +@ObservedV2 +export default class LocalConversationListData implements IDataSource { + @Trace + private dataArray: V2NIMConversation[] = []; + //被@的会话 + @Trace aitConversationList: Set = new Set() + private listeners: DataChangeListener[] = []; + + registerDataChangeListener(listener: DataChangeListener): void { + if (this.listeners.indexOf(listener) < 0) { + console.info('add listener'); + this.listeners.push(listener); + } + } + + unregisterDataChangeListener(listener: DataChangeListener): void { + const pos = this.listeners.indexOf(listener); + if (pos >= 0) { + console.info('remove listener'); + this.listeners.splice(pos, 1); + } + } + + + public totalCount(): number { + return this.dataArray.length; + } + + public getData(index: number): V2NIMConversation { + return this.dataArray[index]; + } + + public addData(index: number, data: V2NIMConversation): void { + this.dataArray.splice(index, 0, data); + this.notifyDataAdd(index); + } + + public pushData(data: V2NIMConversation): void { + this.dataArray.push(data); + this.notifyDataAdd(this.dataArray.length - 1); + } + + notifyDataAdd(index: number): void { + this.listeners.forEach(listener => { + listener.onDataAdd(index); + }) + } +} \ No newline at end of file diff --git a/localconversationkit_ui/src/main/ets/viewmodel/LocalConversationViewModel.ets b/localconversationkit_ui/src/main/ets/viewmodel/LocalConversationViewModel.ets new file mode 100644 index 0000000..b320d9d --- /dev/null +++ b/localconversationkit_ui/src/main/ets/viewmodel/LocalConversationViewModel.ets @@ -0,0 +1,254 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { ChatKitClient, LocalConversationRepo, TeamRepo } from '@nimkit/chatkit' +import { + V2NIMConnectStatus, + V2NIMConversationType, + V2NIMFriend, + V2NIMFriendDeletionType, + V2NIMLocalConversation, + V2NIMLoginStatus, + V2NIMTeam, + V2NIMTeamType +} from '@nimsdk/base' +import { Constant } from '../loader/Constant' +import { AitServer, AitSession, AitSessionChangeEvent } from '../service/ait/AitService' + +@ObservedV2 +export class LocalConversationViewModel { + static logTag = 'ConversationViewModel' + //是否已经加载完成 + public isFinished: boolean = false + //会话列表数据 + @Trace conversationList?: V2NIMLocalConversation[] + @Trace isFinishedSyncLoad?: boolean = false + onUreadMessageChange?: (unreadCount?: number) => void = undefined + // 网络连接状态 + @Trace networkBroken: boolean = ChatKitClient.connectBroken() + //记录偏移量,下次请求使用 + private offset: number = 0 + //每次请求拉取的上限 + private limit: number = Constant.PAGE_SIZE + //被@的会话 + @Trace aitConversationList: Set = new Set() + + //会话排序 + sortConversation(a: V2NIMLocalConversation, b: V2NIMLocalConversation): number { + return b.sortOrder - a.sortOrder + } + + initConversation() { + //首先拉取一次 + // if (ChatKitClient.haveSyncedConversation) { + this.loadConversation(0) + // } + //添加监听 + ChatKitClient.nim.localConversationService?.on('onSyncFinished', + async () => { + //同步完成拉一次 + ChatKitClient.logger?.debug(`${LocalConversationViewModel.logTag} onSyncFinished`) + await this.loadConversation(0) + this.isFinishedSyncLoad = true + } + ) + + ChatKitClient.nim.localConversationService?.on('onSyncFailed', + async (err) => { + //同步完成拉一次 + ChatKitClient.logger?.debug(`${LocalConversationViewModel.logTag} onSyncFailed`+err) + + } + ) + // 长连接状态变更 + ChatKitClient.nim.loginService?.on('onConnectStatus', + (status: V2NIMConnectStatus) => { + if (status !== V2NIMConnectStatus.V2NIM_CONNECT_STATUS_CONNECTED) { + this.networkBroken = true + } + } + ) + + // 登录状态变更 + ChatKitClient.nim.loginService?.on('onLoginStatus', + (status: V2NIMLoginStatus) => { + if (status === V2NIMLoginStatus.V2NIM_LOGIN_STATUS_LOGINED) { + this.networkBroken = false + } + } + ) + + //好友信息变更修改 + ChatKitClient.nim.friendService?.on('onFriendInfoChanged', async (friend: V2NIMFriend) => { + await this.updateConversationById(ChatKitClient.nim.conversationIdUtil.p2pConversationId(friend.accountId)) + }) + + //好友删除,别名不存在需要更新 + ChatKitClient.nim.friendService?.on('onFriendDeleted', + async (accountId: string, deletionType: V2NIMFriendDeletionType) => { + await this.updateConversationById(ChatKitClient.nim.conversationIdUtil.p2pConversationId(accountId)) + }) + + //群解散 + ChatKitClient.nim.teamService?.on('onTeamDismissed', (team: V2NIMTeam) => { + this.deleteConversation(ChatKitClient.nim.conversationIdUtil.teamConversationId(team.teamId)) + }) + + //退出群 + ChatKitClient.nim.teamService?.on('onTeamLeft', (team: V2NIMTeam) => { + this.deleteConversation(ChatKitClient.nim.conversationIdUtil.teamConversationId(team.teamId)) + }) + + //会话未读数变化 + ChatKitClient.nim.localConversationService?.on('onTotalUnreadCountChanged', (unreadCount: number) => { + if (this.onUreadMessageChange) { + this.onUreadMessageChange(unreadCount) + } + }) + + //会话创建 + ChatKitClient.nim.localConversationService?.on('onConversationCreated', (conversation: V2NIMLocalConversation) => { + ChatKitClient.logger?.debug(`${LocalConversationViewModel.logTag} onConversationCreated type is ${conversation.type}`) + if (conversation.type === V2NIMConversationType.V2NIM_CONVERSATION_TYPE_TEAM) { + this.addTeamConversation(conversation) + } else { + let existConversation: V2NIMLocalConversation | undefined = + this.conversationList?.find((m) => m.conversationId === conversation.conversationId) + //如果已经存在,则不处理 + if (existConversation) { + return + } + this.conversationList?.push(...[conversation]) + this.conversationList?.sort((a, b) => this.sortConversation(a, b)) + } + }) + + //会话删除 + ChatKitClient.nim.localConversationService?.on('onConversationDeleted', (conversationIds: string[]) => { + this.conversationList = + this.conversationList?.filter(conversation => !conversationIds.includes(conversation.conversationId)) + }) + //会话更新 + ChatKitClient.nim.localConversationService?.on('onConversationChanged', (updateList: V2NIMLocalConversation[]) => { + updateList.forEach( + changedItem => { + const index = + this.conversationList?.findIndex(conversation => conversation.conversationId === changedItem.conversationId) + if (index !== undefined && index > -1 && this.conversationList) { + this.conversationList[index] = changedItem + } + if (changedItem.type === V2NIMConversationType.V2NIM_CONVERSATION_TYPE_TEAM) { + setTimeout(() => { + this.addTeamConversation(changedItem) + }, 100) + } else { + //this.conversationList?.push(...[changedItem]) + } + } + ); + + this.conversationList?.sort((a, b) => this.sortConversation(a, b)) + }) + //监听@的回调 + getContext().eventHub.on(AitSessionChangeEvent, (session: AitSession) => { + ChatKitClient.logger?.debug(LocalConversationViewModel.logTag, + `AitSessionChangeEvent ConversationID = ${session.sessionId} been ait ${session.isAit}`) + if (session.isAit) { + this.aitConversationList.add(session.sessionId) + } else if (this.aitConversationList.has(session.sessionId)) { + this.aitConversationList.delete(session.sessionId) + } + + }) + //获取数据库中所有的@数据 + AitServer.instance.getAllAitSession(ChatKitClient.getLoginUserId()).then(( + aitSessions: string[] + ) => { + aitSessions.forEach((session) => { + this.aitConversationList.add(session) + }) + }) + } + + //按照会话ID更新会话 + async updateConversationById(conversationId: string) { + const newConversation = await LocalConversationRepo.getConversation(conversationId) + ChatKitClient.logger?.debug(`${LocalConversationViewModel.logTag} updateConversationById ${newConversation?.conversationId} name = ${newConversation?.name}`) + if (newConversation) { + const index = this.conversationList?.findIndex(e => e.conversationId === newConversation.conversationId) + if (index !== undefined && this.conversationList) { + this.conversationList[index] = newConversation + } + } + } + + //添加群会话 + async addTeamConversation(conversation: V2NIMLocalConversation) { + let teamId: string = ChatKitClient.nim.conversationIdUtil.parseConversationTargetId(conversation.conversationId) + //添加之前判断是否合法team + let team = await TeamRepo.getTeamInfo(teamId, V2NIMTeamType.V2NIM_TEAM_TYPE_NORMAL) + if (team?.isValidTeam) { + let existConversation: V2NIMLocalConversation | undefined = + this.conversationList?.find((m) => m.conversationId === conversation.conversationId) + //如果已经存在,则不处理 + if (existConversation) { + return + } + this.conversationList?.push(...[conversation]) + this.conversationList?.sort((a, b) => this.sortConversation(a, b)) + } else { + this.deleteConversation(conversation.conversationId) + } + } + + /** + * 删除会话 + * @param conversationId + */ + async deleteConversation(conversationId: string) { + await LocalConversationRepo.deleteConversation(conversationId) + //无论成功与否UI都删 + this.conversationList = this.conversationList?.filter((m) => m.conversationId !== conversationId) + } + + /** + * 请求回话列表 + * @param offset + */ + async loadConversation(offset?: number) { + try { + if (!this.conversationList) { + this.conversationList = [] + } + console.debug(`Performance Test start loadLocalConversation`) + if (offset === 0) { + this.conversationList?.splice(0, this.conversationList.length); + } + const result = await LocalConversationRepo.getConversationList(offset ?? this.offset, this.limit) + if (result != null) { + if (offset === 0) { + this.conversationList?.splice(0, this.conversationList.length); + } + this.offset = result.offset + this.isFinished = result.finished + let newConversation = result.conversationList + if (this.conversationList.length > 0 && newConversation.length > 0) { + this.conversationList = + this.conversationList.filter(conversation => !newConversation.find((m) => m.conversationId === + conversation.conversationId)) + } + this.conversationList?.push(...newConversation) + this.conversationList?.sort((a, b) => this.sortConversation(a, b)) + this.isFinishedSyncLoad = true + console.debug(`Performance Test finish loadLocalConversation`) + } + } catch (e) { + + } + + } +} \ No newline at end of file diff --git a/localconversationkit_ui/src/main/module.json5 b/localconversationkit_ui/src/main/module.json5 new file mode 100644 index 0000000..129d63e --- /dev/null +++ b/localconversationkit_ui/src/main/module.json5 @@ -0,0 +1,12 @@ +{ + "module": { + "routerMap": "$profile:route_map", + "name": "localconversationkit_ui", + "type": "har", + "deviceTypes": [ + "phone", + "tablet", + "2in1" + ] + } +} \ No newline at end of file diff --git a/localconversationkit_ui/src/main/resources/base/element/float.json b/localconversationkit_ui/src/main/resources/base/element/float.json new file mode 100644 index 0000000..ada0270 --- /dev/null +++ b/localconversationkit_ui/src/main/resources/base/element/float.json @@ -0,0 +1,48 @@ +{ + "float": [ + { + "name": "flexible_left_item_height", + "value": "20vp" + }, + { + "name": "flexible_left_item_width", + "value": "96vp" + }, + { + "name": "flexible_right_item_height", + "value": "20vp" + }, + { + "name": "flexible_right_item_width", + "value": "36vp" + }, + { + "name": "flexible_item_height", + "value": "60vp" + }, + { + "name": "flexible_left_item_border_radius", + "value": "2vp" + }, + { + "name": "flexible_right_item_border_radius", + "value": "12vp" + }, + { + "name": "flexible_item_border_radius", + "value": "24vp" + }, + { + "name": "flexible_item_padding_left", + "value": "12vp" + }, + { + "name": "flexible_item_padding_right", + "value": "12vp" + }, + { + "name": "slider_width", + "value": "300vp" + } + ] +} \ No newline at end of file diff --git a/localconversationkit_ui/src/main/resources/base/element/string.json b/localconversationkit_ui/src/main/resources/base/element/string.json new file mode 100644 index 0000000..ad31be8 --- /dev/null +++ b/localconversationkit_ui/src/main/resources/base/element/string.json @@ -0,0 +1,40 @@ +{ + "string": [ + { + "name": "conversation_title", + "value": "云信 Demo" + }, + { + "name": "stick_top_conversation", + "value": "置顶该聊天" + }, + { + "name": "unstick_top_conversation", + "value": "取消置顶" + }, + { + "name": "delete_conversation", + "value": "删除该聊天" + }, + { + "name": "add_friend", + "value": "添加好友" + }, + { + "name": "create_discuss_team", + "value": "创建讨论组" + }, + { + "name": "create_advance_team", + "value": "创建高级群" + }, + { + "name": "pull_up_load_text", + "value": "上拉加载更多" + }, + { + "name": "createAdvancedTeamSuccess", + "value": "成功创建高级群" + } + ] +} diff --git a/localconversationkit_ui/src/main/resources/base/media/brand.png b/localconversationkit_ui/src/main/resources/base/media/brand.png new file mode 100644 index 0000000000000000000000000000000000000000..e1d8418c154d55f627bd9ec29a1577b2af69409d GIT binary patch literal 5263 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/localconversationkit_ui/src/main/resources/base/media/friend_add.svg b/localconversationkit_ui/src/main/resources/base/media/friend_add.svg new file mode 100644 index 0000000..1480c6c --- /dev/null +++ b/localconversationkit_ui/src/main/resources/base/media/friend_add.svg @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/localconversationkit_ui/src/main/resources/base/media/team_advance.svg b/localconversationkit_ui/src/main/resources/base/media/team_advance.svg new file mode 100644 index 0000000..275117a --- /dev/null +++ b/localconversationkit_ui/src/main/resources/base/media/team_advance.svg @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/localconversationkit_ui/src/main/resources/base/media/team_discuss.svg b/localconversationkit_ui/src/main/resources/base/media/team_discuss.svg new file mode 100644 index 0000000..ec03317 --- /dev/null +++ b/localconversationkit_ui/src/main/resources/base/media/team_discuss.svg @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/localconversationkit_ui/src/main/resources/base/profile/route_map.json b/localconversationkit_ui/src/main/resources/base/profile/route_map.json new file mode 100644 index 0000000..611cd9b --- /dev/null +++ b/localconversationkit_ui/src/main/resources/base/profile/route_map.json @@ -0,0 +1,12 @@ +{ + "routerMap": [ + { + "name": "LocalConversationPage", + "pageSourceFile": "src/main/ets/pages/LocalConversationPage.ets", + "buildFunction": "LocalConversationPageBuilder", + "data": { + "description": "this is Conversation list page" + } + } + ] +} \ No newline at end of file diff --git a/localconversationkit_ui/src/main/resources/en_US/element/string.json b/localconversationkit_ui/src/main/resources/en_US/element/string.json new file mode 100644 index 0000000..ad31be8 --- /dev/null +++ b/localconversationkit_ui/src/main/resources/en_US/element/string.json @@ -0,0 +1,40 @@ +{ + "string": [ + { + "name": "conversation_title", + "value": "云信 Demo" + }, + { + "name": "stick_top_conversation", + "value": "置顶该聊天" + }, + { + "name": "unstick_top_conversation", + "value": "取消置顶" + }, + { + "name": "delete_conversation", + "value": "删除该聊天" + }, + { + "name": "add_friend", + "value": "添加好友" + }, + { + "name": "create_discuss_team", + "value": "创建讨论组" + }, + { + "name": "create_advance_team", + "value": "创建高级群" + }, + { + "name": "pull_up_load_text", + "value": "上拉加载更多" + }, + { + "name": "createAdvancedTeamSuccess", + "value": "成功创建高级群" + } + ] +} diff --git a/localconversationkit_ui/src/main/resources/zh_CN/element/string.json b/localconversationkit_ui/src/main/resources/zh_CN/element/string.json new file mode 100644 index 0000000..ad31be8 --- /dev/null +++ b/localconversationkit_ui/src/main/resources/zh_CN/element/string.json @@ -0,0 +1,40 @@ +{ + "string": [ + { + "name": "conversation_title", + "value": "云信 Demo" + }, + { + "name": "stick_top_conversation", + "value": "置顶该聊天" + }, + { + "name": "unstick_top_conversation", + "value": "取消置顶" + }, + { + "name": "delete_conversation", + "value": "删除该聊天" + }, + { + "name": "add_friend", + "value": "添加好友" + }, + { + "name": "create_discuss_team", + "value": "创建讨论组" + }, + { + "name": "create_advance_team", + "value": "创建高级群" + }, + { + "name": "pull_up_load_text", + "value": "上拉加载更多" + }, + { + "name": "createAdvancedTeamSuccess", + "value": "成功创建高级群" + } + ] +} diff --git a/localconversationkit_ui/src/test/List.test.ets b/localconversationkit_ui/src/test/List.test.ets new file mode 100644 index 0000000..5a7099d --- /dev/null +++ b/localconversationkit_ui/src/test/List.test.ets @@ -0,0 +1,12 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import localUnitTest from './LocalUnit.test'; + +export default function testsuite() { + localUnitTest(); +} \ No newline at end of file diff --git a/localconversationkit_ui/src/test/LocalUnit.test.ets b/localconversationkit_ui/src/test/LocalUnit.test.ets new file mode 100644 index 0000000..c7f1321 --- /dev/null +++ b/localconversationkit_ui/src/test/LocalUnit.test.ets @@ -0,0 +1,40 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import { afterAll, afterEach, beforeAll, beforeEach, describe, expect, it } from '@ohos/hypium'; + +export default function localUnitTest() { + describe('localUnitTest', () => { + // Defines a test suite. Two parameters are supported: test suite name and test suite function. + beforeAll(() => { + // Presets an action, which is performed only once before all test cases of the test suite start. + // This API supports only one parameter: preset action function. + }); + beforeEach(() => { + // Presets an action, which is performed before each unit test case starts. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: preset action function. + }); + afterEach(() => { + // Presets a clear action, which is performed after each unit test case ends. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: clear action function. + }); + afterAll(() => { + // Presets a clear action, which is performed after all test cases of the test suite end. + // This API supports only one parameter: clear action function. + }); + it('assertContain', 0, () => { + // Defines a test case. This API supports three parameters: test case name, filter parameter, and test case function. + let a = 'abc'; + let b = 'b'; + // Defines a variety of assertion methods, which are used to declare expected boolean conditions. + expect(a).assertContain(b); + expect(a).assertEqual(a); + }); + }); +} \ No newline at end of file diff --git a/oh-package.json5 b/oh-package.json5 index 737cde9..2f5b43a 100644 --- a/oh-package.json5 +++ b/oh-package.json5 @@ -7,7 +7,8 @@ }, "devDependencies": { "@ohos/hypium": "1.0.21", - "@ohos/hamock": "1.0.0" + "@ohos/hamock": "1.0.0", + "@nimsdk/vendor": "1.0.0" }, "dynamicDependencies": {} } \ No newline at end of file diff --git a/products/expert/oh-package.json5 b/products/expert/oh-package.json5 index 2343fee..be8bcb6 100644 --- a/products/expert/oh-package.json5 +++ b/products/expert/oh-package.json5 @@ -17,6 +17,17 @@ "@polyvharmony/media-player-sdk-addon-cache-down": "2.5.0", "@polyvharmony/httpdns-api": "1.0.2", "@polyvharmony/httpdns-impl-local": "1.0.2", - "@polyvharmony/httpdns-impl-ali": "1.0.2" + "@polyvharmony/httpdns-impl-ali": "1.0.2", + "@nimsdk/conversation": "10.9.10", + "@nimsdk/localconversation": "10.9.10", + "@nimsdk/message": "10.9.10", + "@nimsdk/team": "10.9.10", + "@nimsdk/user": "10.9.10", + "@nimsdk/friend": "10.9.10", + "@nimsdk/nim": "10.9.10", + "@nimsdk/base": "10.9.10", + "@nimkit/corekit": "file:../../corekit", + '@nimkit/chatkit': "file:../../chatkit", + 'netease': "file:../../features/netease" } } \ No newline at end of file diff --git a/products/expert/src/main/ets/constants/AppConfig.ets b/products/expert/src/main/ets/constants/AppConfig.ets new file mode 100644 index 0000000..821b6cc --- /dev/null +++ b/products/expert/src/main/ets/constants/AppConfig.ets @@ -0,0 +1,22 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import { preferenceStore,BasicConstant } from '@itcast/basic' + +export class AppConfig { + // appKey 和 userName 在网易云信控制台获取 + // appKey 网易云信应用appkey + // public static appKey: string = '885dea390870814acf3ba8558c717572' + // // userName 网易云信应用下账号ID + // public static userId: string = 'ga5lemoxchskxmrqfnl' + // // userName 网易云信应用下账号Token + // public static userToken: string = '81900d287f6102fca1b27ae0302a2633' + public static appKey: string = '885dea390870814acf3ba8558c717572' + // userName 网易云信应用下账号ID + public static userId: string = preferenceStore.getItemString(BasicConstant.YX_accid) + // userName 网易云信应用下账号Token + public static userToken: string = preferenceStore.getItemString(BasicConstant.YX_token) +} \ No newline at end of file diff --git a/products/expert/src/main/ets/constants/IMBackgroundTask.ets b/products/expert/src/main/ets/constants/IMBackgroundTask.ets new file mode 100644 index 0000000..af55871 --- /dev/null +++ b/products/expert/src/main/ets/constants/IMBackgroundTask.ets @@ -0,0 +1,70 @@ +/** + * IMBackgroundTask + * NIM-WS-TS + * + * @author hongru + * @since 2025−04-17 + * + * Copyright © 2025 Netease. All rights reserved. + */ + +import { backgroundTaskManager } from "@kit.BackgroundTasksKit"; +import { BusinessError } from "@kit.BasicServicesKit"; + +const TAG = '[IMBackgroundTask]' + +export class IMBackgroundTask { + private taskId?: number // 申请短期任务ID + private delayTime?: number; // 本次申请短时任务的剩余时间 + + private static instance: IMBackgroundTask; + + public static getInstance(): IMBackgroundTask { + if (!IMBackgroundTask.instance) { + IMBackgroundTask.instance = new IMBackgroundTask(); + } + return IMBackgroundTask.instance; + } + + constructor() { + } + // 申请短时任务 + requestSuspendDelay() { + try { + console.info(TAG, 'requestSuspendDelay') + let myReason = 'data storage request suspend delay'; // 申请原因 + let delayInfo = backgroundTaskManager.requestSuspendDelay(myReason, () => { + // 回调函数。应用申请的短时任务即将超时,通过此函数回调应用,执行一些清理和标注工作,并取消短时任务 + console.info(TAG, 'suspend delay task will timeout'); + if (this.taskId) { + backgroundTaskManager.cancelSuspendDelay(this.taskId); + } + }) + + this.taskId = delayInfo.requestId; + this.delayTime = delayInfo.actualDelayTime; + console.info(TAG, `requestSuspendDelay id: ${delayInfo.requestId} time: ${delayInfo.actualDelayTime}`) + } catch (e) { + console.warn(TAG, 'requestSuspendDelay failed', e) + } + } + + async getRemainingDelayTime() { + backgroundTaskManager.getRemainingDelayTime(this.taskId).then((res: number) => { + console.info(TAG, 'Succeeded in getting remaining delay time.', res); + }).catch((err: BusinessError) => { + console.error(TAG, `Failed to get remaining delay time. Code: ${err.code}, message: ${err.message}`); + }) + } + + cancelSuspendDelay() { + try { + if (this.taskId) { + console.info(TAG, 'cancelSuspendDelay') + backgroundTaskManager.cancelSuspendDelay(this.taskId); + } + } catch (e) { + console.warn(TAG, 'cancelSuspendDelay failed', e) + } + } +} \ No newline at end of file diff --git a/products/expert/src/main/ets/constants/RouteConstants.ets b/products/expert/src/main/ets/constants/RouteConstants.ets new file mode 100644 index 0000000..c26d548 --- /dev/null +++ b/products/expert/src/main/ets/constants/RouteConstants.ets @@ -0,0 +1,24 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +/** + * Route constants for Router. + */ +export class RouteConstants { + /** + * Route of page for the ResponsiveLayout. + */ + static readonly RESPONSIVE_ROUTE: string = 'pages/ResponsiveIndex'; + /** + * Route of page for the AdaptiveLayout. + */ + static readonly ADAPTIVE_ROUTE: string = 'pages/AdaptiveIndex'; + /** + * Route of page for the SystemCapabilities. + */ + static readonly SYSTEM_CAPABILITIES_ROUTE: string = 'pages/SystemCapabilitiesIndex'; +} \ No newline at end of file diff --git a/products/expert/src/main/ets/entryability/NimRepository.ets b/products/expert/src/main/ets/entryability/NimRepository.ets new file mode 100644 index 0000000..637bdc8 --- /dev/null +++ b/products/expert/src/main/ets/entryability/NimRepository.ets @@ -0,0 +1,150 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ + +import common from '@ohos.app.ability.common' +import { LogLevel, NIMInitializeOptions, NIMInterface, NIMServiceOptions, + V2NIMEnableServiceType, + V2NIMProvidedServiceType } from '@nimsdk/base' +import { NIMSdk } from '@nimsdk/nim' +import { V2NIMTeamServiceImpl } from '@nimsdk/team' +import { V2NIMConversationServiceImpl } from '@nimsdk/conversation' +import { V2NIMUserServiceImpl } from '@nimsdk/user' +import { V2NIMFriendServiceImpl } from '@nimsdk/friend' +import { V2NIMClientAntispamUtil, V2NIMMessageServiceImpl } from '@nimsdk/message' +import { AppConfig } from '../constants/AppConfig' +import { ChatKitClient, IMKitConfigCenter } from '@nimkit/chatkit' +import { router } from '@kit.ArkUI' +import { IMSDKConfigManager } from '../manager/IMSDKConfigManager' +import { V2NIMLocalConversationServiceImpl } from '@nimsdk/localconversation' + +export class NimRepository { + private static instance?: NimRepository + private _context: common.Context + + constructor(context: common.Context) { + this._context = context + } + + private _nim: NIMInterface | undefined + + public get nim(): NIMInterface { + if (!this._nim) { + this.createDefaultNim(this._context) + } + + return this._nim! + } + + public static getInstance(context: common.Context): NimRepository { + if (!NimRepository.instance) { + NimRepository.instance = new NimRepository(context) + NimRepository.instance.nim + } + return NimRepository.instance + } + + async login(accountId: string, token: string, appKey: string) { + try { + console.debug(`Performance Test im start loginSuccess`) + await this.nim.loginService.login(accountId, token); + console.error('----------- 登录成功 -----------') + router.pushUrl({ + url: 'pages/Netease/imTabPage' + }); + console.debug(`Performance Test im loginSuccess`) + + ChatKitClient.init(this.nim, appKey) + + + } catch (error) { + console.error('----------- 登录失败 -----------', error) + throw error as Error + } + } + + createDefaultNim(context: common.Context) { + console.warn('------------- 创建NIM实例 --------------') + + let initializeOptions: NIMInitializeOptions = { + appkey: AppConfig.appKey, + } + + let serviceOptions: NIMServiceOptions = { + loginServiceConfig: {}, + } + + + // 正式服 + initializeOptions = { + appkey: AppConfig.appKey, + logLevel: LogLevel.Debug, + // ...其他属性 + }; + + const customConfig = IMSDKConfigManager.getConfig() + if (customConfig?.enableCustomConfig) { + if (customConfig.configOptions) { + serviceOptions = customConfig.configOptions + let appKey = serviceOptions.databaseServiceConfig?.appKey + if (appKey) { + initializeOptions.appkey = appKey + } + } + } else { + serviceOptions = { + loginServiceConfig: { + lbsUrls: ['https://lbs.netease.im/lbs/webconf.jsp'], + linkUrl: 'weblink.netease.im:443' + //lbsUrls: ['https://imtest.netease.im/lbs/webconf'], + //linkUrl: 'imtest-jd.netease.im:8091' + }, + pushServiceConfig: { + harmonyCertificateName: "DEMO_HMOS_PUSH" + }, + databaseServiceConfig: { + encrypt: false, + appKey: AppConfig.appKey, + } + } + } + + this.initNim(initializeOptions, serviceOptions) + console.log("net ease nim from createDefaultNim: " + this._nim) + } + + initNim(initializeOptions: NIMInitializeOptions, serviceOptions?: NIMServiceOptions) { + + NIMSdk.registerCustomServices(V2NIMProvidedServiceType.V2NIM_PROVIDED_SERVICE_TEAM, + (core, serviceName, serviceConfig) => new V2NIMTeamServiceImpl(core, serviceName, serviceConfig)) + NIMSdk.registerCustomServices(V2NIMProvidedServiceType.V2NIM_PROVIDED_SERVICE_CLIENT_ANTISPAM_UTIL, + (core, serviceName, serviceConfig) => new V2NIMClientAntispamUtil(core, serviceName, serviceConfig)); + // if (IMKitConfigCenter.enableLocalConversation) { + NIMSdk.registerCustomServices(V2NIMProvidedServiceType.V2NIM_PROVIDED_SERVICE_LOCAL_CONVERSATION, + (core, serviceName, serviceConfig) => new V2NIMLocalConversationServiceImpl(core, serviceName, serviceConfig)); + // } else { + // NIMSdk.registerCustomServices(V2NIMProvidedServiceType.V2NIM_PROVIDED_SERVICE_CONVERSATION, + // (core, serviceName, serviceConfig) => new V2NIMConversationServiceImpl(core, serviceName, serviceConfig)); + // } + NIMSdk.registerCustomServices(V2NIMProvidedServiceType.V2NIM_PROVIDED_SERVICE_MESSAGE, + (core, serviceName, serviceConfig) => new V2NIMMessageServiceImpl(core, serviceName, serviceConfig)); + NIMSdk.registerCustomServices(V2NIMProvidedServiceType.V2NIM_PROVIDED_SERVICE_USER, + (core, serviceName, serviceConfig) => new V2NIMUserServiceImpl(core, serviceName, serviceConfig)); + NIMSdk.registerCustomServices(V2NIMProvidedServiceType.V2NIM_PROVIDED_SERVICE_FRIEND, + (core, serviceName, serviceConfig) => new V2NIMFriendServiceImpl(core, serviceName, serviceConfig)); + initializeOptions.isOpenConsoleLog = true + this._nim = NIMSdk.newInstance(this._context, initializeOptions, serviceOptions) + console.log("nim from initNim: " + this._nim) + } + + isLocalConversation(): boolean { + if (this._nim?.isServiceEnable(V2NIMEnableServiceType.LOCAL_CONVERSATION)) { + return true + } + + return false + } +} \ No newline at end of file diff --git a/products/expert/src/main/ets/manager/IMSDKConfigManager.ets b/products/expert/src/main/ets/manager/IMSDKConfigManager.ets new file mode 100644 index 0000000..c3c9bdb --- /dev/null +++ b/products/expert/src/main/ets/manager/IMSDKConfigManager.ets @@ -0,0 +1,62 @@ +/* + * Copyright (c) 2022 NetEase, Inc. All rights reserved. + * Use of this source code is governed by a MIT license that can be + * found in the LICENSE file. + * + */ +import fs from '@ohos.file.fs'; +import { NIMServiceOptions } from '@nimsdk/base'; + +export class IMSDKConfigModel { + configOptions?: NIMServiceOptions + customJson?: string + enableCustomConfig: boolean = false + accountId?: string + accountIdToken?: string +} + +export class IMSDKConfigManager { + static configModel?: IMSDKConfigModel + static fileName = 'sdk_config' + + /// 保存私有化配置 + static saveConfig(model: IMSDKConfigModel) { + IMSDKConfigManager.clearConfig() + IMSDKConfigManager.configModel = model + + let path = getContext().filesDir + '/' + IMSDKConfigManager.fileName + // 新建并打开文件 + let file = fs.openSync(path, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE); + // 写入一段内容至文件 + fs.writeSync(file.fd, JSON.stringify(model)); + // 关闭文件 + fs.closeSync(file); + } + + /// 获取私有化配置 + static getConfig() { + if (IMSDKConfigManager.configModel) { + return IMSDKConfigManager.configModel + } + + let path = getContext().filesDir + '/' + IMSDKConfigManager.fileName + if (fs.accessSync(path)) { + const line = fs.readTextSync(path) + const data = JSON.parse(line) as IMSDKConfigModel + if (data) { + IMSDKConfigManager.configModel = data + return data + } + } + return undefined + } + + /// 删除配置 + static clearConfig() { + let path = getContext().filesDir + '/' + IMSDKConfigManager.fileName + if (fs.accessSync(path)) { + fs.unlinkSync(path) + } + IMSDKConfigManager.configModel = undefined + } +} \ No newline at end of file diff --git a/products/expert/src/main/ets/pages/Home.ets b/products/expert/src/main/ets/pages/Home.ets index d48ecdf..a74fafe 100644 --- a/products/expert/src/main/ets/pages/Home.ets +++ b/products/expert/src/main/ets/pages/Home.ets @@ -3,6 +3,8 @@ import { BasicConstant, themeManager } from '@itcast/basic'; import { emitter } from '@kit.BasicServicesKit'; import { common } from '@kit.AbilityKit'; import { promptAction } from '@kit.ArkUI'; +import { NimRepository } from '../entryability/NimRepository' +import { AppConfig } from '../constants/AppConfig' @Entry @Component @@ -11,12 +13,23 @@ struct Home { @Watch('onChangeIndex') activeIndex: number = 0 + + login = async (accountId: string, token: string) => { + const nimRepository = NimRepository.getInstance(getContext(this)) + try { + await nimRepository.login(accountId, token, AppConfig.appKey) + } catch (err) { + + } + } + aboutToAppear(): void { emitter.on({ eventId: 10000 }, (e) => { if (e.data && e.data.activeIndex) { this.activeIndex = e.data.activeIndex } }) + this.login(AppConfig.userId, AppConfig.userToken)//暂时隐蔽云信登录 } onChangeIndex() { diff --git a/products/expert/src/main/ets/pages/LoginPage/LoginPage.ets b/products/expert/src/main/ets/pages/LoginPage/LoginPage.ets index 9d39f95..16171e6 100644 --- a/products/expert/src/main/ets/pages/LoginPage/LoginPage.ets +++ b/products/expert/src/main/ets/pages/LoginPage/LoginPage.ets @@ -1,13 +1,31 @@ import { LoginComp } from 'register' - +import { NimRepository } from '../../entryability/NimRepository' +import { AppConfig } from '../../constants/AppConfig' @Entry @Component struct LoginPage { + + @State + @Watch('onLogins') + logins: boolean=false + login = async (accountId: string, token: string) => { + const nimRepository = NimRepository.getInstance(getContext(this)) + try { + await nimRepository.login(accountId, token, AppConfig.appKey) + } catch (err) { + + } + } build() { Column() { - LoginComp() + LoginComp({ loginstatus: this.logins }) } } + onLogins() + { + + this.login(AppConfig.userId, AppConfig.userToken) + } } diff --git a/products/expert/src/main/ets/pages/Netease/ConsultationDetailPage.ets b/products/expert/src/main/ets/pages/Netease/ConsultationDetailPage.ets new file mode 100644 index 0000000..18ed410 --- /dev/null +++ b/products/expert/src/main/ets/pages/Netease/ConsultationDetailPage.ets @@ -0,0 +1,17 @@ +import { router } from '@kit.ArkUI' +import { ConsultationDetailComp } from 'netease' +@Entry +@Component +struct ConsultationDetailPage { + + // @State params:Record = router.getParams() as Record; + build() { + RelativeContainer() { + ConsultationDetailComp() + } + .height('100%') + .width('100%') + } + + +} \ No newline at end of file diff --git a/products/expert/src/main/ets/pages/Netease/InterrogationDetailCompPage.ets b/products/expert/src/main/ets/pages/Netease/InterrogationDetailCompPage.ets new file mode 100644 index 0000000..b25f291 --- /dev/null +++ b/products/expert/src/main/ets/pages/Netease/InterrogationDetailCompPage.ets @@ -0,0 +1,15 @@ +import { InterrogationDetailComp } from 'netease' + +@Entry +@Component +struct InterrogationDetailCompPage { + + + build() { + RelativeContainer() { + InterrogationDetailComp() + } + .height('100%') + .width('100%') + } +} \ No newline at end of file diff --git a/products/expert/src/main/ets/pages/Netease/MyOpinionPage.ets b/products/expert/src/main/ets/pages/Netease/MyOpinionPage.ets new file mode 100644 index 0000000..1f9994e --- /dev/null +++ b/products/expert/src/main/ets/pages/Netease/MyOpinionPage.ets @@ -0,0 +1,15 @@ +import { MyOpinionComp } from 'netease' + +@Entry +@Component +struct MyOpinionPage { + + + build() { + RelativeContainer() { + MyOpinionComp() + } + .height('100%') + .width('100%') + } +} \ No newline at end of file diff --git a/products/expert/src/main/ets/pages/Netease/PatientSimplyPage.ets b/products/expert/src/main/ets/pages/Netease/PatientSimplyPage.ets new file mode 100644 index 0000000..e8f2df0 --- /dev/null +++ b/products/expert/src/main/ets/pages/Netease/PatientSimplyPage.ets @@ -0,0 +1,15 @@ +import { PatientSimplyComp } from 'netease' + +@Entry +@Component +struct PatientSimplyPage { + + + build() { + RelativeContainer() { + PatientSimplyComp() + } + .height('100%') + .width('100%') + } +} \ No newline at end of file diff --git a/products/expert/src/main/ets/pages/Netease/PreviewPhotoPage.ets b/products/expert/src/main/ets/pages/Netease/PreviewPhotoPage.ets new file mode 100644 index 0000000..b62ab20 --- /dev/null +++ b/products/expert/src/main/ets/pages/Netease/PreviewPhotoPage.ets @@ -0,0 +1,16 @@ +import { PreviewPhotos } from '@itcast/basic'; +// import { PreviewPhoto } from 'netease'; + +@Entry +@Component +struct PreviewPhotoPage { + @State message: string = 'Hello World'; + + build() { + RelativeContainer() { + PreviewPhotos() + } + .height('100%') + .width('100%') + } +} \ No newline at end of file diff --git a/products/expert/src/main/ets/pages/Netease/PublicConsultationPage.ets b/products/expert/src/main/ets/pages/Netease/PublicConsultationPage.ets new file mode 100644 index 0000000..a901e5f --- /dev/null +++ b/products/expert/src/main/ets/pages/Netease/PublicConsultationPage.ets @@ -0,0 +1,35 @@ +import { TabBarConsultationComp } from 'netease'; +@Entry +@Component +struct PublicConsultationPage { + + + @State + @Watch('onChangeIndex') + activeIndex: number = 0 + + aboutToAppear(): void { + + } + + onChangeIndex() { + } + onPageShow(): void { + this.onChangeIndex() + } + onPageHide(): void { + + this.onChangeIndex() + } + build() { + + Flex() { + TabBarConsultationComp({ activeIndex: this.activeIndex}) + } + .backgroundColor($r('app.color.white')) + // .backgroundColor(Color.Red) + // .height('100%') + // .width('100%') + + } +} \ No newline at end of file diff --git a/products/expert/src/main/ets/pages/Netease/imTabPage.ets b/products/expert/src/main/ets/pages/Netease/imTabPage.ets new file mode 100644 index 0000000..56f3385 --- /dev/null +++ b/products/expert/src/main/ets/pages/Netease/imTabPage.ets @@ -0,0 +1,37 @@ +import { TabBarComp } from 'netease'; +@Entry +@Component +struct ImTabPage { + pathStack: NavPathStack = new NavPathStack() + + @State + @Watch('onChangeIndex') + activeIndex: number = 0 + + aboutToAppear(): void { + // this.pathStack.pushPath({ name: "ChatP2PPage", param:'111111111234' }) + } + + onChangeIndex() { + } + onPageShow(): void { + this.onChangeIndex() + } + onPageHide(): void { + + this.onChangeIndex() + } + build() { + Navigation(this.pathStack) { + Flex() { + TabBarComp({ activeIndex: this.activeIndex, pathStack: this.pathStack}) + } + .backgroundColor($r('app.color.white')) + // .backgroundColor(Color.Red) + // .height('100%') + // .width('100%') + } + .mode(NavigationMode.Auto) + .hideTitleBar(true) + } +} \ No newline at end of file diff --git a/products/expert/src/main/ets/pages/Tabbar/TabBarComp.ets b/products/expert/src/main/ets/pages/Tabbar/TabBarComp.ets index 804d6c2..bd4d48e 100644 --- a/products/expert/src/main/ets/pages/Tabbar/TabBarComp.ets +++ b/products/expert/src/main/ets/pages/Tabbar/TabBarComp.ets @@ -4,6 +4,7 @@ import { TabBarCompModel } from '../../models/TabBarCompModel' import { TabBarItems } from '../../contants/TabBarItems' import { BasicConstant,AESEncryptionDecryption,authStore,preferenceStore } from '@itcast/basic' import mediaquery from '@ohos.mediaquery'; +import { MessageComp } from 'netease' @Component export struct TabBarComp { diff --git a/products/expert/src/main/resources/base/profile/main_pages.json b/products/expert/src/main/resources/base/profile/main_pages.json index 055691d..3c47502 100644 --- a/products/expert/src/main/resources/base/profile/main_pages.json +++ b/products/expert/src/main/resources/base/profile/main_pages.json @@ -27,6 +27,13 @@ "pages/VideoPage/VideoGandanPage", "pages/VideoPage/CommentReplyPage", "pages/SearchPage/VideoSearchPage", - "pages/VideoPage/VideoSelectedPage" + "pages/VideoPage/VideoSelectedPage", + "pages/Netease/imTabPage", + "pages/Netease/PublicConsultationPage", + "pages/Netease/ConsultationDetailPage", + "pages/Netease/PreviewPhotoPage", + "pages/Netease/InterrogationDetailCompPage", + "pages/Netease/PatientSimplyPage", + "pages/Netease/MyOpinionPage" ] } \ No newline at end of file