Beatrice Kinya
Android Engineer | Google Developer Expert for Android
Actions
Beatrice Kinya is an Android Engineer and Google Developer Expert for Android. I’m passionate about learning and sharing knowledge with others. I write technical blogs, create Android courses as well as speak at tech meet-ups and conferences. In my spare time, you'd find me in the mountains hiking or just knitting
Modern Android Development using MVI architecture
Architecting your Android App. Sounds conventional, right? There is no right or wrong answer.
Over the past years, app architecture has evolved. From god activities to MVP to MVVM with the rise of architecture components :], to MVI.
Jetpack compose, the modern UI toolkit for Android introduces a new way of writing your App UI. It is declarative. Hence, compose works fluently with unidirectional data flow architectural patterns.
In this session, we’ll see how the common architectural patterns work with Jetpack compose paradigm. We’ll go through the Model as the single source of truth. We’ll also look at handling SingleLiveEvents and app navigation using MVI pattern, and the benefits of unidirectional data flow. In the end, we’ll have fewer UI - related bugs in our Android apps.
Android Developer Keynote
Engineers at Google are consistently working on technologies, and APIs to help you build robust apps and ship faster.
Come learn about the latest updates on Android. From using AI to develop your apps faster and publish them on Google Play to building adaptive apps for different form factors. I'll also talk about Modern Android Development covering tools and APIs that accelerate your app development while writing safer and better code. These tools and APIs are purpose-built to take advantage of the new form factors capabilities from the start: Compose for TV, Glance, Material 3, and other Jetpack Compose updates, exciting Kotlin updates including K2 compiler and Kotlin DSL for build scripts. You can now use Kotlin everywhere throughout your app. I’ll also share new updates in Android Studio and new things in Google Play.
Come discover what's new in Android in 2023!
Modifiers: The secret sauce of Jetpack Compose
Jetpack compose provides powerful and intuitive Kotlin APIs for building native app UI. Modifiers are one of them and my favorite API.
In this talk, we'll dive deep into modifiers and learn how to use them to customize the look and behavior of our UI components. We'll look at creating custom modifiers and reusing modifiers.
Then, we'll also explore some of the best practices using modifiers.
At the end of the talk, we'll have learned how to use modifiers to build robust and flexible UIs.
Modern Android Development using MVI architecture
Architecting your Android App. Sounds conventional, right? There is no right or wrong answer to this.
Over the past years, app architecture has evolved. From god activities to MVP to MVVM with the rise of architecture components :], to MVI.
Jetpack compose, the modern UI toolkit for Android introduces a new way of writing your App UI. It is declarative. Hence, compose works fluently with unidirectional data flow architectural patterns.
In this session, we’ll see how the common architectural patterns work with Jetpack compose paradigm. Then, we’ll go through the model as the single source of truth. We’ll also look at handling SingleLiveEvents and app navigation using MVI pattern, and the benefits of unidirectional data flow. In the end, we’ll have fewer UI - related bugs in our Android apps.
Lazy Layouts in Jetpack Compose
One of the most common features of mobile apps is they display data, such as feeds on a social medial app, or a playlist of favorite songs on Spotify. In Android View, developers used the now-deprecated ListView, and RecyclerView later to show large lists of data.
Jetpack compose, using lazy layouts, provides a modern, easy, and efficient solution to display a large list of data. With less code, you can implement lists or grids in an Android app. No more adapter classes or XML code😊.
In this talk, we’ll go through implementing lazy lists and grids in Jetpack Compose, adding items, and animating lists content. We’ll also look at handling state on lazy layouts. Finally, we’ll look at optimization tips and performance concerns with lazy layouts.
Happy Composing!
Jetpack DataStore
In Android apps, you can store user settings, like language, using SharedPreferences API. SharedPreferences runs its read/write operations on the UI thread. This can block the UI thread, becoming a source of ANRs(Application Not Responding).
Jetpack DataStore is the new and improved data storage solution. It allows you to store key-value pairs or typed objects using protocol buffers. It is built on Kotlin Coroutines and Flow. Hence, data is stored asynchronously, consistently, and transactionally, overcoming some of the limitations of SharedPreferences.
In this session, I'll go through Jetpack DataStore. I'll go over the two implementations: Preferences DataStore and Proto DataStore, as well as how to migrate SharedPreferences to DataStore. Goodbye ANRs 😀.
Kigali Devfest 2023 Sessionize Event
Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.
Jump to top