Let us handle the lower level parts of inking while you innovate on the rest of what makes your app essential and delightful for your users.
https://t.co/aEZrA3KTmU
Compose 1.7.0 provides a stable release with new tools to build a great user experience including shared elements, lazy list item animations, text improvements, new Flow layouts, and perf improvements.
Check out the I/O '24 blog post for an overview: https://t.co/eIsFzbU24v
I published a new blog post in which I talk a bit about how Kotlin makes scary low-level code easy to use with zero-cost abstractions. And I also show yet another example of why you should use R8. Enjoy!
https://t.co/rlxMUVe7AC
https://t.co/y9pxWLU0fV is for blocking operations. If you need to use a suspending function from Room or Retrofit, Ktor Client, or another (correctly implemented) suspending API, you do not need to switch context to https://t.co/y9pxWLU0fV. This is just an unnecessary cost and a risk of waiting in a queue.
Firebase Test Lab provides cloud-based infrastructure for testing Android apps and features full integration with Android Studio for running instrumented tests and reviewing test results. 🔥🤩
Build your instrumented test → https://t.co/tyLai0Cnaw
IDE performance has been a primary concern for Kotlin developers for a long time. Thanks to K2, this is set to change. Take a look at the current improvements:
🚀Completion: 1.5x faster
🚀Highlighting: 1.7x faster
🚀Full file analysis: 2.1x faster
https://t.co/WUwtGSGjBZ
Today's #JetpackReleaseNotes include Browser 1.8.0, bug fix releases in Compose 1.6.3, Compose Material3 1.2.1, Credentials 1.2.1, Camera 1.3.2, and Accompanist Navigation Material is now part of androidx.compose.material:material-navigation!
https://t.co/iJvbCOpTkH
The if-condition in Kotlin is more powerful and has capabilities that Kotlin's predecessors don’t support.
Kotlin's superpower: the if-else statement used as an expression! 💪This eliminates the need for ternary operators & lets us keep code readable and short at the same time.
Kotlin's lambda expressions can use and modify variables from the scope in which they are defined creating closures.
More on this functional programming concept in Functional Kotlin by @marcinmoskala. 📘 https://t.co/ZvPQjdX7Lv