Mobile development
Development, infrastructure, SEO, AI and IT for business — short and to the point.
75 articles
- Mobile development4 min
Alternative App Stores: Huawei AppGallery, RuStore and Others
Publishing outside Google Play pays off when a noticeable share of your users are on Huawei devices without Google services or in Russia; it requires separate builds that swap push, payments, maps and sign-in for each platform's equivalents.
Basics - Mobile development4 min
Android Fragmentation: Choosing Min OS Version and Test Devices
Pick the minimum Android version from your own audience data by weighing lost users against the cost of supporting old versions, then test on a small matrix: oldest and newest versions, popular models, a low-end device and different vendor skins.
Basics - Mobile development4 min
APK vs AAB: Android App Formats Explained
An APK is the package that gets installed on a device, while an AAB is a publishing format: Google Play builds lighter, device-specific APKs from it and signs them with the app signing key.
Basics - Mobile development4 min
How to Request App Permissions on iOS and Android the Right Way
Ask for a permission at the moment the user starts the action that needs it, and explain why. If access is denied the app must keep working, and limited photo or location access should be handled as a normal case.
Practice - Mobile development3 min
App Store Privacy Labels and Google Play Data Safety: How to Fill Them
In both forms you declare what data the app and all its SDKs collect, why, and whether it is shared with third parties. Answers must match the app's real behavior and privacy policy, or the store may reject updates or remove the app.
Practice - Mobile development3 min
App Store and Google Play Fees: How Much the Stores Take
Both stores take a standard 30% commission on digital purchases, with a reduced 15% rate for small businesses and subscriptions. Apple charges a yearly developer fee, Google Play a one-time fee; payments for physical goods and services are not subject to store commission.
Basics - Mobile development4 min
A/B Testing App Store Pages: Product Page Optimization and Experiments
Both stores have built-in A/B tests for the store page — Product Page Optimization on iOS and Store Listing Experiments on Google Play; test one big idea at a time (icon, first screenshots, short description) and wait for a confident result before applying it.
Practice - Mobile development4 min
Common App Store and Google Play Rejection Reasons and How to Fix Them
Most rejections come from crashes, missing demo access, wrong payment flows, privacy issues and thin functionality; nearly all of them are prevented by a pre-submission checklist and fixed with a precise, polite reply to the reviewer.
Practice - Mobile development4 min
ASO Checklist: Title, Keywords, Screenshots and Ratings
ASO is the work on your store page that helps people find your app for the right searches and install it more often. The core: keywords in the title and metadata, strong first screenshots, a localized listing, review management and regular A/B tests.
Practice - Mobile development4 min
Background Work on iOS and Android: Limits and Reliable Patterns
Neither OS guarantees exact timing for background work, so reliable sync relies on system schedulers, OS-managed background transfers, idempotent operations and a catch-up sync every time the app opens.
Advanced - Mobile development4 min
How to Add Face ID and Fingerprint Login to a Mobile App
Biometrics never hand your app a fingerprint or face; they only unlock a key or token in the device's secure storage, so proper Face ID login is built on Keychain/Keystore, not on a yes/no check.
Practice - Mobile development4 min
Crash Reporting for Mobile Apps: Crashlytics vs Sentry
Crashlytics is the free, fast option if you already use Firebase; Sentry is stronger for errors, performance and self-hosting but more complex and paid at volume. Either way, crash reports are unreadable without uploaded dSYM and mapping files.
Practice - Mobile development3 min
Deep Links in Mobile Apps: Universal Links and App Links Setup
For reliable deep links, use regular https links verified by a file on your domain: Universal Links on iOS and App Links on Android. Keep URI schemes like myapp:// as a fallback.
Practice - Mobile development4 min
How to Register Apple and Google Developer Accounts from Uzbekistan
Decide early who owns the account: an individual needs a passport and an international card, a company needs a D-U-N-S number whose data matches the official registry; most problems come from mismatched names, addresses and card details.
Practice - Mobile development4 min
Does Your Business Need a Mobile App? How to Decide
You need an app when customers come back often and regularly or when you need phone features; otherwise an adaptive website or a Telegram bot solves the job faster and cheaper.
Basics - Mobile development4 min
Expo vs Bare React Native: Which Workflow to Choose
For most new projects, start with Expo: it does not block native code, it plugs it in through development builds and config plugins. Bare React Native makes sense when you actively hand-edit the native projects.
Practice - Mobile development4 min
How to Set Up Push Notifications with Firebase Cloud Messaging
Connect Firebase to your Android and iOS apps, upload an APNs key, store device FCM tokens on your server and send messages through the Firebase Admin SDK; topics handle interest-based broadcasts and a test send from the console verifies delivery fast.
Practice - Mobile development4 min
Flutter State Management: Provider vs Riverpod vs BLoC
Provider fits small apps, Riverpod is a sensible default for most new projects, and BLoC pays off in large teams that need strict rules and a traceable flow of events.
Advanced - Mobile development4 min
Flutter vs React Native: An Honest Comparison
Both frameworks are mature and fit serious apps. Flutter draws the UI itself and looks identical everywhere, while React Native uses native components and wins when you already have a React and TypeScript team.
Basics - Mobile development4 min
How to Make Users Update Your App: Force and Flexible Updates
On launch the app fetches minimum and latest versions from the server: below minimum shows a blocking update screen, below latest a soft prompt, while the API keeps serving old clients until they move.
Practice - Mobile development4 min
Home Screen Widgets on iOS and Android: When an App Needs One
A widget shows one up-to-date thing without opening the app and refreshes on the system's terms, not in real time; it is worth building when users have a reason to check often — a status, balance, schedule or progress.
Basics - Mobile development4 min
How Push Notifications Work on iOS and Android
Your server never sends a push straight to the phone: it hands the message and a device token to the platform service — Apple's APNs or Google's Firebase Cloud Messaging — which delivers it to the device. Showing a notification requires the user's permission.
Basics - Mobile development4 min
How to Get More App Ratings and Reviews Without Breaking Store Rules
Ask for ratings only through native APIs (StoreKit on iOS, In-App Review on Android) right after a user succeeds at something, reply to reviews and fix what people complain about. Rewarding ratings or filtering out unhappy users is banned by both stores.
Practice - Mobile development4 min
What Is a Hybrid App: Capacitor, Ionic and WebView Wrappers
A hybrid app is a web interface inside a native shell with a WebView; it ships fast from existing web code but feels less responsive than native and risks store rejection if it only mirrors a website.
Basics - Mobile development4 min
How to Improve Mobile App Retention: Practical Tactics
Retention grows when users reach value (the aha moment) quickly, have a reason to come back and hit no churn points, and every change is verified on cohorts.
Practice - Mobile development4 min
In-App Purchases vs Payme and Click: When Each Is Allowed
Digital things used inside the app (subscriptions, premium features, game currency) must be sold through the store's in-app purchases; physical goods and real-world services can be paid with Payme, Click or cards.
Basics - Mobile development3 min
How to Implement In-App Purchases and Subscriptions
Create products in App Store Connect and Play Console, run purchases through StoreKit and Google Play Billing, validate them and store access status on your server, and set up free trials and purchase restoration per each store's rules or through RevenueCat.
Practice - Mobile development4 min
App Signing Explained: iOS Certificates, Profiles and Android Keys
Signing proves an update comes from the same owner; on iOS Apple manages it through certificates and profiles, on Android the key point is never to lose the upload key, and all keys should sit in company-owned accounts, not with a contractor.
Basics - Mobile development4 min
Apple Human Interface Guidelines: The Essentials for App Teams
The HIG is Apple's official guide to how an iOS app should look and behave; in practice what matters most is familiar navigation with a tab bar and Back button, Dynamic Type, touch targets of at least 44×44 pt, respecting safe areas and never hijacking system gestures.
Basics - Mobile development4 min
iOS vs Android Development: Key Differences for Teams and Owners
iOS means Swift, Xcode, a small set of devices and strict Apple review; Android means Kotlin, Android Studio and a huge variety of devices. In Uzbekistan and most of the CIS, Android holds the bulk of the audience, so it is often the sensible first platform unless your segment leans towards iPhone.
Basics - Mobile development4 min
Maps in Mobile Apps: Google Maps SDK vs Yandex MapKit
For apps used in Uzbekistan and the CIS, Yandex MapKit often has more detailed addresses and places, while Google Maps SDK suits international products and the Google ecosystem. Decide after testing real user addresses and factoring in geocoding and routing costs.
Practice - Mobile development4 min
Material Design 3 for Android Apps: Core Principles
Material Design 3 is Google's design system for Android: colors are defined as roles and can adapt to the user's wallpaper, navigation depends on screen width, depth is shown through surface tone, and a brand style sits on top of the system without breaking its behavior.
Basics - Mobile development4 min
Migrating a Native App to Flutter or React Native: Strategies
A gradual migration is usually safer: new screens are built in Flutter or React Native inside the native app, one layer owns auth and data, and releases continue as usual; a full rewrite makes sense for small or badly outdated apps.
Advanced - Mobile development3 min
Mobile App Accessibility: Supporting VoiceOver and TalkBack
An app is accessible when every interactive element has a clear label and role, focus moves in a logical order, text scales, contrast is sufficient and touch targets are large. Verify it with VoiceOver and TalkBack turned on, on a real phone.
Practice - Mobile development4 min
Firebase Analytics vs AppMetrica vs Amplitude: Choosing App Analytics
Firebase Analytics is a free baseline, especially if you already use Google's ecosystem; AppMetrica is a free option popular in the CIS with built-in attribution; Amplitude is the strongest product analytics tool but becomes paid as you grow. Write an event plan first, then pick the tool.
Practice - Mobile development4 min
Mobile App Metrics: Retention, DAU/MAU, LTV and Churn Explained
The key metric for a young app is retention, whether people come back after a day, a week and a month; DAU/MAU shows habit strength, churn shows who leaves, and LTV shows lifetime revenue per user, which is only worth calculating once retention has stabilized.
Basics - Mobile development4 min
Mobile App Architecture: MVVM and Clean Architecture in Practice
MVVM keeps screen logic in a ViewModel that exposes state, and Clean Architecture adds a domain layer of use cases and repository interfaces so business rules never depend on UI, network or database; for small apps, MVVM with repositories is usually enough.
Advanced - Mobile development4 min
Backend for a Mobile App: Firebase, Supabase or Custom Server
For an MVP a ready-made backend like Firebase or Supabase usually wins because it saves months of work; a custom server becomes necessary when business logic grows complex, integrations multiply or the law requires personal data to stay in-country, with self-hosted Supabase as a middle ground.
Basics - Mobile development4 min
What Drives the Cost of a Mobile App
A mobile app's cost is the team's working hours, and those hours are driven by the number of platforms, native versus cross-platform development, the backend and admin panel, integrations, offline mode, design complexity, App Store and Google Play requirements and support after release.
Basics - Mobile development4 min
Mobile App for an Online Store: When It Pays Off and What to Include
An app pays off when a store has many repeat purchases and a loyal base it can bring back with push notifications and rewards; new buyers are better won by a fast mobile site, and the app must run on the same data as the site and 1C.
Basics - Mobile development4 min
Mobile App for a Restaurant or Delivery Service: Key Features
At launch you need a menu, cart, checkout with address and payment, order status and a POS integration; loyalty and courier tracking come later, and with low order volume an aggregator or Telegram bot is cheaper.
Basics - Mobile development4 min
How to Localize a Mobile App into Multiple Languages
Move every text into platform string resources from day one, rely on system plural and date and number formatting rules, decide early how to support Uzbek in Latin and Cyrillic, and localize your store listing as well as the interface.
Practice - Mobile development4 min
Mobile App Login: SMS OTP, Sign in with Apple and Google
For apps in Central Asia and the CIS, a sound default is phone number with SMS OTP plus Google and Apple sign-in, with tokens in Keychain/Keystore and sessions renewed by a refresh token.
Practice - Mobile development3 min
Mobile App Monetization Models: Ads, Subscriptions, Freemium and More
Pick a monetization model based on how often and why people open your app: frequent free use suits ads, ongoing value suits subscriptions, one-off value suits purchases. Models can be combined as long as the paid tier removes friction instead of breaking the free experience.
Basics - Mobile development4 min
Mobile App Onboarding: How to Keep Users After the First Launch
Good onboarding doesn't describe the app — it gets the user to their first real value as fast as possible. Ask for sign-up and permissions when their value is obvious, and measure success by the share of users who complete the key action.
Practice - Mobile development3 min
How to Speed Up a Mobile App: Startup Time, Frames and Memory
Measure first, on a real device with a release build, then optimize. The usual wins are deferring work at startup, caching and resizing images, virtualizing lists and moving heavy work off the main thread.
Practice - Mobile development4 min
Mobile App Security Checklist Based on OWASP MASVS
OWASP MASVS splits mobile security into storage, crypto, auth, network, platform, code, resilience and privacy; before release, walk through each group with short concrete checks and fix what you find.
Advanced - Mobile development3 min
How to Test a Mobile App: Manual, Automated and Device Farms
A reliable setup is many fast unit tests, fewer UI component tests and a handful of end-to-end flows, plus manual checks before release. Emulators are fine for daily development, while real devices and cloud farms verify the app on what your users actually own.
Practice - Mobile development4 min
Mobile Install Attribution: MMPs, SKAdNetwork and Privacy Limits
Attribution links an install to the ad that drove it. Android still offers the advertising ID and Install Referrer; on iOS, without ATT consent, you get aggregated and delayed SKAdNetwork data. An MMP combines these sources into one report.
Advanced - Mobile development4 min
CI/CD for Mobile Apps: Automating Builds with Fastlane and Codemagic
Fastlane turns release steps into code (signing, building, testing, store uploads), while Codemagic provides hosted macOS machines and built-in publishing. Teams often combine them, with secrets kept only in encrypted CI variables.
Advanced - Mobile development4 min
How to Design a Paywall That Converts in a Subscription App
A paywall converts when it appears right after the user feels the value, offers two or three clear plans with the billed price shown honestly, explains the trial terms and is tested with remote variants measured by revenue, not taps.
Practice - Mobile development4 min
Common Mobile UX Mistakes and How to Avoid Them
Most mobile UX problems come down to tiny touch targets, hidden navigation, sign-up before users see value, unclear errors and ignoring the thumb and the keyboard. Each one has a simple fix once you design for a real hand on a real screen.
Practice - Mobile development4 min
Calling Native Code from Flutter and React Native
Flutter talks to native code through platform channels (ideally generated with Pigeon), React Native through native modules (TurboModules or the Expo Modules API). You need native code for SDKs, sensors and background work; keep it thin, typed and isolated in its own package.
Advanced - Mobile development4 min
Native vs Cross-Platform Apps: Which Approach to Choose
Cross-platform development (Flutter, React Native) suits most business apps: one codebase, one team and a faster launch on both platforms. Native wins when top performance, deep hardware access or the newest OS features are critical.
Basics - Mobile development4 min
Offline-First Mobile Apps: Local Storage and Data Sync
In an offline-first app the UI reads and writes only to a local database, while sync with the server runs in the background through a queue of changes. The hard part is not storage but resolving conflicts and retrying without duplicates.
Advanced - Mobile development4 min
Over-the-Air Updates: Shipping Fixes Without a Store Release
OTA updates deliver new JavaScript or Dart code without store review, but they cannot change the native layer. Expo Updates is the main option for React Native and Shorebird for Flutter; you also need version compatibility, staged rollouts, rollback and a forced update screen.
Advanced - Mobile development4 min
How to Accept Payme and Click Payments in a Mobile App
The app only starts the payment; the order is confirmed by your backend after a server-to-server callback from Payme or Click. Web checkout is the fastest start, SDKs and card tokens give a smoother UX.
Practice - Mobile development4 min
How to Publish an App on the App Store: Step-by-Step Guide
You need an active Apple Developer Program membership, a signed build and a complete App Store Connect listing with screenshots and a privacy policy; once Apple approves it, you release immediately, on a date or in phases.
Practice - Mobile development4 min
How to Publish an App on Google Play: Step-by-Step Guide
Publishing on Google Play means a verified Play Console account, a signed AAB, completed declarations (rating, Data Safety, privacy policy), a store listing, testing tracks and a reviewed release; new personal accounts must pass closed testing first.
Practice - Mobile development4 min
Push Notification Best Practices: How Not to Get Disabled
Ask for permission when the benefit is obvious, send only what is useful to a specific segment in their local time and without overdoing it, deep link to the right screen and track not just opens but opt-outs too.
Practice - Mobile development4 min
PWA vs Native App: When a Progressive Web App Is Enough
A PWA is enough when your product needs a fast launch, link-based access, basic offline mode and notifications without deep hardware access. Go native when Bluetooth, background work, heavy graphics, App Store presence or maximum smoothness matter.
Basics - Mobile development4 min
React Native New Architecture: Fabric, TurboModules and JSI
The New Architecture replaces the async, JSON-serialized bridge with direct calls through JSI: native modules load lazily and are typed via Codegen, and the Fabric renderer supports React's concurrent features. Migration starts with a dependency audit.
Advanced - Mobile development4 min
How to Reduce Mobile App Download Size on iOS and Android
Measure the per-device download size in the store consoles first, then shrink it in order: app bundles and app thinning, R8, compressed images and fonts, removing unused SDKs and moving rare content to on-demand delivery.
Practice - Mobile development4 min
Storing Sensitive Data in Mobile Apps: Keychain and Android Keystore
Keep tokens and keys in the iOS Keychain and under Android Keystore protection, not in SharedPreferences, UserDefaults or AsyncStorage. Tie biometrics to a cryptographic key rather than a yes/no check, and remember that a secret shipped inside the app is not a secret.
Advanced - Mobile development4 min
SwiftUI vs UIKit: Which to Use for a New iOS App
For a new iOS app, start with SwiftUI in most cases and use UIKit where you need more control; an existing UIKit project is not rewritten — new screens are added in SwiftUI instead.
Practice - Mobile development4 min
Beta Testing Apps with TestFlight and Google Play Testing Tracks
On iOS you distribute betas through TestFlight (internal and external testers); on Android through Play Console tracks (internal, closed, open). The verified build is then promoted to production without rebuilding.
Practice - Mobile development4 min
Third-Party SDKs in Mobile Apps: Benefits, Risks and Hidden Costs
Third-party SDKs save months of work, but each one adds size and startup time, collects data you are responsible for, and can crash your app, so choose them deliberately and review them regularly.
Basics - Mobile development4 min
How to Transfer an App to Another App Store or Google Play Account
Both stores let you move an app between developer accounts without losing users, ratings or reviews; you start the transfer from the current owner's account, the recipient accepts it, then keys, push and integrations are reconfigured.
Practice - Mobile development4 min
What Is ASO (App Store Optimization) and Why It Matters
ASO (App Store Optimization) is the work on your app's store page in the App Store and Google Play so it gets found in search more often and installed more often. You control the title, keywords, description, visuals and reviews, while the store also weighs installs and user behavior.
Basics - Mobile development3 min
What Is Flutter and How Does It Work
Flutter is Google's framework for building iOS, Android and other apps from one Dart codebase. It draws the entire UI with its own engine, so the app looks the same everywhere.
Basics - Mobile development3 min
What Is Jetpack Compose and Why Android Moved to It
Jetpack Compose is Android's modern declarative UI toolkit in Kotlin: you describe how a screen looks for a given state, and the system redraws only the parts that changed.
Basics - Mobile development4 min
What Is Kotlin Multiplatform and When Does It Make Sense
Kotlin Multiplatform (KMP) lets you write business logic, networking and data handling once in Kotlin and use it on iOS and Android while keeping the UI native. It makes sense when native UX matters and you already have Android expertise.
Basics - Mobile development4 min
Mobile App Development Explained: How an App Goes from Idea to Store
A mobile app goes through six stages: discovery, design, development, testing, store release and support. At the end you get not just a published app but the source code, design files, store accounts and a plan for what comes next.
Basics - Mobile development3 min
What Is React Native and How Does It Work
React Native is Meta's framework where you describe the UI in JavaScript or TypeScript using React, and real native iOS and Android components appear on screen. It pays off most for teams that already build their web with React.
Basics - Mobile development4 min
Why Mobile Apps Need Regular Updates After Release
Mobile platforms change every year: Apple and Google ship new OS versions, raise build requirements and retire old APIs, so an app left without updates slowly starts to break, loses the ability to ship fixes and, on Google Play, eventually becomes unavailable to new users.
Basics
Have an idea or a task? Tell us about it
We'll reply within one business day and propose a solution. The consultation is free.