---
name: Galaxy S3 Build Configuration
description: Java 21 toolchain configuration for Android API 18-21 with desugaring
type: reference
---

## Working Configuration for Samsung Galaxy S3

**Why:** Galaxy S3 has Android 4.3 (API 18) with 1GB RAM. Java 21 features need desugaring.

**How to apply:**

### build.gradle (app level)
```gradle
android {
    namespace 'com.helldivers.app'
    compileSdk 28

    defaultConfig {
        minSdk 18
        targetSdk 21
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_21
        targetCompatibility JavaVersion.VERSION_21
        coreLibraryDesugaringEnabled true
    }

    java {
        toolchain {
            languageVersion = JavaLanguageVersion.of(21)
        }
    }
}

dependencies {
    coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:2.0.4'
}
```

### AndroidManifest.xml
```xml
<uses-sdk android:minSdkVersion="18" android:targetSdkVersion="21" />
<application android:hardwareAccelerated="false">
```

### Key optimizations for 1GB RAM:
- Use Theme.Holo instead of AppCompat
- LinearLayout preferred over ConstraintLayout
- RGB_565 for bitmaps
- Disable hardware acceleration on problematic API 18
- Minimize overdraw
