---
schema_version: "1"
id: d854297107a13c45deae5e9e44b4b4cf58e5991abf0a62c5ab192ecaa8cd036e
title: Before You Begin
collection: developer
version: current
locale: en-us
portal_url: https://docs.salesforce.com/developer/current/en-us/service-cloud/messaging-in-app/guides/before-you-begin.md
canonical_url: https://developer.salesforce.com/docs/service/messaging-in-app/guide/before-you-begin.html
source_site: developer.salesforce.com
content_type: documentation
content_hash: 23288f53b8a5380c1c0e37cd1917415c34c1571adc2817eb56e84f32169c6ed9
products:
  - Enhanced In-App Chat
  - Service Cloud Developer Content
---
# Before You Begin

Before you start using the SDK, learn about the latest features, supported languages, third-party dependencies, and our data collection policy. Refer to the [Messaging Glossary](https://help.salesforce.com/s/articleView?id=service.miaw_glossary.htm) to familiarize yourself with the messaging terms we use at Salesforce.

## Release Notes

To learn about new features, API changes, fixes, and known issues, refer to the release notes.

- [Release Notes for iOS](https://github.com/Salesforce-Async-Messaging/messaging-in-app-ios/releases)
- [Release Notes for Android](https://github.com/Salesforce-Async-Messaging/messaging-in-app-android/releases)

## Shared App Data

- The iOS SDK stores information in the app’s **keychain data**. If you explicitly delete this content, the SDK won’t be able to access essential information and may fail to work properly.
- The Android SDK stores information in the app’s **shared preferences** and **key store**. If you explicitly delete this content, the SDK won’t be able to access essential information and may fail to work properly.

## Language Support

The Enhanced In-App Chat mobile SDKs support the following languages:

- Arabic: `ar`
- Chinese (Simplified): `zh-Hans` (iOS), `zh` (Android)
- Chinese (Traditional): `zh-Hant-TW` (iOS), `zh-rTW` (Android)
- Czech: `cs`
- Danish: `da`
- Dutch: `nl`
- English: `en`
- Finnish: `fi`
- French: `fr`
- German: `de`
- Greek: `el`
- Hebrew: `he` (iOS), `iw` (Android)
- Hungarian: `hu`
- Indonesian: `id` (iOS), `in` (Android)
- Italian: `it`
- Japanese: `ja`
- Korean: `ko`
- Norwegian: `nb` (iOS), `no` (Android)
- Polish: `pl`
- Portuguese: `pt-BR` (iOS), `pt-rBR` (Android)
- Romanian: `ro`
- Russian: `ru`
- Spanish: `es`
- Swedish: `sv`
- Thai: `th`
- Turkish: `tr`
- Ukrainian: `uk`

To learn more about customizing strings in the SDK, see [Customize Strings for iOS](https://developer.salesforce.com/docs/service/messaging-in-app/guide/ios-strings.md) and [Customize Strings for Android](https://developer.salesforce.com/docs/service/messaging-in-app/guide/android-strings.md).

Your Salesforce org can support the languages specified in the [Supported Languages](https://help.salesforce.com/s/articleView?id=xcloud.faq_getstart_what_languages_does.htm) document.

## Third-Party Dependencies

The Enhanced In-App Chat SDKs use the following third-party libraries.

### iOS Dependencies

- [Encrypted Core Data SQLite Store](https://github.com/project-imas/encrypted-core-data)
- [Simple Keychain](https://github.com/auth0/SimpleKeychain)
- [SQLCipher](https://github.com/sqlcipher/sqlcipher)

### Android Dependencies

- [Android Material Components](https://github.com/material-components/material-components-android/releases) (`com.google.android.material:material`)
- [Bumptech Glide](https://github.com/bumptech/glide) (`com.github.bumptech.glide:glide`)
- [Jetbrains Kotlin Libraries](https://blog.jetbrains.com/kotlin/category/libraries/) (`org.jetbrains.kotlinx:kotlinx-coroutines-android`, `org.jetbrains.kotlin:kotlin-reflect`, `org.jetbrains.kotlin:kotlin-script-runtime`, `org.jetbrains.kotlin:kotlin-stdlib-jdk8`)
- [JSON Web Token Libraries](https://github.com/jwtk/jjwt) (`io.jsonwebtoken:jjwt-api`, `io.jsonwebtoken:jjwt-impl`, `io.jsonwebtoken:jjwt-orgjson`)
- [Moshi JSON Libraries](https://github.com/square/moshi) (`com.squareup.moshi:moshi-adapters`, `com.squareup.moshi:moshi-kotlin`, `com.squareup.moshi:moshi-kotlin-codegen`)
- [OkHttp Libraries](https://square.github.io/okhttp/) (`com.squareup.okhttp3:logging-interceptor`, `com.squareup.okhttp3:okhttp-sse`)
- [Retrofit Libraries](https://github.com/square/retrofit) (`com.squareup.retrofit2:retrofit`, `com.squareup.retrofit2:converter-moshi`, `com.squareup.retrofit2:converter-scalars`)
- [Salesforce Mobile SDK Encryption](https://developer.salesforce.com/docs/atlas.en-us.mobile_sdk.meta/mobile_sdk/android_native_classes_encryptor.htm) (`com.salesforce.android:encryption`)
- [Zetetic SQLCipher](https://www.zetetic.net/sqlcipher/sqlcipher-for-android/) (`net.zetetic:android-database-sqlcipher`)

## Data Collection Policy

The software development kits (“SDKs”) provide access to software tools, that when embedded into a mobile application, help enable the collection and transmission of data to perform basic operations required for the service. Data collected through Enhanced Chat falls into three categories: pre-chat data, messaging data, and logging data. For more detailed information about each category, refer to these sections.

### Pre-Chat Data

- **Data types collected**:
  - _Personal info_ such as name and email. Most pre-chat forms contain some personal info.
  - _Other info_. Other data collected depends on how you design your pre-chat form.
- **Details**: All data specified in the pre-chat form is securely transmitted to Salesforce using HTTPS communication (TLS 1.3). Depending on how you handle pre-chat data, this data is stored in Salesforce during your service subscription, or until you take action to delete it. You can change this behavior from Salesforce. You can even remove the pre-chat form altogether.

### Message Data

- **Data types collected**:
  - _In-app messages_. User messages get sent to reps through Salesforce.
  - _Photos_. Users can send photos to reps.
  - _Other info_. Any content a user types into a message is sent to a rep or chatbot.
- **Details**: All user messages are securely transmitted to Salesforce using HTTPS communication (TLS 1.3). This data is stored in Salesforce during your service subscription, or until you take action to delete it.

### Logging Data

- **Data types collected**:
  - _App interactions_
  - _Other actions_
- **Details**: For logging purposes, we send anonymized information to Splunk servers using HTTPS communication (TLS 1.3). This data doesn't contain any customer-identifiable or hardware-identifiable information. We log info about how users interact with the SDK, and we log some basic system information while they use the SDK, such as battery stats.
