0

请指导我,我想在资产文件夹中创建包含一些音频文件的应用程序,这些文件对于每种语言都是不同的,例如:'assets/en/hello.mp3' 和'assets/fr/hello.mp3'。

我想使用“android app bundle”构建我的应用程序,以便具有特定语言的用户可以使用较小的构建文件大小获得他/她的语言资产。

那么如何使用 android app bundle 构建我的应用程序呢?

4

1 回答 1

2

不幸的是,目前还没有构建系统对这个特性提供原生支持,但是 bundletool 和 Play 已经支持它,所以如果你按照以下模式组织资产文件,它应该可以工作:

assets/<dirname>#lang_en/hello.mp3
assets/<dirname>#lang_fr/hello.mp3
assets/<dirname>/hello.mp3

其中 "<dirname>" 是您想要的任何字符串。我的示例中的最后一个文件将仅交付给设备上既不是法语也不是英语的用户。

请注意,当用户更改设备上的语言时,下载正确的资产需要几百或几毫秒或几秒钟,因此您必须自己管理此转换(即您不能假设资产已在设备上使用新语言,因为它可能尚未下载)。

于 2019-02-07T10:38:23.197 回答