• Compose for Web (WASM) – What and Why?

    As a former web-developer myself, I still gravitate back to browser-based UIs. They are so easy to access from anywhere, and are globally available. It’s hard to argue the utility of the amazing web platform. Compose for Web (WASM) is the latest technology in Kotlin Multiplatform and I’m pretty bullish about it. In this post…

    Read More

  • Adding Compose to Existing Espresso Tests with createEmptyComposeRule()

    As the documentation says, you can combine both Espresso and Compose in an Android instrumentation test. In order to interact with Compose in an instrumentation test you need a ComposeTestRule. Problem Typically you would create a ComposeTestRule with createComposeRule() in a part of your app that is compose only, but that will create a blank…

    Read More

  • Using Java Reflection with Kotlin Companion Objects

    Kotlin companion objects allow you to add static data and methods associated with a class. This is similar to how Java has static fields and methods. The problem is that Java doesn’t really know what a companion object it, so trying to access one using standard Java reflection might make you go crazy. package com.handstandsam…

    Read More

  • Automatic protection stopped being applied after 31 Aug.

    My app was getting Google Play’s automatic protection (the installer check) up through version 103 (Aug 31). From 104 onward (Sept 7) it stopped. The com.android.vending.CHECK_LICENSE permission and all the com.pairip.licensecheck classes are simply gone from the APKs Play serves. Then I went back in git to the exact commit that built 103, changed only…

    Read More

  • [AMA] I’m Jaewoong Eum (skydoves). Ask me anything!

    That’s a wrap for the AMA! Thank you so much to everyone who joined and asked such thoughtful questions. There were way more than I expected, and honestly, I feel like I learned a lot from the conversations too. There are still a few questions I didn’t get a chance to answer during the session,…

    Read More

  • kartograph: inspect Android class dependencies and retention

    Hi everyone, I’ve been working on kartograph, an open-source tool for exploring dependencies in compiled Kotlin/Android code. On Android, a class can be instantiated by framework code or through an XML declaration without a direct constructor call in the app. When reviewing code, I wanted to see which references and inputs explain why a class…

    Read More

  • Android Developer Jobs & Opportunities

    ​ Hi everyone, I’ve created a WhatsApp community for Android developers worldwide who are looking for new job opportunities or want to stay updated on Android hiring. The community is focused on: – Android Developer job openings – Kotlin and Android roles – Remote and onsite opportunities – Recruiter and hiring updates – Job referrals…

    Read More

  • Anyone interested about a new open source code editor library?

    I recently developed my new Android app. It features a code editor (for various languages) and a JavaScript REPL. (However the app is not a code editor app). Both of those features needed: 1) code editing, 2) code parsing, and 3) syntax rendering functionalities. I started by looking for an existing open source library written…

    Read More