Skip to main content

SDK Configuration

Get the Workspace ID from the Settings Page of the dashboard Dashboard —> Settings —> App —> General on the MoEngage dashboard and initialize the MoEngage SDK in the Application class onCreate().
Note Initialize the SDK on the main thread inside onCreate() and not create a worker thread and initialize the SDK on that thread.
import com.moengage.core.DataCenter
import com.moengage.core.MoEngage

val moEngage = MoEngage.Builder(this, "YOUR_Workspace_ID", DataCenter.DATA_CENTER_X)
                     .build()
//replace X with your data center number
MoEngage.initialiseDefaultInstance(moEngage)
In your MoEngage account, if your portfolio is configured with multiple projects, use the methods as shown below.
val moEngageBuilder = MoEngage.Builder(this, "YOUR_MOENGAGE_APP_ID", DataCenter.DATA_CENTER_1)
    .configureProject(ProjectConfig("<YOUR ProjectID>"))

//replace <YOUR ProjectID> with your ProjectID
Following details of the different data centers you need to set based on the dashboard hosts:
Data CenterDashboard host
DataCenter.DATA_CENTER_1dashboard-01.moengage.com
DataCenter.DATA_CENTER_2dashboard-02.moengage.com
DataCenter.DATA_CENTER_3dashboard-03.moengage.com
DataCenter.DATA_CENTER_4dashboard-04.moengage.com
DataCenter.DATA_CENTER_5dashboard-05.moengage.com
DataCenter.DATA_CENTER_6dashboard-06.moengage.com
For more information about the detailed list of possible configurations, refer to the API reference.
Critical All the configurations are added to the builder before initialization. If you are calling initialize at multiple places, ensure that all the required flags and configurations are set each time you initialize to maintain consistency in behavior.

Data Flow

SDK detects the build type of the installed application and the basis that it decides whether data should be sent to the Test/Live Environment of the MoEngage Platform.
  • UnSigned/Debug Build — Data flows to Test environment
  • Signed/Live Build — Data flows to Live environment.