Android Development

Published on 12/7/2025

The best practices as on 2025 are as follows:

  • Kotlin programming language
  • Use rebranded libraries called Jetpack, outside SDK
  • Declarative UI with Compose
  • Room ORM
  • Android Studio as IDE
  • Gradle as built system
  • Follow architectural guidelines
  • Hilt for dependency injection

Dependencies

  • Minimum supported Android SDK version
  • Latest Android Studio & its plugins
  • Gradle, its plugins & their respective versions
  • Runtime & test dependencies of the application

Each of the above items will get updated independently.

Wifi pairing of Phone with Android studio

For a long time, there were errors generated when trying to pair phone in android studio. It randomly works after several tries. Not much details were displayed in error message either.

Upon some web search, apprantly the phone is randmizing MAC addresses. After disabling this, pairing failed very often.

Later with command line, wifi pairing works reliably. The commands are:

  • Enable wifi debugging & select pairing by code in phone
  • adb pair PHONE_IP:PHONE_PORT
  • adb connect PHONE_IP:PHONE_PORT_2

IP & PORTs were shown in the phone.

Cross Platform

The tech stack is changed to React Native with Expo framework. iOS market is big & lucartive. Even though, I can’t pay for Apple developer account now, it might be easier to try that later.

Development tools are better than native tools. Can work on UI before working on other stuff, with browser.

For making production build, there are certain difference from the offical expo documentation. The values in build.gradle should not be key names from gradle.properties. It should be hardcoded constants. The editing of fields, also has to disable the debug counter parts, which is not mentioned in the documentation.

Play Store

To upload the release build to Google play, it need to be tested by 12 testers. Ideally app should be build in public. I shall find some initial customers, who might be interested in it. Then app need to be professional. I could call upon a few friends and family, join some Goolge Groups etc. But if anyway we have to market it, why not try that.

made with ♥️