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

Here is how to set a custom region/language:

var userProfile:BatchUserProfile = Batch.getUserProfile();

// Use the user profile to set custom language and data	
userProfile.setLanguage("en"); // Language must be 2 chars, lowercase, ISO 639 formatted
userProfile.setRegion("US"); // Region must be 2 chars, uppercase, ISO 3166 formatted

Reading back the values will return what you've set. However, if you reset them, reading them will give you what Batch detects (and thus will report to the dashboard), rather than null.

If you call getUserProfile method before onStart it will return null. You should always call it after you started the SDK, and check nullity to be safe.