From: Caisking <3449750381@qq.com> Date: Sat, 31 Aug 2024 07:24:31 +0000 (+0800) Subject: 修复训练动画的内存泄漏 X-Git-Tag: release_V1.2.70_20241020_135402~545^2~6 X-Git-Url: http://git.snicker.com.cn/css/static/gitweb.css?a=commitdiff_plain;h=refs%2Fchanges%2F846%2F1;p=mirrors%2FFD230.git 修复训练动画的内存泄漏 --- diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_card/include/TraingCardView.h b/code/sdk/application/wearable/fd230app/nativeui/traing/training_card/include/TraingCardView.h index a98a15120..bf3e671fb 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_card/include/TraingCardView.h +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_card/include/TraingCardView.h @@ -137,6 +137,7 @@ namespace OHOS std::string winbasePath; const char **winimagePaths; + ImageAnimatorInfo *winimageAnimatorInfo{nullptr}; }; } // namespace OHOS #endif // TraingCard_PRESENTER_H diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_card/src/TraingCardView.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/training_card/src/TraingCardView.cpp index aa5f4f5be..c34330faf 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_card/src/TraingCardView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_card/src/TraingCardView.cpp @@ -181,6 +181,8 @@ namespace OHOS buttonnote_ = nullptr; /*动画*/ + FreeImagePathsArray(winimagePaths, 94); + ReleaseImageAnimatorSource(winimageAnimatorInfo,94); imageAnimator->Stop(); delete imageAnimator; imageAnimator = nullptr; @@ -490,7 +492,7 @@ namespace OHOS // 初始化图片数组以及动画 winbasePath = "/user/res/Training/training_GIF/win/"; winimagePaths = CreateImagePathsArray(winbasePath.c_str(), 94); - InitImageAnimatorSource(imageAnimator, winimagePaths, 94, 173, 100, 120, 120, "imageAnimator1", 10); + InitImageAnimatorSource(imageAnimator, winimageAnimatorInfo, winimagePaths, 94, 173, 100, 120, 120, "imageAnimator1", 10); getView->Add(imageAnimator); }