In Android, a client can bind to a Service
running in a different process and even a different APK, but how could the bound service know the remote client is killed by the system and release the resources?
New York Times: Asians 'vividly overrepresented'
Asian Americans are doing a fantastic job in the Winter Olympics. But instead of celebrating the success, New York Times decided to launch a new round of racial attacks.
[Read More]New Bluetooth permissions in Android 12
In this article, I will discuss the new Bluetooth permissions introduced in Android 12.
[Read More]Understanding BLE throughput on Android
We have been told that the BLE can reach a throughput of 1 Mbps (or 2 Mbps with Bluetooth 5.0). But why do we always feel it’s extremely slow in practice? In this article, I will try to explain this, and how to improve throughput on Android.
[Read More]Getting started with Kotlin Multiplaform Mobile (KMM)
Kotlin Multiplatform Mobile (KMM) is a cross-platform framework to share code for Android and iOS apps.
[Read More]Model-View-Intent Design Pattern on Android
Model-View-Intent (MVI) is one of the latest design patterns for Android, which relies heavily on reactive and functional programming.
[Read More]All Democratic Senators voted for racial discrimination against Asians in higher education
Yes, you read it right: today, all Democratic Senators voted to allow racial discrimination against Asians in higher education. And yes, all Republican Senators voted against the discrimination.
[Read More]Three Programming Paradigms
In this article, we talk briefly about the three programming paradigms that are widely used: structured programming, object-oriented programming, and functional programming.
[Read More]How US Respond to Coronavirus in Early Days
Here is the timeline on how US responded to Coronavirus from middle January to end of March.
[Read More]Dependency Injection with Hilt
Hilt is a new Dagger-based library for Android apps, providing an easy way to incorporate dependency injection with less boilerplate code. In this article, we’ll discuss how to use it.
[Read More]