Business logic is usually platform independent but UI state management is always influenced by the platform you are building on. In this post, I will outline how I implemented a Redux inspired state management solution for my recent Kotlin multiplatform project and how it is connected to UI on Android and iOS.
ReadMy DroidCon London 2021 talk about how I scaled our whitelabel e-commerce app to be built and deployed automatically as a no-code solution.
ReadThis post describes how to build a custom side drawer that opens from the right side of the screen using Jetpack compose
ReadThis blog explains a simple setup to fake Dagger Android injections when writing instrumented tests. We will explore the new `FagmentScenario` and `ActivityScenario` as well as using them to simplify writing instrumentation tests when using Dagger Android
ReadApplications utilising concurrency must synchronise access to shared state. In this blog post, we will go through an example of building a class that can safely share access to mutable between concurrent operations with the help of `Mutex`.
ReadThis blog will show you how to setup a Kotlin multiplatfrom project with an Android and an iOS application and a shared kotlin module.
ReadGoogle announced AndroidX fragment 1.2.0 At AndroidDevSummit 2019. In this blog post we will go through this release to see what's new and how can we use this new version in our projects.
ReadIn this series of blogs, I will discuss how I implemented clean architecture in a flutter project I am working on. Robert C. Martin (Uncle Bob), introduced clean architecture which enforces separation of concerns between the different layers of a system. This makes the system testable and independent of any frameworks. This blog outlines what is clean architecture and describes the different layers to be considered in a clean architecture project.
ReadThis article serves as a how-to guide for implementing basic video conferencing with WebRTC. WebRTC is a free, open project that provides browsers and mobile applications with Real-Time Communications (RTC) capabilities via simple APIs. The WebRTC components have been optimised to best serve this purpose.
ReadKtor is a new framework for building asynchronous servers and clients. It's 100% Kotlin and runs on Coroutines. In this blog, we will explore using the Ktor client to make HTTP requests in an Android App.
ReadA quick introduction to the lifecycle of Android Views and an example on how to implement onMeasure to negotiate your view's size.
ReadThis is the second part of a series of blogs about Robolectric 4. It will explain how Robolectric works and what might go wrong. This blog will also explain how can we bridge the gap between Robolectric and Espresso.
ReadThis is the first part of a series of blogs about Robolectric 4. This part will go through project setup steps and running the first shared test.
ReadSetup wireless ADB and debug your Android app over Wi-Fi
Read