matomo-org/matomo-sdk-android


SDK for Android to measure your apps with Matomo. Works on Android phones, tablets, Fire TV sticks, and more!

Download


Step 1. Add the JitPack repository to your build file

Add it in your root settings.gradle at the end of repositories:

	dependencyResolutionManagement {
		repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
		repositories {
			mavenCentral()
			maven { url 'https://jitpack.io' }
		}
	}

Add it in your settings.gradle.kts at the end of repositories:

	dependencyResolutionManagement {
		repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
		repositories {
			mavenCentral()
			maven { url = uri("https://jitpack.io") }
		}
	}

Add to pom.xml

	<repositories>
		<repository>
		    <id>jitpack.io</id>
		    <url>https://jitpack.io</url>
		</repository>
	</repositories>

Add it in your build.sbt at the end of resolvers:

 
    resolvers += "jitpack" at "https://jitpack.io"
        
    

Add it in your project.clj at the end of repositories:

 
    :repositories [["jitpack" "https://jitpack.io"]]
        
    

Step 2. Add the dependency

	dependencies {
		implementation 'com.github.matomo-org:matomo-sdk-android:4.3.4'
	}
	dependencies {
		implementation("com.github.matomo-org:matomo-sdk-android:4.3.4")
	}
	<dependency>
	    <groupId>com.github.matomo-org</groupId>
	    <artifactId>matomo-sdk-android</artifactId>
	    <version>4.3.4</version>
	</dependency>

                            
    libraryDependencies += "com.github.matomo-org" % "matomo-sdk-android" % "4.3.4"
        
        

                            
    :dependencies [[com.github.matomo-org/matomo-sdk-android "4.3.4"]]
        
        

Readme


Matomo SDK for Android

Build Codecov

Welcome to the Matomo Tracking SDK for Android. This library helps you send analytics data from Android apps to Matomo instances. Until v4 this library was known as Piwik Tracking SDK for Android.

Features:

Quickstart

For the not so quick start, see here or look at our demo app

  • Setup Matomo on your server.
  • Include the library in your app modules build.gradle file via JitPack
repositories {
  maven { url 'https://jitpack.io' }
}
dependencies {
  implementation 'com.github.matomo-org:matomo-sdk-android:<latest-version>'
}
  • Now you need to initialize your Tracker. It's recommended to store it as singleton. You can extend MatomoApplication or create and store a Tracker instance yourself:
import org.matomo.sdk.TrackerBuilder;

public class YourApplication extends Application {
    private Tracker tracker;
    public synchronized Tracker getTracker() {
        if (tracker == null){
            tracker = TrackerBuilder.createDefault("http://domain.tld/matomo.php", 1).build(Matomo.getInstance(this));
        }
        return tracker;
    }
}
  • The TrackHelper class is the easiest way to submit events to your tracker:
// The `Tracker` instance from the previous step
Tracker tracker = ((MatomoApplication) getApplication()).getTracker();
// Track a screen view
TrackHelper.track().screen("/activity_main/activity_settings").title("Settings").with(tracker);
// Monitor your app installs
TrackHelper.track().download().with(tracker);
  • Something not working? Check here.

License

Android SDK for Matomo is released under the BSD-3 Clause license, see LICENSE.