Tech 3 min read

Flutter Android Log Monitoring Setup on macOS

I was getting tired of developing across Windows and Mac, so here are my notes.

I originally had Flutter on Windows and the backend on Mac. I was using Docker on Windows to replicate a sakura/lolipop server environment, but the Windows path setup was a pain, so I switched to doing it on Mac. Android development itself works fine on Windows, but monitoring both frontend and backend logs at the same time across two machines is rough. Paths are easier on Mac, and one machine is better than two, so I moved the Flutter environment to Mac too.

These are the notes from setting everything up with Claude’s help.

Prerequisites

  • macOS (Apple Silicon or Intel)
  • Homebrew installed

Installation Steps

Install Android Studio

brew install --cask android-studio

Or download from the official site.

Set Up the Android SDK

Launch Android Studio and complete the initial setup.

Install additional SDK Tools (Android Studio → Settings → Languages & Frameworks → Android SDK → SDK Tools):

  • ✅ Android SDK Command-line Tools (latest)
  • ✅ Android SDK Platform-Tools
  • ✅ Android Emulator

Install Flutter SDK

brew install --cask flutter

Accept Licenses

flutter doctor --android-licenses

Accept all with y.

Check the Environment

flutter doctor

The following should show ✅:

  • Flutter
  • Android toolchain

Creating an Emulator

Android Studio → Device Manager → Create Device

Recommended settings:

  • Device: Medium Phone
  • System Image: API 34 or higher
  • Name: anything (e.g. Medium_Phone_API_36)

Add to ~/.zshrc:

export ANDROID_HOME="$HOME/Library/Android/sdk"
export PATH="$PATH:$ANDROID_HOME/platform-tools"
export PATH="$PATH:$ANDROID_HOME/emulator"

Apply changes:

source ~/.zshrc

After this, shorter commands become available:

adb logcat
emulator -list-avds

Using Log Monitoring

Starting the Emulator

# List available emulators
emulator -list-avds

# Launch one
emulator -avd <emulator-name>

Or via Flutter:

flutter emulators --launch <emulator-name>

Verify Device Recognition

# Lightweight (direct adb)
adb devices

# Via Flutter (more details)
flutter devices

Monitoring Logs

# Flutter logs (recommended)
# Note: outputs nothing if the Flutter app isn't running
flutter logs

# All ADB logs
adb logcat

# WebView console logs only
adb logcat | grep -iE "console|chromium|webview"

# WebView logs (suppress everything else)
adb logcat *:S chromium:V

# Flutter tag only
adb logcat -s flutter

Troubleshooting

adb Not Recognizing the Device

adb kill-server && adb start-server

Nothing Showing in flutter devices

  1. Confirm the emulator is running
  2. Check if it’s recognized with adb devices
  3. If not recognized, restart adb

Common Command Reference

PurposeCommand
Check environmentflutter doctor
List devicesflutter devices
Check device (lightweight)adb devices
List emulatorsflutter emulators or emulator -list-avds
Launch emulatorflutter emulators --launch <name>
Monitor logs (Flutter)flutter logs
Monitor logs (all)adb logcat
WebView logsadb logcat *:S chromium:V
Restart adbadb kill-server && adb start-server

Sample Environment Status

ItemStatusPath / Version
Flutter SDK3.38.x (stable)
Dart3.10.x
Android toolchainAndroid SDK 36.x
Android Studio/Applications/Android Studio.app
Android SDK~/Library/Android/sdk/
cmdline-tools~/Library/Android/sdk/cmdline-tools/latest/
ADB~/Library/Android/sdk/platform-tools/adb
EmulatorMedium_Phone_API_36
XcodeRequired for iOS dev (not needed for Android)