diff --git a/frameworks/native/appkit/app/main_thread.cpp b/frameworks/native/appkit/app/main_thread.cpp index 4885026ba59a660031337496a0781aa40011e2f8..091a1c2429468f9758e0c2c3a4dc10461f244ee1 100644 --- a/frameworks/native/appkit/app/main_thread.cpp +++ b/frameworks/native/appkit/app/main_thread.cpp @@ -1770,7 +1770,8 @@ void MainThread::HandleLaunchApplication(const AppLaunchData &appLaunchData, con for (auto& runtime : runtimes) { application_->AddRuntime(std::move(runtime)); } - if (appInfo.codeLanguage == AbilityRuntime::APPLICAITON_CODE_LANGUAGE_ARKTS_1_2) { + if (appInfo.codeLanguage == AbilityRuntime::APPLICAITON_CODE_LANGUAGE_ARKTS_1_2 || + appInfo.codeLanguage == AbilityRuntime::APPLICAITON_CODE_LANGUAGE_ARKTS_HYBRID) { application_->InitAniApplicationContext(); application_->InitAniContext(); } @@ -1793,7 +1794,6 @@ void MainThread::HandleLaunchApplication(const AppLaunchData &appLaunchData, con #ifdef CJ_FRONTEND if (!isCJApp) { #endif - auto &runtime = application_->GetRuntime(appInfo.codeLanguage); if (application_ != nullptr) { TAG_LOGE(AAFwkTag::APPKIT, "main_thread bundleName is %{public}s", appInfo.bundleName.c_str()); @@ -1801,6 +1801,11 @@ void MainThread::HandleLaunchApplication(const AppLaunchData &appLaunchData, con LoadAllExtensions(); } if (appInfo.codeLanguage == AbilityRuntime::APPLICAITON_CODE_LANGUAGE_ARKTS_1_0) { + auto &runtime = application_->GetRuntime(AbilityRuntime::APPLICAITON_CODE_LANGUAGE_ARKTS_1_0); + if (runtime == nullptr) { + TAG_LOGE(AAFwkTag::APPKIT, "null runtime"); + return; + } auto &jsEngine = (static_cast(*runtime)).GetNativeEngine(); IdleTimeCallback callback = [wpApplication](int32_t idleTime) { auto app = wpApplication.lock(); @@ -1825,7 +1830,8 @@ void MainThread::HandleLaunchApplication(const AppLaunchData &appLaunchData, con auto helper = std::make_shared(application_); helper->SetAppFreezeFilterCallback(); } - if (appInfo.codeLanguage == AbilityRuntime::APPLICAITON_CODE_LANGUAGE_ARKTS_1_2) { + if (appInfo.codeLanguage == AbilityRuntime::APPLICAITON_CODE_LANGUAGE_ARKTS_1_2 || + appInfo.codeLanguage == AbilityRuntime::APPLICAITON_CODE_LANGUAGE_ARKTS_HYBRID) { auto& runtime = application_->GetRuntime(AbilityRuntime::APPLICAITON_CODE_LANGUAGE_ARKTS_1_2); if (runtime == nullptr) { TAG_LOGE(AAFwkTag::APPKIT, "null runtime");