138: Decompress – kotlin scripting

In this mini fragment, Donn asks KG about a recent hackathon side project that he worked on with Kotlin scripting.

We go into kotlin scripting (using kscript), pros cons, setting it up and more. We’ve added links some interesting resources, so you want to make sure you check out the shownotes for this one, so you too can explore kotlin scripting and see if it’s a fit for you.

Download

Shownotes

Existing solutions for poll/vote tabulation

Misc


// slick kotlin usage override fun onCreate(savedInstanceState: Bundle?) = super.onCreate(savedInstanceState).also { setContentView(R.layout.activity_something) // ... }

Sponsors

Contact

123: Android Micro Frustrations

With good –most of the time– also comes the bad. In this episode, Kaushik and Donn chat about the small annoying things about being an Android developer, or more aptly – “Micro Frustrations”.

We usually cover the new, latest, greatest and awesome developments. But it helps to step back and also point out the things that are broken and the 1000 cuts so to speak.

Sit back and enjoy this hearty rant!

Download directly

Shownotes

layout complaints

Navigation & System bar frustrations:

If you’re looking for a solution to just hide system bar (and not the navigation bar), here’s what Kaushik landed up using (you’re welcome):

fun Window.makeStatusBarTransparent(activity: Activity) {
    sdkUpto(20) {
        setWindowFlag(activity, WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS, true) 
    }
    decorView.systemUiVisibility = View.SYSTEM_UI_FLAG_LAYOUT_STABLE or View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
    sdk(21) {
        setWindowFlag(activity, WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS, false)
        setTranslucentStatusBarLollipop()
    }
}

private fun setWindowFlag(activity: Activity, bits: Int, on: Boolean) {
    val win = activity.window
    val winParams = win.attributes
    if (on) {
        winParams.flags = winParams.flags or bits
    } else {
        winParams.flags = winParams.flags and bits.inv()
    }
    win.attributes = winParams
}

@TargetApi(Build.VERSION_CODES.LOLLIPOP)
private fun Window.setTranslucentStatusBarLollipop() {
    statusBarColor = Color.TRANSPARENT
}

Sponsors

  • Microsoft AppCenter – Sign up now on appcenter.ms and spend less time managing your app lifecycle and more time coding.

Contact

091 : Decompress – Reddit AMA highlights, package by feature not layer and testing!

In this decompress episode, DF and KG kick it off with a brief discussion of the highlights from the recent reddit AMA that the Android Engineering folk conducted. What were the interesting things they learnt or were surprised by etc.? They then go on to briefly discuss two topics they’ve always chatted about (off-air) packaging by feature (not layer) and most recent thoughts on testing. Listen on to find out more:

Download directly

Show Notes

360 | AnDev

AMA Reddit

Package by feature not layer

Sponsors

Contact