Skip to content

Commit

Permalink
Merge pull request #18 from aminekarimii/dev-update-analytiks-smaple-app
Browse files Browse the repository at this point in the history
Update the sample app to test Mixpanel impl
  • Loading branch information
aminekarimii committed Apr 16, 2023
2 parents 66f9112 + a2d3264 commit d19bc96
Show file tree
Hide file tree
Showing 4 changed files with 25 additions and 53 deletions.
1 change: 0 additions & 1 deletion app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@
<activity
android:name=".MainActivity"
android:exported="true"
android:label="@string/app_name"
android:theme="@style/Theme.AnalyticsApp.NoActionBar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
Expand Down
18 changes: 1 addition & 17 deletions app/src/main/java/com/logitanalyticsapp/AnalytiksApplication.kt
Original file line number Diff line number Diff line change
@@ -1,21 +1,5 @@
package com.logitanalyticsapp

import android.app.Application
import com.analytiks.Analytiks
import com.logitanalyticsapp.di.AppContainer

class AnalytiksApplication : Application() {
lateinit var appContainer: AppContainer
private lateinit var analytiks: Analytiks

override fun onCreate() {
super.onCreate()

appContainer = AppContainer()

analytiks = appContainer.analytiks

analytiks.initialize(this)
}

}
class AnalytiksApplication : Application()
42 changes: 24 additions & 18 deletions app/src/main/java/com/logitanalyticsapp/MainActivity.kt
Original file line number Diff line number Diff line change
Expand Up @@ -4,43 +4,49 @@ import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import com.analytiks.Analytiks
import com.analytiks.addon.mixpanel.MixpanelAnalyticsClient
import com.analytiks.addon.timber.TimberLocalClient
import com.analytiks.core.CoreAddon
import com.analytiks.core.model.Param
import com.logitanalyticsapp.databinding.ActivityMainBinding

class MainActivity : AppCompatActivity() {

private lateinit var binding: ActivityMainBinding
private lateinit var analytiks: Analytiks


override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)

binding = ActivityMainBinding.inflate(layoutInflater)
setContentView(binding.root)
setSupportActionBar(binding.toolbar)

val appContainer = (application as AnalytiksApplication).appContainer
val clients: List<CoreAddon> = listOf(
TimberLocalClient(),
MixpanelAnalyticsClient(
token = "YOUR_TOKEN"
)
)

appContainer.analytiks.logFirstEvent()
analytiks = Analytiks(clients)

binding.fab.setOnClickListener {
appContainer.analytiks.logEventOnClick()
with(analytiks) {
initialize(this@MainActivity.applicationContext)
reset()
}
}

private fun Analytiks.logFirstEvent() {
this.logEvent(
name = "event_name",
excludedAddons = setOf(MixpanelAnalyticsClient::class.java),
properties = listOf(
Param("val-name", "val-value")

binding.fab.setOnClickListener {
analytiks.logEvent(
name = "fab_button_click", properties = listOf(
Param(propertyName = "prop1", propertyValue = "val2")
)
)
)
}
}

private fun Analytiks.logEventOnClick() {
this.logEvent(
name = "button_click",
excludedAddons = setOf(MixpanelAnalyticsClient::class.java)
)
override fun onPause() {
super.onPause()
analytiks.pushAll()
}
}
17 changes: 0 additions & 17 deletions app/src/main/java/com/logitanalyticsapp/di/AppContainer.kt

This file was deleted.

0 comments on commit d19bc96

Please sign in to comment.