Android Apps
Build native Android apps or cross-platform mobile apps with Claude Code. Choose between React Native, Flutter, or native Kotlin development.
Overview
Android apps can be built using several approaches. With Claude Code, you can vibe code Android apps regardless of which technology you choose.
Choose Your Tech Stack
React Native (Recommended for web developers)
If you know JavaScript/React, this is your fastest path.
Pros:
- Build for Android and iOS with one codebase
- Use JavaScript and React
- Large ecosystem
- Hot reload for fast development
Cons:
- Larger app size than native
- Some platform-specific code needed
Flutter (For beautiful UIs)
Google’s UI framework for building cross-platform apps.
Pros:
- Beautiful, customizable UIs
- Single codebase for Android and iOS
- Fast performance
- Great documentation
Cons:
- Learn Dart programming language
- Larger app size
Native Kotlin (For maximum performance)
Build pure Android apps with Kotlin and Jetpack Compose.
Pros:
- Best performance
- Full access to Android APIs
- Smallest app size
- Modern development with Jetpack Compose
Cons:
- Android only
- Steeper learning curve
Setup: React Native
Prerequisites
Make sure you have:
- Node.js installed
- Android Studio installed
- Android SDK configured
Create a new app
npx react-native@latest init MyApp
cd MyAppStart Claude Code
claudeRun on Android
npm run androidExample prompts
"Create a login screen with email and password inputs"
"Add a bottom tab navigator with Home, Search, and Profile tabs"
"Implement AsyncStorage to save user preferences"
"Create a list view that fetches data from an API"
"Add push notifications using Firebase"
"Implement dark mode theme switching"Setup: Flutter
Prerequisites
Install Flutter from flutter.devÂ
Create a new app
flutter create my_app
cd my_appStart Claude Code
claudeRun on Android
flutter runExample prompts
"Create a Material Design app with a bottom navigation bar"
"Add a form with validation for user registration"
"Implement state management using Provider"
"Create a list view with pull-to-refresh"
"Add local storage using SharedPreferences"
"Implement a custom theme with primary and secondary colors"Setup: Native Kotlin
Prerequisites
Install Android Studio from developer.android.com/studioÂ
Create a new project
- Open Android Studio
- New Project → Empty Activity
- Choose Kotlin as language
- Select minimum SDK (API 24 recommended)
Start Claude Code
cd path/to/your/project
claudeExample prompts
"Create a login screen using Jetpack Compose"
"Add a RecyclerView to display a list of items"
"Implement Room database for local data storage"
"Create a ViewModel with LiveData for the home screen"
"Add Retrofit for API calls"
"Implement dependency injection with Hilt"Common Features
Navigation
Add navigation between screens:
claude "implement navigation between Login, Home, and Profile screens"API Integration
Connect to backend services:
claude "fetch user data from https://api.example.com/users and display it"Local Storage
Save data locally:
claude "save user preferences locally and load them on app start"Camera Access
Use device camera:
claude "add a button that opens the camera and lets users take a photo"Push Notifications
Send notifications:
claude "integrate Firebase Cloud Messaging for push notifications"Location Services
Access GPS:
claude "get user's current location and show it on a map"Styling and UI
Material Design
Follow Android design guidelines:
claude "create a Material Design 3 theme with custom colors"Responsive Layouts
Support different screen sizes:
claude "make this layout responsive for tablets and phones"Custom Components
Build reusable components:
claude "create a reusable card component for displaying user profiles"Testing
Unit Tests
claude "write unit tests for the UserViewModel class"Integration Tests
claude "write integration tests for the login flow"Building and Deployment
Generate APK
# React Native
cd android && ./gradlew assembleRelease
# Flutter
flutter build apk
# Native Kotlin (use Android Studio or)
./gradlew assembleReleaseGenerate App Bundle (for Google Play)
# React Native
cd android && ./gradlew bundleRelease
# Flutter
flutter build appbundle
# Native Kotlin
./gradlew bundleReleaseUpload to Google Play
claude "help me prepare my app for Google Play Store submission"Pro Tips
Always test on real Android devices in addition to emulators. Different manufacturers (Samsung, Google, OnePlus) can have UI variations.
- Start with React Native if you know JavaScript
- Use Android Studio emulators for testing
- Test on multiple screen sizes
- Follow Material Design guidelines
- Keep APK size small by removing unused dependencies
- Use ProGuard/R8 for code shrinking in production
- Test on different Android versions (minimum API 24)
Permissions
Handle Android permissions properly:
claude "add camera permission request before opening camera"Deep Linking
Enable deep links to your app:
claude "implement deep linking so my app opens when users click myapp:// URLs"Example Project Ideas
- Todo list app with cloud sync
- Weather app with location services
- Social media feed
- E-commerce shopping app
- Fitness tracker
- Chat application
- Recipe app with camera for photos
- Expense tracker
Debugging
Use Claude to debug:
claude "my app crashes when I click the submit button, here's the error log: [paste error]"Next Steps
- Choose your framework (React Native recommended for beginners)
- Set up your development environment
- Create a new project
- Start Claude and begin vibe coding
- Test on an emulator or real device
- Deploy to Google Play when ready