语言更改在上传到Google Play商店之前起作用,但在上传到Play商店之后不起作用。为什么?

  • 在我的应用程序中有两种语言。
  • 如果我从以英语为默认语言的设备下载应用程序。然后它不会更改为中文字符串.xml(zh)。
  • 如果我将设备语言更改为中文并下载应用程序,则它工作正常并更改为两种语言。也许是因为我们的默认字符串中有英语.xml文件。

也许是因为谷歌Play商店不让用户下载它认为用户不需要的资源文件。

任何人都可以帮我吗?谢谢。


答案 1

问题是您正在使用.aab文件在Play商店上发布应用程序。这将在安装时根据用户的手机设置删除本地化文件。

要解决此问题,您需要将此行放在build.gradle文件中,然后再次尝试上传

android {

  //... removed for brevity
  bundle {

     language {
       enableSplit = false
     }
   }
}

参考链接


答案 2

正如@Vrushi Patel所说,这与Android App Bundles有关。要解决此问题,您必须在基本模块的build.gradle中编辑android.bundle块,如下所示,如官方文档中提到的:

android {
// When building Android App Bundles, the splits block is ignored.
splits {...}

// Instead, use the bundle block to control which types of configuration APKs
// you want your app bundle to support.
bundle {
    language {
        // Specifies that the app bundle should not support
        // configuration APKs for language resources. These
        // resources are instead packaged with each base and
        // dynamic feature APK.
        enableSplit = false
    }
    density {
        // This property is set to true by default.
        enableSplit = true
    }
    abi {
        // This property is set to true by default.
        enableSplit = true
    }
}
}

推荐