Skip to content

Instantly share code, notes, and snippets.

@talosdev
talosdev / styles_main_with_colors.xml
Created August 28, 2019 11:00
Colors defined with references in main styles.xml
<resources>
<style name="AppTheme" parent="@style/FlavorTheme">
<item name="colorPrimary">@color/flavorPrimaryColor</item>
<item name="colorPrimaryDark">@color/flavorPrimaryDarkColor</item>
<item name="colorAccent">@color/flavorAccentColor</item>
</style>
<!-- ... -->
</resources>
@talosdev
talosdev / styles_dusk_colors.xml
Last active August 28, 2019 11:05
Direct color definitions in dusk (non-optimal)
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="FlavorTheme" parent="@style/Theme.AppCompat">
<item name="colorPrimary">#37474F</item>
<item name="colorPrimaryDark">#212121</item>
<item name="colorAccent">#673AB7</item>
</style>
</resources>
@talosdev
talosdev / styles_dawn_colors.xml
Created August 27, 2019 12:02
Direct definitions of colors in dawn (non-optimal)
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="FlavorTheme" parent="@style/Theme.AppCompat.Light">
<item name="colorPrimary">@android:color/white</item>
<item name="colorPrimaryDark">@android:color/white</item>
<item name="colorAccent">#E64A19</item>
</style>
</resources>
@talosdev
talosdev / styles_dusk.xml
Created August 27, 2019 10:18
Main theme in dusk
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="FlavorTheme" parent="@style/Theme.AppCompat"/>
</resources>
@talosdev
talosdev / styles_dawn.xml
Created August 27, 2019 10:17
Main theme in styles
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="FlavorTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar"/>
</resources>
@talosdev
talosdev / styles_main.xml
Created August 27, 2019 10:17
Main theme in main
<resources>
<style name="AppTheme" parent="@style/FlavorTheme">
</style>
<!-- .... -->
</resources>
@talosdev
talosdev / build.gradle
Created August 27, 2019 09:53
Flavors
flavorDimensions 'appFlavor'
productFlavors {
dusk {
dimension 'appFlavor'
applicationId 'com.github.talosdev.dusk'
}
dawn {
dimension 'appFlavor'
applicationId 'com.github.talosdev.dawn'
val file: File =
measureTimeMillis({ time -> Log.d(TAG, "Read and decode took $time") }) {
readFile()
decodeFile()
// return the decoded file
File("/path/to/file")
}
val file: File =
measureTimeMillis({ time -> Log.d(TAG, "Read and decode took $time") }) {
readAndDecodeFile()
}
inline fun <T> measureTimeMillis(loggingFunction: (Long) -> Unit,
function: () -> T): T {
val startTime = System.currentTimeMillis()
val result: T = function.invoke()
loggingFunction.invoke(System.currentTimeMillis() - startTime)
return result
}