Localization Android Wear-支持不同的语言

Localization Android Wear-支持不同的语言,localization,wear-os,Localization,Wear Os,Android Wear系统只支持几种语言。有没有办法,如何强制资源管理器使用我在手机上设置的语言资源,但Android Wear系统不支持这些语言 示例 在我的Android Wear应用程序中,我希望支持三种语言。英语、格南语和捷克语。在我的Android Wear应用程序中,我有以下带有字符串文件的目录:values、values de、values cs 如果我将手机语言设置为德语,我的Android Wear应用程序将正确使用德语字符串。但如果我在手机中设置捷克语,Android We

Android Wear系统只支持几种语言。有没有办法,如何强制资源管理器使用我在手机上设置的语言资源,但Android Wear系统不支持这些语言

示例

在我的Android Wear应用程序中,我希望支持三种语言。英语、格南语和捷克语。在我的Android Wear应用程序中,我有以下带有字符串文件的目录:values、values de、values cs

如果我将手机语言设置为德语,我的Android Wear应用程序将正确使用德语字符串。但如果我在手机中设置捷克语,Android Wear应用程序将使用默认(来自目录:value)字符串

有没有办法,当我的手机使用捷克语但Android Wear系统不支持捷克语时,我如何实现Resourcece manager使用values cs文件夹

先谢谢你

编辑

我做了很糟糕的变通。我的手机应用程序中有与此wear应用程序相关的服务。当启动我的wear应用程序时,我只是问手机它使用什么语言。在它向我发送响应后,我只是尝试在我的Xamarin Android Wear应用程序中切换区域设置

更改区域设置的代码:

myLocale = new Java.Util.Locale(lang);
DisplayMetrics dm = Resources.DisplayMetrics;
Configuration conf = Resources.Configuration;
conf.Locale = myLocale;
Resources.UpdateConfiguration(conf, dm);
其中,lang是ISO639-1代码,myLocale是Locale类型的活动属性。

如中所述

如果应用程序甚至缺少一个默认资源,它将不会在设置为不支持的区域设置的设备上运行。例如,
res/values/strings.xml
默认文件可能缺少应用程序所需的一个字符串:当应用程序在不受支持的区域设置中运行并尝试加载
res/values/strings.xml
时,用户将看到错误消息和强制关闭按钮

有关其他信息,您可能还需要检查。它解释了低于7.0(API级别24)的Android版本中的资源解析策略。接下来,介绍了安卓7.0中改进的资源解析策略。最后,它解释了如何利用区域设置数量的增加来支持更多的多语言用户

此外,如给定文件中所述

当Java代码引用字符串时,系统将从默认(en_US)资源文件加载字符串,即使应用程序在es_es下本地化了西班牙语资源。这是因为当系统无法找到精确匹配时,它会通过从区域设置中删除国家代码来继续查找资源。最后,如果没有找到匹配项,系统将返回默认值,即en_US

如前所述,不可能使用不受支持的区域设置。因此,如果您仍然喜欢使用捷克语,您可能希望使用Android 5.0或更低版本,其中支持捷克语,如本相关和中所示