Integrations

Manual integration

Smartlook can be manually integrated into various analytic frameworks using our IntegrationListener.

Listener can be registered like this:

Smartlook.registerIntegrationListener(object : IntegrationListener {
    override fun onSessionReady(dashboardSessionUrl: String) {
        AnalyticsTool.trackSession(dashboardSessionUrl)
    }

    override fun onVisitorReady(dashboardVisitorUrl: String) {
        AnalyticsTool.trackVisitor(dashboardSessionUrl)
    }
})
Smartlook.registerIntegrationListener(new IntegrationListener() {
    @Override
    public void onSessionReady(@NotNull String dashboardSessionUrl) {
        AnalyticsTool.trackSession(dashboardSessionUrl);
    }

    @Override
    public void onVisitorReady(@NotNull String dashboardVisitorUrl) {
        AnalyticsTool.trackVisitor(dashboardSessionUrl);
    }
});

Listener can be simply unregistered:

Smartlook.unregisterIntegrationListener()
Smartlook.unregisterIntegrationListener();

Integration samples

Samples adjusted for specific analytic tools can be found in the Integrations documentation:

Automatic integrations

Automatic integrations provide a simple way of integrating Smartlook into various third-party analytic tools.

Enable integrations

One or a list of automatic integrations can be enabled by calling:

Smartlook.enableIntegration(integration: Integration)
Smartlook.enableIntegrations(integrations: List<Integration>)
Smartlook.enableIntegration(Integration integration);
Smartlook.enableIntegrations(List<Integration> integrations);

Specific Integrations are described in the Integrations documentation:

Disable integrations

Every currently enabled Integration can be disabled:

Smartlook.disableIntegration(integration: Integration)
Smartlook.disableIntegrations(integrations: List<Integration>)
Smartlook.disableIntegration(Integration integration);
Smartlook.disableIntegrations(List<Integration> integrations);

Or all currently enabled integrations can be disabled using the following:

Smartlook.disableAllIntegrations()
Smartlook.disableAllIntegrations();

📘

Smartlook SDK tries to disable automatic integration and removes "integrated" URLs from targeted analytic tools. This however is a "best effort" try and cannot be guaranteed to be successful.

List integrations

All currently enabled integrations can be listed:

Smartlook.currentEnabledIntegrations()
Smartlook.currentEnabledIntegrations();