Custom region/language

Batch allows you to set a custom region or a custom language that will override the value detected by the SDK. By default, Batch collects the language and the country of your users' devices.

Setting a custom region/language is useful if:

  • You don't want to use the values detected by Batch.
  • Your users can choose their own language or region for localization purposes.

Custom locale

Writing custom region/language

  • Kotlin
  • Java
Batch.Profile.editor().apply {
   setLanguage("en") // Language must be 2 chars, lowercase, ISO 639 formatted
   setRegion("US") // Region must be 2 chars, uppercase, ISO 3166 formatted

Reading custom region/language

Keep in mind that the data returned is only about your installation and not your Profile since it may be updated from another source.

  • Kotlin
  • Java
// This is how you retrieve your custom values. Values are nil by default.
val language: String? = Batch.User.getLanguage(context)
val region: String? = Batch.User.getRegion(context)