Code Reference

Gradle

Expo · Reference cheat sheet

Gradle

Expo · Reference cheat sheet


📋 Overview

Android builds use Gradle inside android/ (after prebuild) or on EAS builders. Expo abstracts most of this; touch Gradle for custom native modules, packaging options, or troubleshooting.

🔧 Core concepts

  • Rootandroid/build.gradle, android/settings.gradle, gradle.properties.
  • App moduleandroid/app/build.gradle (applicationId, signing, minSdk).
  • Expo autolinking — native modules linked via Expo / RN Gradle plugins.
  • Propertiesorg.gradle.jvmargs, hermesEnabled, architectures.
  • EAS — cloud images run Gradle; override via eas.json env / expo-build-properties plugin.

💡 Examples

// app.config.ts — prefer plugin over hand-editing Gradle
plugins: [
  [
    "expo-build-properties",
    {
      android: {
        minSdkVersion: 24,
        compileSdkVersion: 35,
        targetSdkVersion: 35,
        kotlinVersion: "1.9.24",
      },
    },
  ],
],
# android/gradle.properties (generated — customize via plugins when possible)
hermesEnabled=true
newArchEnabled=true
cd android && ./gradlew assembleRelease
# or via Expo
npx expo run:android --variant release

⚠️ Pitfalls

  • Manual Gradle edits wiped by expo prebuild --clean unless reflected in config plugins.
  • Mismatched JDK / AGP versions vs Expo SDK expectations.
  • Enabling New Architecture without compatible libraries.

On this page