Not Get Correct Culture In Packaged Game

I setup two localization cultures: en and zh. My OS is win10 zh-tw.

I found that in standalone game, the culture of the language is set correctly, in my case zh.
However in packaged game, the culture is incorrect, as en.

After tracing back the code, I found in FICUInternationalization::InitializeAvailableCultures,
icu::Locale::getAvailableLocales() returned over 600 locales, including zh families, in correct cases,
but it returned less than 100 locales, all en families, in packaged game.
It resulted in zh not validated in packaged game.

I have also checked zh in the packaging settings.

Why does getAvailableLocales of icu return different locales in packaged game?

There’s another thread also concerning localization.
Is it related to my problem?

It sounds like your “Internationalization Support” setting is set to English, rather than something that contains Chinese: