Systems | Development | Analytics | API | Testing

Android Emulator Setup Guide for App Testing

The Android emulator is an Android virtual device that is used to test and debug Android code. It looks and behaves the same as a physical Android device, and while it has some limitations (more of which later), it provides real time and cost savings for developers. Unlike the iPhone, which is limited to one manufacturer and a specific number of iOS versions, there are thousands of Android device types out there.

Jetpack Compose Fragments: How to Migrate and Integrate in Android Apps

Imagine you’re a toolmaker. You’ve got an old-school toolshed with loads of ancient equipment: hammers, pickaxes, all the stuff people used hundreds of years ago. And then one day you walk into your toolshed to find laser cutters, 3D printers and loads of other digital tools at your disposal. Life would suddenly seem a lot simpler, right?

Tracing, Logging, Metrics: Unifying Observability with OpenTelemetry

Software development has always evolved with new paradigms to meet the growing demands of modern systems. One of the most significant shifts has been the adoption of microservices. Emerging in the early 2010s, this architectural pattern moved away from monolithic applications in favor of smaller, independent services that interact with each other over a network.

Kotlin Apply and other Kotlin Scope Functions

Last week, we got a question from one of our users asking us how to use Kotlin Apply. Specifically, the reader wanted to know whether it was best to use the apply function in their Android application, or another of the many Kotlin scope functions. So we got to thinking: Why not write an article about the whole topic of Kotlin scope functions? After all, they’re awesome: they let us write readable, concise code in Kotlin, and work with an object without the need for repeated references.

Swift Concurrency Explained: GCD, Operation Queues, and Async/Await

Concurrency is the ability of an app to perform multiple tasks at once, and it’s a crucial concept for apps that need to perform multiple tasks at once in an efficient, usable way. Thankfully Swift has made great strides with concurrency, and now provides simple tools for writing robust apps that are responsive and enjoyable to use. In this article we’ll explore two main ways of using threads for concurrency models.

SwiftUI Navigation Explained: Best Practices for Seamless App Flow

Navigation is one of the most basic functionalities of any app, and among the most crucial aspects of our work as developers. From replacing a login screen with our actual logged-in state app, to showing a modal with details of any item inside our app, all of these are navigational challenges we need to tackle in our day-to-day. SwiftUI has introduced a modern approach to navigation in Apple-based platforms.

ImageView in Android: Everything You Need to Know

In Android, ImageView is a widget used to show an image, so it’s vital for every kind of app we build. In fact, it’s the most common widget that we’ll use as Android developers. The image can be a profile image, graphic, or any other type of image, and it can be loaded from a res/drawable folder or an external source. ImageView is pretty straightforward once you’ve got the hang of it, but there’s some stuff we need to know if we’re going to make the most of the widget.

Creating Smooth and Engaging UI with SwiftUI Animations

Animations make our apps seem more alive, approachable and interactive, and they add that extra level of polish, which is crucial in an age of ever-greater consumer choice. One of the great things about Swift is that it provides a range of animation functionality straight out of the box. In this post, we’ll explore some of this functionality and demonstrate some popular techniques for SwiftUI animations, so you can use them on your own projects.

Legal Risks of Using Mobile Analytics: How to Protect Yourself

Mobile data provides the eyes and ears of a modern business. It helps us understand where our audience is, what they want to know and what they respond to most enthusiastically. And it can make our apps run faster, too. In a world of ever-increasing consumer choice, this kind of stuff doesn’t just matter. It’s crucial. However, while mobile data can lead to new ideas, it can also be very dangerous if not used properly.

Jetpack Compose Button Tutorial: From Basics to Advanced Features

Jetpack Compose (sometimes mistakenly called Android Compose) is a powerful new UI toolkit for Android that embodies the principle of ‘Code As UI’, offering aa simpler and faster way to build native android UI using a declarative approach. Of all the UI components in Jetpack Compose, buttons have a special place, as these are the cornerstone of our user interface. They allow the user to take actions, submit forms, and navigate around the app smoothly.