#compose #testing
How to test Jetpack Compose UI
An example of how you can test Jetpack Compose UI and review of new APIs for that
How to test Jetpack Compose UI
An example of how you can test Jetpack Compose UI and review of new APIs for that
π1
#jetpack #workmanager
Android Jetpack Updates. September 1, 2021
π WorkManager 2.6.0 uses the standardized mechanism of androidx.startup for initializing WorkManager and includes a number of improvements for its multi-process support
π Compose 1.0.2 (no Kotlin 1.5.30 support)
π Activity 1.4.0-alpha01 implements MenuHost interface. This allows any component to add menu items to the
π Navigation 2.4.0-alpha08 support creation of custom NavType programmatically
π Profiler Installer 1.0.2 improves support Android 9-11
Android Jetpack Updates. September 1, 2021
π WorkManager 2.6.0 uses the standardized mechanism of androidx.startup for initializing WorkManager and includes a number of improvements for its multi-process support
π Compose 1.0.2 (no Kotlin 1.5.30 support)
π Activity 1.4.0-alpha01 implements MenuHost interface. This allows any component to add menu items to the
ActionBar by adding a MenuProvider instance to the activityπ Navigation 2.4.0-alpha08 support creation of custom NavType programmatically
π Profiler Installer 1.0.2 improves support Android 9-11
#kapt #ksp
Accelerated Kotlin build times with Kotlin Symbol Processing 1.0
Kotlin Symbol Processing - KAPT replacement, that is faster and supports not only JVM (Kotlin/JS & Kotlin/Native are ready). Moshi & Room support KSP and I am waiting for KSP in Dagger
Accelerated Kotlin build times with Kotlin Symbol Processing 1.0
Kotlin Symbol Processing - KAPT replacement, that is faster and supports not only JVM (Kotlin/JS & Kotlin/Native are ready). Moshi & Room support KSP and I am waiting for KSP in Dagger
#kotlin
Kotlinx.Serialization 1.3.0-RC
π The first experimental version of the serialization API for IO streams
π New way to fine-tune the serialization of default values:
π A new JSON configuration property
π A way to set a custom discriminator name for each class hierarchy to enable more flexible serialization.
π Support for Java module system
π Native targets for Apple Silicon
π¨ Bugfixes and improvements
Kotlinx.Serialization 1.3.0-RC
π The first experimental version of the serialization API for IO streams
π New way to fine-tune the serialization of default values:
π A new JSON configuration property
explicitNulls defines whether null property values should be included in the serialized JSON stringπ A way to set a custom discriminator name for each class hierarchy to enable more flexible serialization.
π Support for Java module system
π Native targets for Apple Silicon
π¨ Bugfixes and improvements
#android12
Android 12 Beta 5 update, official release is next!
Beta 5 Android 12 has been released that contains various improvements and fixes. Beta Android 12 is also available for the Pixel 5a. They promise the next release within a few weeks, and it will be final!
Android 12 Beta 5 update, official release is next!
Beta 5 Android 12 has been released that contains various improvements and fixes. Beta Android 12 is also available for the Pixel 5a. They promise the next release within a few weeks, and it will be final!
#survey
The Kotlin team is working on improving libraries authors experience, and they want to know more about real use cases. If youβve worked on your own library or plan to create one, please share your feedback by taking this survey.
The Kotlin team is working on improving libraries authors experience, and they want to know more about real use cases. If youβve worked on your own library or plan to create one, please share your feedback by taking this survey.
π1
#dagger #hilt
Hilt Extensions in the MAD Skills series
The article / video explains Hilt extensions that can add modules and entry points to Hilt. For example, Jetpack WorkManager. You will learn how extensions work and how to create your own and ideas.
Hilt Extensions in the MAD Skills series
The article / video explains Hilt extensions that can add modules and entry points to Hilt. For example, Jetpack WorkManager. You will learn how extensions work and how to create your own and ideas.
#wear
Wear OS Jetpack libraries now in stable!
A library for developing applications for Wear OS has become part of Jetpack. Compared to Wearable Support, new features have appeared, some libraries 100% Kotlin, and support of WearOS 3.0 has been added.
Wear OS Jetpack libraries now in stable!
A library for developing applications for Wear OS has become part of Jetpack. Compared to Wearable Support, new features have appeared, some libraries 100% Kotlin, and support of WearOS 3.0 has been added.
#android12 #workmanager
Using WorkManager on Android 12
Everyone who is preparing to support Android 12 should use Work Manager 2.7 (now in alpha) because current stable doesn't support expedited jobs
Using WorkManager on Android 12
Everyone who is preparing to support Android 12 should use Work Manager 2.7 (now in alpha) because current stable doesn't support expedited jobs
#survey #scripts
Do you write Kotlin scripts or use REPL? Please share your experience with the Kotlin Team and tell them about your use cases! By doing so, you will help to improve Scripting APIs and bring them closer to stabilization. Survey is here
Do you write Kotlin scripts or use REPL? Please share your experience with the Kotlin Team and tell them about your use cases! By doing so, you will help to improve Scripting APIs and bring them closer to stabilization. Survey is here
#codequality
Automation of code analysis in Android projects
Review of tools that will help you automate check quality of code and tech debt in project. Of course, they will make your skills better because you will show a lot of best practices.
Automation of code analysis in Android projects
Review of tools that will help you automate check quality of code and tech debt in project. Of course, they will make your skills better because you will show a lot of best practices.
#coroutines #kotlin
Exception handling in Kotlin Coroutines
Overview of how to handle an error that occurred while running Coroutine
Exception handling in Kotlin Coroutines
Overview of how to handle an error that occurred while running Coroutine
β€1
#kapt #ksp
Kotlin Symbol Processors (KSP)
KSP becomes stable. JetBrains said that KSP better understands the syntax of Kotlin and does not need to take extra steps compare to KAPT.
The main news is that KAPT switch into support mode. No features or improvements. New features will only be in KSP and other Kotlin compiler plugins. They didn't say anything about KSP support in IDE.
Kotlin Symbol Processors (KSP)
KSP becomes stable. JetBrains said that KSP better understands the syntax of Kotlin and does not need to take extra steps compare to KAPT.
The main news is that KAPT switch into support mode. No features or improvements. New features will only be in KSP and other Kotlin compiler plugins. They didn't say anything about KSP support in IDE.
β€1
#compose
Always provide a Modifier parameter
Any composable you write which emits layout (even a simple Box), should have a modifier: Modifier parameter, which is then used in the layout. Why? More details in the article
Always provide a Modifier parameter
Any composable you write which emits layout (even a simple Box), should have a modifier: Modifier parameter, which is then used in the layout. Why? More details in the article
#kotlin #native #multithreading
Kotlin Native. Multithreading with Coroutines
Kotlin Multiplatform provides common way to implement the multithreading. It uses Kotlin, so we can use Coroutines for all our targets. In the article you will find how to do that
Kotlin Native. Multithreading with Coroutines
Kotlin Multiplatform provides common way to implement the multithreading. It uses Kotlin, so we can use Coroutines for all our targets. In the article you will find how to do that
π1
#compose
Snapper is a library which brings snapping to the Compose scrolling layouts
Snapper can be summarized as SnapHelper for LazyRow & LazyColumn, adding item snapping, maximum fling distance, snap position, and more
Snapper is a library which brings snapping to the Compose scrolling layouts
Snapper can be summarized as SnapHelper for LazyRow & LazyColumn, adding item snapping, maximum fling distance, snap position, and more
β€1
#android12 #androiddevsummit
12L and new Android APIs and tools for large screens
Announced a preview of a special version of Android 12 for devices with large screens: tablets, foldable and Chrome OS - Android 12L (L - large as I understand it).In this version, the UI of the system for large devices has been updated, multitasking has been improved, new taskbar, etc.
Android 12L will be release early 2022. Google recommends adapting the applications, but it will not be mandatory to be published on Google Play.
In addition, the Material Design manual has been updated, and an API has been added for developing universal applications for various screen sizes. Now you can embed Activity (Activity embedding), Window size classes (will appear in Jetpack Window 1.1) and other possibilities for folding devices.
An interesting innovation is resizable emulator that can change screen size on the fly: phone, tablet (portrait and landscape), folding device
12L and new Android APIs and tools for large screens
Announced a preview of a special version of Android 12 for devices with large screens: tablets, foldable and Chrome OS - Android 12L (L - large as I understand it).In this version, the UI of the system for large devices has been updated, multitasking has been improved, new taskbar, etc.
Android 12L will be release early 2022. Google recommends adapting the applications, but it will not be mandatory to be published on Google Play.
In addition, the Material Design manual has been updated, and an API has been added for developing universal applications for various screen sizes. Now you can embed Activity (Activity embedding), Window size classes (will appear in Jetpack Window 1.1) and other possibilities for folding devices.
An interesting innovation is resizable emulator that can change screen size on the fly: phone, tablet (portrait and landscape), folding device
π2π1