Commit eb78c2003be1ad0d1650088ec74bce2e5d6acdd6

Authored by 权海
1 parent 79227d78

feat(ui):取消强制英文测试

... ... @@ -2,47 +2,47 @@ import 'package:flutter/widgets.dart';
Locale resolveAppLocale(
Locale? deviceLocale, Iterable<Locale> supportedLocales) {
// if (deviceLocale == null) return const Locale('en');
//
// for (final locale in supportedLocales) {
// if (locale == deviceLocale) {
// return locale;
// }
// }
//
// if (deviceLocale.languageCode == 'zh') {
// final script = deviceLocale.scriptCode?.toLowerCase();
// final country = deviceLocale.countryCode?.toUpperCase();
// final isHant = script == 'hant' ||
// country == 'TW' ||
// country == 'HK' ||
// country == 'MO';
//
// return supportedLocales.firstWhere(
// (locale) =>
// locale.languageCode == 'zh' &&
// locale.scriptCode == (isHant ? 'Hant' : 'Hans'),
// orElse: () => Locale.fromSubtags(
// languageCode: 'zh',
// scriptCode: isHant ? 'Hant' : 'Hans',
// ),
// );
// }
//
// if (deviceLocale.countryCode != null) {
// for (final locale in supportedLocales) {
// if (locale.languageCode == deviceLocale.languageCode &&
// locale.countryCode == deviceLocale.countryCode) {
// return locale;
// }
// }
// }
//
// for (final locale in supportedLocales) {
// if (locale.languageCode == deviceLocale.languageCode) {
// return locale;
// }
// }
if (deviceLocale == null) return const Locale('en');
for (final locale in supportedLocales) {
if (locale == deviceLocale) {
return locale;
}
}
if (deviceLocale.languageCode == 'zh') {
final script = deviceLocale.scriptCode?.toLowerCase();
final country = deviceLocale.countryCode?.toUpperCase();
final isHant = script == 'hant' ||
country == 'TW' ||
country == 'HK' ||
country == 'MO';
return supportedLocales.firstWhere(
(locale) =>
locale.languageCode == 'zh' &&
locale.scriptCode == (isHant ? 'Hant' : 'Hans'),
orElse: () => Locale.fromSubtags(
languageCode: 'zh',
scriptCode: isHant ? 'Hant' : 'Hans',
),
);
}
if (deviceLocale.countryCode != null) {
for (final locale in supportedLocales) {
if (locale.languageCode == deviceLocale.languageCode &&
locale.countryCode == deviceLocale.countryCode) {
return locale;
}
}
}
for (final locale in supportedLocales) {
if (locale.languageCode == deviceLocale.languageCode) {
return locale;
}
}
return const Locale('en');
}
... ...