PinnedRaymond Chan·Dec 17, 2022Adopting Kotlin Multiplatform (KMP) on 9GAG AppOpinions expressed are solely my own and do not express the views or opinions of my employer.
Raymond Chan·Oct 11, 2023Configuring your sourceCompatibility, targetCompatibility and kotlinOptions.jvmTarget all at onceRecently I learnt a trick that you can set sourceCompatibility, targetCompatibility and kotlinOptions.jvmTarget all at once:
Raymond Chan·Oct 4, 2023Xcode crashed with SwiftUI preview and Koin?I encountered a crash in Xcode with Koin recently, when I tried to preview a SwiftUI component in Xcode, it kept crashing with the…
Raymond Chan·Oct 2, 2023Sending adb command to all of your connected devicesSometimes you may need to perform adb commands on all of the connected devices during development. For example, I sometimes need to install…A response icon2A response icon2
Raymond Chan·Jul 1, 2023Changing app version without a Gradle syncEvery time you would like to test for app upgrade during development, you need to change the versionCode on Android Studio and then…
Raymond Chan·Oct 23, 2018Gson, Kotlin and Proguard is crashing my app!Lately I have been working with Kotlin, the code base is mixing Java and Kotlin. One of the issues I found is that when Java Gson model is…
Raymond Chan·Jul 27, 2018Fastlane with RVM on macOSWhy should you use RVM instead of using system’s Ruby?A response icon1A response icon1
Raymond Chan·Jul 13, 2018Surprising API behaviour change for android.text.format.Formatter.formatFileSizeWhile we are implementing a feature to display the cache size in app for users, we think that there should be a simple function in Android…A response icon1A response icon1
Raymond Chan·Apr 17, 2018PublisherAdView is causing RecyclerView (any scrollable view) to shift?Recently the 9GAG Android app has integrated PublisherAdView to post list. We found a strange bug that the list( RecyclerView ) will shift…A response icon1A response icon1
Raymond Chan·Dec 13, 2016My thoughts on React NativeWe are trying to use React Native to rebuild the whole app, so that it can be run on iOS and Android with the same code base at the same…