Popularity
1.3
Stable
Activity
0.0
Stable
22
3
3

Description

Tiny library for tracking screens and events with google analytics and / or firebase analytics.

Programming language: Kotlin
License: Apache License 2.0
Tags: Tracking     Android-library     Firebase     Analytics     Kotlin Library     Gms     Gcm    
Latest version: v3.1.0

BloodHoud alternatives and similar packages

Based on the "Tracking" category.
Alternatively, view BloodHoud alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of BloodHoud or a related project?

Add another 'Tracking' Package

README

Donation About Jan Rabe

BloodHoud Android Arsenal Javadoc Build Status API API API Gradle Version GitHub license Kotlin Android Studio Canary

Tiny library for tracking screens and events with google analytics and / or firebase analytics.

How to install

repositories {
    maven {
        url "https://jitpack.io"
    }
}

dependencies {
        implement 'com.github.kibotu:BloodHound:-SNAPSHOT'

        // for google analytics
        implement "com.google.android.gms:play-services-gcm:16.0.0"
        implement "com.google.android.gms:play-services-analytics:16.0.6"

        // for firebase
        implement "com.google.firebase:firebase-core:16.0.6"
}

How to use

Google Analytics
  1. Add gms version to manifest

    <application>
        <meta-data
            android:name="com.google.android.gms.version"
            android:value="@integer/google_play_services_version" />
    </application>
    
  2. Initialize

    BloodHound.with(context, "trackingId")
    
  3. Track Screens

    BloodHound.screen("main_screen")
    
  4. Track Events

    BloodHound.track("category", "action", "app_start", mapOf("user" to UUID.randomUUID().toString()) // (optional) parameters )

  5. (optional) Reset client

    BloodHound.reset()
    

Firebase

  1. Initialize

    BloodHound.with(context)
    
  2. Track Screens

    BloodHound.screen("main_screen")
    
    // with screen class
    // BloodHound.screen("main_screen", MainActivity::class.java.simpleName)
    
  3. Track Events

    BloodHound.track("main_screen", "user_event",
        mapOf("user" to UUID.randomUUID().toString()) // (optional) parameters
    )
    
  4. (optional) Reset client

    BloodHound.reset()
    

GoogleAnalyitcsOptions (defaults)

BloodHound.with(this, "trackingId", GoogleAnalyitcsOptions(
    enableDebugging = false,
    enableLogging = false,
    exceptionReporting = false,
    advertisingIdCollection = true,
    autoActivityTracking = false,
    sessionTimeout = 300,
    sampleRate = 100.0,
    sessionLimit = 500,
    dryRun = false,
    anonymizeIp = true
))

FirebaseOptions (defaults)

BloodHound.with(this, FirebaseOptions(
    enableDebugging = false,
    enableLogging = false
))

License

Copyright 2019 Jan Rabe

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.


*Note that all licence references and agreements mentioned in the BloodHoud README section above are relevant to that project's source code only.