我被赋予了国际化一个大型客户端-服务器应用程序的任务。我的职责是让应用程序“World Ready”,然后编译好的应用程序和资源被传递给另一个国家的同事,由他们翻译并发布给他们的客户。将有几个国家/地区,因此有几个单独的翻译。
这里的关键是我想要一个简单的两步发布过程:
步骤1:我编译了一个'World Ready‘应用程序,并将其发布给不同国家的同事
第2步:他们进行资源本地化,然后发布给客户
I to‘t want to add the extra steps of Make App World Ready -> Send files off for translation
在阅读了非常好的之后,我计划将同样的技术应用到我自己的项目中。
本教程介绍如何创建包含某些默认语言的命名字符串的Strings.resx,并建议复制整个.resx文件,在文件名中添加一些本地化代码,然后将字符串翻译为目标语言。
这样,Strings.resx将包含一个名为name_entry_label的寄存器,其值为Write your name,而Strings.pt-BR.resx中的同名寄存器将具有值Escreva seu nome,对于任何其他语言,依此类推。
我发现的问题是:如果您在其中一个资源文件中添加了一个寄存器,则其他资源文件不会更新。他们需要手动控制条目,这是愚蠢的,重复的
我已经创建了一个AppResource.Resx和AppResource.da.resx,我还在String.XML中创建了一个带有Value-da => String.XML的资源字符串
AppResources.Culture = new CultureInfo("da-DK");
Java.Util.Locale.Default = new Java.Util.Locale("da", "DK");
Resources.Configuration.Locale = Ja
我尝试在Xamarin表单中使用以下内容来根据是否处于调试模式来设置登录页面,就像功能切换一样。
我将所需的两个页面名称作为字符串存储在.resx资源文件中,但由于无法将返回的字符串转换为xamarin.forms页面,因此出现错误。
即使我将静态字符串更改为静态xamarin.forms.page,它仍然会出错,因为resx返回一个字符串。
有什么办法可以解决这个问题,这样我就可以用这个了?
public static string StartUpPage
{
get
{
#if DEBUG
re
我正在考虑使用XLIFF来标准化企业内部的本地化工作。我对xliff非常陌生,在做了一些研究之后,我认为使用它的一般过程如下:
Post-Processing" 从开发项目资源(.resx for .Net,.properties for Java)中提取字符串--我发现这样做的好方法是使用Okapi本地化工具箱中的彩虹,并使用“实用程序=>翻译工具包创建”命令来翻译提取的文件,就像在中描述的那样,例如使用Virtaal应用程序,并最终将翻译的xliff转换回原始格式(resx/properties) --这是可以通过彩虹和“实用工具翻译工具包”来完成的。
到目前为止,一切都很清