Kotlin Apps
For Kotlin applications using Jetpack Compose or traditional Views:1. Create Application Class
Create or update yourApplication class:
import android.app.Application
import com.zixflow.sdk.Zixflow
import com.zixflow.sdk.ZixflowConfigBuilder
import com.zixflow.sdk.addModule
import com.zixflow.messaginginapp.MessagingInAppModuleConfig
import com.zixflow.messaginginapp.ModuleMessagingInApp
import com.zixflow.messagingpush.ModuleMessagingPushFCM
import com.zixflow.location.ModuleLocation
class MainApplication : Application() {
override fun onCreate() {
super.onCreate()
// Initialize Zixflow SDK
val builder = ZixflowConfigBuilder(
applicationContext = this,
apiKey = "YOUR_API_KEY"
)
.autoTrackDeviceAttributes(true)
.autoTrackActivityScreens(true)
.trackApplicationLifecycleEvents(true)
.logLevel(ZixflowLogLevel.DEBUG)
// Add push notifications module (optional)
.addModule(ModuleMessagingPushFCM())
// Add in-app messaging module (optional)
.addModule(
ModuleMessagingInApp(
config = MessagingInAppModuleConfig()
)
)
// Add location tracking module (optional)
.addModule(ModuleLocation())
Zixflow.initialize(builder.build())
}
}
2. Register Application in AndroidManifest.xml
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Required permissions -->
<uses-permission android:name="android.permission.INTERNET" />
<application
android:name=".MainApplication"
android:label="@string/app_name">
<!-- Your activities -->
</application>
</manifest>
3. Replace Configuration Values
- YOUR_API_KEY: Your Zixflow API key (from Zixflow dashboard)
Java Apps
For Java-based applications:1. Create Application Class
import android.app.Application;
import com.zixflow.sdk.Zixflow;
import com.zixflow.sdk.ZixflowConfig;
import com.zixflow.sdk.ZixflowConfigBuilder;
import com.zixflow.sdk.ZixflowLogLevel;
public class MainApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
// Configure and initialize Zixflow SDK
ZixflowConfig config = new ZixflowConfigBuilder(
this, // applicationContext
"YOUR_API_KEY"
)
.autoTrackDeviceAttributes(true)
.autoTrackActivityScreens(true)
.trackApplicationLifecycleEvents(true)
.logLevel(ZixflowLogLevel.DEBUG)
.build();
Zixflow.initialize(config);
}
}
2. Register in AndroidManifest.xml
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<uses-permission android:name="android.permission.INTERNET" />
<application
android:name=".MainApplication"
android:label="@string/app_name">
<!-- Your activities -->
</application>
</manifest>