Skip to content
tezvyn:

All bites

The whole library, newest first. Filter by what you are here for, or pick a topic if you already know.

4247 bites

Page 193

Android Intents: The App's Messaging System
Android & Kotlin2 min read

Android Intents: The App's Messaging System

An Intent is a message requesting an action from another app component. It's the 'glue' that lets you start new screens, launch background services, or ask other apps to open a URL.

Android's Activity Lifecycle: A Screen's Journey
Android & Kotlin2 min read

Android's Activity Lifecycle: A Screen's Journey

Think of an Activity's lifecycle as a stage play's script. Methods like onCreate() and onPause() are cues for your app screen to set up, appear, or hide. This manages state during interruptions like phone calls.

Broadcast Receiver: Responding to System-Wide Events
Android & Kotlin2 min read

Broadcast Receiver: Responding to System-Wide Events

A Broadcast Receiver is your app's antenna for system-wide announcements. It listens for events like network changes or low battery. The main footgun is performing long tasks here; the system will kill it. Offload work to WorkManager.

Android Services: Running Work Without a UI
Android & Kotlin2 min read

Android Services: Running Work Without a UI

An Android Service is a component for long-running background tasks, even when the user isn't in your app. Use it for tasks like playing audio or syncing data.

ContentProvider: Android's Shared Data API
Android & Kotlin1 min read

ContentProvider: Android's Shared Data API

A ContentProvider is a structured API gateway for your app's private data. It lets other apps query, insert, or delete data securely without direct access. The main footgun is improper permission handling, which can leak data or cause crashes.

Android ViewModel: Survive Screen Rotations
Android & Kotlin2 min read

Android ViewModel: Survive Screen Rotations

A ViewModel is a lifecycle-aware data holder that separates your UI's state from its controller. It keeps data alive during configuration changes like screen rotations, preventing data loss and repeated network calls.

LiveData: Lifecycle-Aware Data Observation
Android & Kotlin2 min read

LiveData: Lifecycle-Aware Data Observation

LiveData is a data holder that only notifies active UI components. It connects your ViewModel's data to your UI, preventing crashes and memory leaks by respecting the Android lifecycle.

Android's Task and Back Stack Explained
Android & Kotlin2 min read

Android's Task and Back Stack Explained

Think of the back stack as a stack of plates (screens). A "Task" is the entire stack for a user's workflow. The system manages this stack, but you can control it for custom navigation. The biggest footgun is misusing launch modes, which breaks back button.

ViewModel: Surviving Android Configuration Changes
Android & Kotlin2 min read

ViewModel: Surviving Android Configuration Changes

A ViewModel acts like a durable backpack for your UI's data, surviving the destruction and recreation of an Activity during a screen rotation. It holds UI state, like user input or fetched data, preventing data loss.

Android Foreground Services: Work the User Can See
Android & Kotlin2 min read

Android Foreground Services: Work the User Can See

A foreground service tells Android, "Don't kill this process; the user knows it's running." It's a contract for long-running work made visible by a persistent notification, used for music playback or navigation.

WorkManager: Guaranteed, Deferrable Background Work
Android & Kotlin2 min read

WorkManager: Guaranteed, Deferrable Background Work

WorkManager is Android's smart to-do list for background tasks. It guarantees execution for deferrable work, like syncing data, even if the app closes or the device reboots. The footgun is using it for immediate tasks; it prioritizes system health over speed.

Android & Kotlin2 min read

View and ViewGroup: The Building Blocks of Android UI

A View is a single UI widget like a button; a ViewGroup is a container that arranges them. This is the fundamental structure for all Android UIs. The common footgun is creating deeply nested ViewGroups, which slows down rendering performance.

Handling Android UI Events: Listeners and Callbacks
Android & Kotlin2 min read

Handling Android UI Events: Listeners and Callbacks

Think of UI event handling as setting tripwires. You attach a "listener" object to a UI element, and when a user interacts with it, your listener's code (the "callback") is triggered. This is how you make buttons and lists interactive.

Android & Kotlin2 min read

ConstraintLayout: Flexible UIs Without Nesting

ConstraintLayout positions UI elements by their relationships, like anchoring objects on a blueprint. It's ideal for responsive screens that avoid deep, slow view hierarchies.

RecyclerView: Efficiently Displaying Dynamic Lists
Android & Kotlin2 min read

RecyclerView: Efficiently Displaying Dynamic Lists

RecyclerView displays long lists by recycling views that scroll off-screen, like a restaurant reusing plates for new customers. It's essential for feeds or contact lists.

Android Styles and Themes: UI Consistency at Scale
Android & Kotlin2 min read

Android Styles and Themes: UI Consistency at Scale

A Style is a collection of attributes for a single View, like a button's font and color. A Theme is a style applied to an entire Activity or application, providing a consistent look and feel. They are essential for managing UI appearance efficiently.

Data Binding: Link Android UI to Data in XML
Android & Kotlin2 min read

Data Binding: Link Android UI to Data in XML

Data Binding lets you connect UI components to data sources directly in XML, eliminating manual findViewById calls. It's used to set view properties based on your ViewModel's state.

Android & Kotlin2 min read

MotionLayout: Animate Layouts with States, Not Code

MotionLayout animates layouts by describing start and end states in XML, letting the system handle the transition. Use it for complex UI choreography, like a collapsing toolbar, or to link animation progress to a user's swipe.

Android View Animation: A Blueprint for Motion
Android & Kotlin2 min read

Android View Animation: A Blueprint for Motion

Think of Android's view-based animations as a pre-written score. You define the animation (the "score") in an XML file, then apply it to a View (the "instrument") in your code. This is used for animating properties like alpha or translation on UI elements.

Composable Functions: Building UI with Kotlin Functions
Android & Kotlin2 min read

Composable Functions: Building UI with Kotlin Functions

Composable functions are Kotlin functions that describe your UI. Instead of creating View objects, you call functions like Text to build a UI tree. They are the core of Jetpack Compose for building Android UIs declaratively.