Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Android / Mobile Dev Tips

Android / Mobile Dev Tips

At Mobile Tips Event, I talked about several tips - sharing tools and tech for Android / Mobile app development.

Specifically, I talked about how scrcpy, JetBrains Toolbox make my Android dev life a little easier, and how KMP/Compose Multiplatform could be an option for developing new mobile app.

scrcpy makes it easy to debug Android app with a real device, allowing us to control the device through its desktop application. It also provides simple yet useful commands. By making aliases to those commands by yourself, you can launch scrcpy instantly.

JetBrains Toolbox allows us to manage multiple IDEs from JetBrains, IntelliJ based IDEs with ease. For Android development, you can download, manage and update multiple Android Studio - Stable, Beta, Canary, and even Nightly build. Since newer versions of Android Studio often has new features that makes Android development easier, Android developers often choose to use Android Studio with Beta or even Canary version.

KMP and Compose Multiplatform is a technology that allows developers to share their Kotlin code to multiple platforms.

KMP is a technology that allows developers to share non-ui Kotlin code to multiple platforms. Target platforms can be common multiplatform - which includes both server to client side, or client multiplatform that include Android, iOS, Desktop, and Web.

Compose Multiplatform, on the other hand, is a recent technology that allows developers to share their UI code based on Jetpack Compose API, to multiple platforms. This allows Kotlin developers to most of the codebase in their app - db data, network data, logic, and UI code to be shared across multiple platforms.

In the talk I proposed that Compose Multiplatform can be an option for new small app development such as side project or personal project as it is in active development from both JetBrains and Google for better performance, developer experience, and API refinements.

* scrcpy - https://github.com/Genymobile/scrcpy
* JetBrains Toolbox - https://www.jetbrains.com/toolbox-app/
* KMP - https://kotlinlang.org/docs/multiplatform.html
* Compose Multiplatform - https://github.com/JetBrains/compose-multiplatform
* Compose Multiplatform Template for iOS/Android - iOS/Android https://github.com/JetBrains/compose-multiplatform-ios-android-template

There are other Compose Multiplatform Templates targeting other platforms as well so if you are interested in it dive into and look around other repositories in JetBrains organization GitHub account.

Shohei Kawano

August 26, 2023

More Decks by Shohei Kawano

Other Decks in Technology


  1. •Audience •Mobile app developers •Everyone interested in mobile app development

    •Goals •New tip for you 🍭 Audience & Goals 🥅
  2. •OSS •Lets you control your real device from the app

    •Provides easy commands to launch and record scrcpy https://github.com/genymobile/scrcpy
  3. •Desktop app made by JetBrains •Lets you manage multiple IDEs

    from JetBrains JetBrains Toolbox https://www.jetbrains.com/ja-jp/lp/toolbox/
  4. Kotlin Multiplatform(KMP) •KMP = Kotlin Multiplatform •Allows you to share

    Kotlin code to multiple platforms https://kotlinlang.org/lp/multiplatform/
  5. Compose Multiplatform •Multiplatform UI tooklit on top of KMP •Jetpack

    Compose based UI code shared for multiple platforms •Android, iOS(alpha), Desktop, Web(experimental) https://www.jetbrains.com/ja-jp/lp/compose-multiplatform/
  6. •scrcpy 
 →Useful for debugging with real device in Android

    •JetBrains Toolbox 
 →Useful for managing multiple JetBrains IDEs •KMP / Compose Multiplatform 
 →Can be an option for sharing logic/UI with multiple platforms Summary