Skip to content

Instantly share code, notes, and snippets.

View amsterdatech's full-sized avatar
💭
I may be slow to respond.

William Gouvea amsterdatech

💭
I may be slow to respond.
View GitHub Profile
sealed class AppPermission(
val permissionName: String, val requestCode: Int, val deniedMessageId: Int, val explanationMessageId: Int
) {
companion object {
val permissions: List<AppPermission> by lazy {
listOf(
ACCESS_FINE_LOCATION
)
}
}
handlePermission(AppPermission.ACCESS_FINE_LOCATION,
onGranted = {
},
onDenied = {
},
onRationaleNeeded = {
handlePermission(AppPermission.ACCESS_FINE_LOCATION,
onGranted = {
},
onDenied = {
},
onRationaleNeeded = {
handlePermission(AppPermission.ACCESS_FINE_LOCATION,
onGranted = {
},
onDenied = {
},
onRationaleNeeded = {
handlePermission(AppPermission.ACCESS_FINE_LOCATION,
onGranted = {
},
onDenied = {
},
onRationaleNeeded = {
handlePermission(AppPermission.ACCESS_FINE_LOCATION,
onGranted = {
},
onDenied = {
},
onRationaleNeeded = {
handlePermissionsResult(requestCode, permissions, grantResults,
onPermissionGranted = {
},
onPermissionDenied = {
},
onPermissionDeniedPermanently = {
}
package com.actinarium.materialcue.analytics;
import android.app.Application;
import android.support.annotation.NonNull;
import android.util.Log;
import com.actinarium.materialcue.dto.Overlay;
import com.actinarium.materialcue.iab.PremiumStatus;
import com.actinarium.materialcue.iab.PremiumStatusChangeListener;
import com.google.android.gms.analytics.HitBuilders;
import com.google.android.gms.analytics.Tracker;
@amsterdatech
amsterdatech / Analytics.kt
Last active January 18, 2021 20:53
Simple Analytics With Kotlin
interface Analytics {
fun track(setup: EventBuilder.() -> Unit = {})
}
class AnalyticsImpl(private val trackers: MutableList<Tracker>) : Analytics {
init {
trackers.forEach {
if(it.isAnalyticsEnable()){
it.start()
@amsterdatech
amsterdatech / Analytics.kt
Last active January 18, 2021 21:05
Analytics interface
interface Analytics {
fun track(setup: EventBuilder.() -> Unit = {})
}
class AnalyticsImpl(private val trackers: MutableList<Tracker>) : Analytics {
init {
trackers.forEach {
if(it.isAnalyticsEnable()){
it.start()