【问题标题】:RAD Studio - Delphi - How to add localizations in Google playRAD Studio - Delphi - 如何在 Google Play 中添加本地化
【发布时间】:2017-05-08 12:57:36
【问题描述】:

我在 Delphi 中使用 RAD Studio 构建了一个 Android apk,其中包含英语和西班牙语的消息。

当我在 Google Play 中上传 apk 时,Play 会显示在 apk 详细信息中:

本地化 - 仅默认语言

有人知道如何添加更多本地化吗? (我想要EN和ES)

PS.- 我已经尝试了以下方法,但没有成功:

1.- 我在其他编译器中读到过,您可以在 plugins/android/res/ 目录下添加每种语言的文件(IE-values-es.xml 和 values-en.xml),但我在 RAD-Studio 中找不到遵循此选项的方法。

2.- 在 RAD Studio 中,可以创建一个 .drc 文件来添加本地化(项目 > 选项 > 链接 > 输出资源字符串 .drc > True ),然后,文件 > 新建 > 其他 > Delphi 项目 > 资源 DLL Wizard > Add languajes...但这看起来像是创建Windows DLL文件,所以对Android无效。

谢谢!

-


----- 在 Raffaele 首次回复后添加 ---------

Localizations problem in apk-google play

Localizations in google play description

非常感谢您的帮助!!!

前段时间我尝试使用 Tlang 组件...但是正如您评论的那样,它效果不佳,因此,我决定在代码中编写翻译(我不知道要创建的 DKLang 组件& 选择翻译)。

所以,我的应用程序已经在英语和西班牙语(和法语)中运行良好,不再需要翻译。我的问题是关于 Google play 在上传 apk 时识别的内容,在“本地化:仅默认语言”中描述(根据屏幕截图),而它应该显示为 EN + ES + FR(因为该应用程序在 3 种语言中运行良好)

在谷歌开发者控制台中,我也设置了3种语言(根据截图),但我相信这只是为了在google play中显示不同语言的应用描述,这与刚才评论的apk细节不同。

所以,当我使用 Delphi - RAD Studio 构建我的应用程序时,我相信我无法遵循 Android Studio 的解决方案,尽管根据您对 Embarcadero Delphi 的建议,我尝试使用部署管理器添加一个 xml 文件并加载那里的数据......虽然没有用...... :-(

这就是我所做的:

1.- 在 ./RES/ 文件夹下创建 3 个文件夹:

价值观/ 价值观-en/ 价值-es/

并在其下创建了以下文件:

------------

./RES/resconfig.xml

<?xml version="1.0" encoding="utf-8"?>
android {
    defaultConfig {
        resConfigs "en", "fr", "es"
    }
}

------------

Values/strings.xml 和 Values-en/strings.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
   <string name="app_name">Example</string>
   <string name="info_text">Hello...</string>
</resources>

------------

值-es/strings.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
   <string name="app_name">Ejemplo</string>
   <string name="info_text">Hola...</string>
</resources>

------------

2.- Project - Deployement (Deployemnt manager) - 添加4个文件

3.- 重新构建项目,但结果和以前一样......所以,看起来这些xml资源没有加载,或者我所做的没有太多意义......

您知道如何在 Embacadero - RAD Studio 中加载 xml 文件以在应用中本地化这些语言吗?

PS:- 我无论如何都尝试测试 DKLang 组件,但不幸的是我无法加载它(Embarcadero 错过了 .blp 文件)。虽然有评论,但我的问题不再是使用组件来翻译和选择语言,但关于让谷歌在 apk 中识别我的 3 种语言。

谢谢!!!!!!

【问题讨论】:

    标签: android delphi google-play delphi-xe2 delphi-xe


    【解决方案1】:

    Delphi 有一个TLang 组件,当您必须本地化(翻译)一些字符串时它会很有用,但它有一些错误,并且不能很好地与所有组件一起工作。可以下载安装一个组件DKLang,比TLang更好。

    您可以使用我上面提到的组件进行本地化,您可以编写自己的类,使用资源字符串或外部资源文件。当我必须本地化应用程序时,我总是使用 DKLang 或(很久以前)一个在运行时更改组件文本的小类。另外:

    1. 您可以在 Android Studio 中执行此操作,并且您必须创建一个名为 values-xx/strings.xml 的文件夹,其中 xx 是语言环境(it、en、es、us...)。在 Embarcadero Delphi 中,您可以使用部署管理器添加一个 xml 文件并从那里加载数据,但这太复杂了。如果您使用 DKLang 或其他类似自定义类的东西会更好。

    2. Windows DLL 和 drc 文件是两个不同的东西,请阅读 here 了解 Delphi 中的资源字符串。


    在 Google Developer 控制台端,您可以看到:

    您可以在商店中显示的页面上添加不同的语言,但在这里您无法更改应用程序的语言。要本地化应用程序,请参阅我上面的建议。

    【讨论】:

    • 在尝试遵循您的建议后,我没有足够的字符来评论当前情况,我已经扩展了我的问题描述,所以,你可以看到我在哪里......希望你能帮助我多一点让它完全解决?谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-05
    • 2013-05-09
    • 1970-01-01
    • 1970-01-01
    • 2014-12-30
    • 1970-01-01
    相关资源
    最近更新 更多