Setup & Authentication

Compatibility

We are always working to enhance our existing UIKit. As a result, the minimum compatibility may vary for our previous version releases. Below is the compatibility list for our latest release. For a complete compatibility history of any given UIKit version, you may refer to our changelogs.

  • Amity-Social-Cloud-SDK - 5.14.0

  • Glide - 4.12.0

  • OKHTTP3 - 4.9.0

  • Retrofit2 - 2.50

  • Android Paging Data Library - 3.0.1

  • Room - 2.4.0-alpha04

  • RxJava2 - 2.3.10

  • Gson - 2.8.10

  • Kotlin-std-lib - 1.5.10

  • Kotlin-coroutines - 1.5.0

  • Exo Player - 2.12.1

  • HiveMQ mqtt client - 1.2.2

Initialize the SDK

Before using the SDK, you need to initialize the SDK with your API key. Please find your account API key in Amity Social Cloud Console.

After logging in Console:

  1. Click Settings to expand the menu.

  2. Select Security.

  3. In the Security page, you can find the API key in the Keys section.

class SimpleApp : Application() {

    override fun onCreate() {
        super.onCreate()

        AmityCoreClient.setup(
            apiKey = "apiKey", 
            httpEndpoint = AmityRegionalEndpoint.EU,  // optional param, defaulted as SG region 
            socketEndpoint = AmityRegionalEndpoint.EU // optional param, defaulted as SG region 
        )
    }
}

Specify Endpoints Manually (Optional)

You can specify endpoints manually via optional parameters. API endpoints for each data center are different so you need to adjust the endpoint accordingly.

We currently support multi-data center capabilities for the following regions:

Region

Endpoint

Endpoint URL

Europe

AmityRegionalEndpoint.EU

api.eu.amity.co

Singapore

AmityRegionalEndpoint.SG

api.sg.amity.co

United States

AmityRegionalEndpoint.US

api.us.amity.co

Authentication

You must first register the current device with a userId. A device registered with a userId will be permanently tied to that userId until you deliberately unregister the device, or until the device has been inactive for more than 90 days. A device registered with a specific userId will receive all messages belonging to that user.

Last updated

#3026: New Content: Technical FAQ

Change request updated