App Architecture: How to map data between layers
ProAndroidDev
by Mkhytar Mkhoian
16h ago
App Architecture: How to map data between layers Photo by Joshua Sortino on Unsplash This is a series of articles about how to architecture your app that it was inspired by Google Guide to App Architecture and my personal experience. What architecture to choose for the project? A common question for many engineers and often the choice is to follow Clean Architecture principles. Put the code in different layers, usually, it’s Data, Domain, and Presentation. Each of the layers has its components logic, and data models. One of the main ideas of different layers is to have a dependency h ..read more
Visit website
Toggle Labels With Icons — Personalizing Accessibility
ProAndroidDev
by Eevis Panula
16h ago
Toggle Labels With Icons — Personalizing Accessibility As mentioned in my previous blog post, Personalizing Accessibility with Settings, accessibility for the broadest group of users often requires some personalization. What is accessible for one might not be accessible for another. In this blog post, I will discuss one example of accessibility issues that could be solved with the help of settings: Icons and the need for text labels accompanying them. As you can see from the next section, this particular issue is personal to me, and I wanted to give an example of how to solve it. Wh ..read more
Visit website
Kotlin Design Patterns: Observer Explained
ProAndroidDev
by Michal Ankiersztajn
16h ago
Behavioral Design Pattern Purpose of the pattern Creation of a subscriber-publisher mechanism to notify subscribers when a state changes. It’s helpful because this way, instead of having to check for state change periodically, we’re notified whenever the state changes. What do we get from that? Open/Closed, we can add subscribers without changes inside the publisher. One-To-Many dependency without tight coupling. State-based approach. Efficient State observation. Implementation Typically, the implementation would look like this: Typical Observer Class Diagram An ..read more
Visit website
Update For Your Compass — New Android Orientation API
ProAndroidDev
by Tomáš Repčík
2d ago
Update Your Compass — New Android Orientation API Android provides a new Fused Orientation API from multiple sensors Android now fuses more sensors, so you do not have to do calculations on your own. It gives you the bearing and orientation of your device. In specific, the new Orientation device fuses the accelerometer, gyroscope and magnetometer to bring more precise and consistent measurements of the device’s orientation. It compensates for sensor issues on the lower levels and timing of the sensors. Implementation Dependencies Firstly, you need to update Google Play loc ..read more
Visit website
Kotlin Coroutines 101: Async programming in practice
ProAndroidDev
by Eury Pérez Beltré
2d ago
Kotlin Coroutines 101: Async Programming in Practice Hello folks ✌?? As you start learning Kotlin or Android you will face the need to offload heavy tasks from the UI Thread. You won't like your users to complain about your app to be slow! Embark on a journey from Kotlin coroutines novice to expert with this comprehensive article. We’ll guide you through the essential concepts, providing practical code samples every step of the way. Table of Concepts Understanding Coroutines: A Primer Kotlin Coroutines Components Delving into CoroutineContext: Understanding the ..read more
Visit website
Consume Flows Safely in non-composable scopes in Jetpack Compose
ProAndroidDev
by Eury Pérez Beltré
2d ago
Hello devs! When it's time to collect a flow in the fragment or composable there's always a red flashing light ?, sounds of war and a sudden fear caused by a whisper in our ears: memory leakssss. There are great articles that show how to collect our flows safely as state, like the one from Manuel Vivo: Consuming flows safely in Jetpack Compose This article shows the efficient collectAsStateWithLifecycle() to avoid major issues. But, What about flow collection in non-composable scopes like inside a LaunchedEffect? If you have a flow to dispatch one-time events like showing an error ..read more
Visit website
How Suspend Functions Work in Kotlin: Under the hood
ProAndroidDev
by Sagar Malhotra
4d ago
The suspension capability is the most essential feature upon which all other Kotlin Coroutines concepts are built. Your main goal in this article will be to gain a solid understanding of how it works internally. In one line: Suspending a coroutine means stopping it in the middle. Analogy: Let’s first understand the actual meaning of suspension with some real-world examples: Let's start playing a video game: You are playing well(Suppose). You reach a checkpoint. You save the current position.You turn off the game and both you and your computer focus on doing different things now. You are ..read more
Visit website
Increase performance of your app by caching API calls using OkHttp
ProAndroidDev
by Ishan Vohra
4d ago
Increase the performance of your app by caching API calls using OkHttp Let’s be honest, we’ve all been there — frantically refreshing our app, watching the loading spinner spin endlessly as we wait for that critical API response. It’s a dance we’ve perfected, isn’t it? The rhythmic tapping of our fingers, the subtle eye rolls, and the not-so-subtle muttering under our breath. “Come on, just give me the data already!” When it comes to building applications that interact with external APIs, caching can be a game-changer. API calls can often be slow, resource-intensive, and subject to rate ..read more
Visit website
Ready, Aim, Release: Android app rollout tips
ProAndroidDev
by Nikos Linakis
1w ago
Practical tips and strategies for smooth mobile app releases and post-release issue management Note: For the purpose of this blog post, I have created (and published) an open-source toy app on GitHub. The app randomly colorises the state of Colorado on a USA map when the user taps on the screen. It’s called Colorandom (pun intended). There is a wide misconception that once you finish your dev work (add as many pre-release steps as you like here: QA, UAT, etc) you can release your mobile app and all your users will get your shiny new version. This assumption comes from the web realm where once ..read more
Visit website
Creating a Time Picker Based on the ELSA Speak App Using Jetpack Compose
ProAndroidDev
by Andrii Veremiienko
1w ago
This image was created with the assistance of DALL·E 2Motivation After writing about Glovo-animation, I was still curious about one type of movement in the app known as fling animation. I realized that learning this could help me get better at designing user interfaces. Then, I saw the same animation in another app called ELSA Speak, and it seemed like a hint that I should dive deeper into it. I decided to learn all about it and share my findings with others who enjoy making apps look nice. Check the comments for extra tips and explanations! En avante! The ELSA Speak Time Picker ..read more
Visit website

Follow ProAndroidDev on FeedSpot

Continue with Google
Continue with Apple
OR