Android 15 SDK RES_TABLE_TYPE_TYPE Entry Offsets Overlap Error
Problem Statement
When updating your Android project to compileSdk 35
(Android 15 SDK), you may encounter a critical build failure during resource compilation. The error manifests as:
ERROR:: AAPT: aapt2.exe E [timestamp] LoadedArsc.cpp:96] RES_TABLE_TYPE_TYPE entry offsets overlap actual entry data.
aapt2.exe E [timestamp] ApkAssets.cpp:149] Failed to load resources table in APK '[SDK-path]/platforms/android-35/android.jar'.
error: failed to load include path [SDK-path]/platforms/android-35/android.jar
This error occurs because the Android Asset Packaging Tool (AAPT) cannot properly read the android.jar
from the SDK. The conflict prevents your build from completing successfully.
Solution
The root cause is an incompatibility between the Android Gradle Plugin (AGP) version and Android 15 SDK. Updating to compatible AGP and Gradle versions resolves this.
Required Configuration
Update to these specific versions:
Android Gradle Plugin (AGP): 8.4.2
Modify your project'sbuild.gradle
:groovy// Top-level build.gradle dependencies { classpath 'com.android.tools.build:gradle:8.4.2' }
Gradle Wrapper: 8.6
Updategradle-wrapper.properties
:propertiesdistributionUrl=https://services.gradle.org/distributions/gradle-8.6-bin.zip
Verification Steps
- Sync your project with Gradle files
- Clean build (
./gradlew cleanBuildCache
) - Rebuild the project
Compatibility Note
The AGP version must match the Gradle version. Use Android's official compatibility table if other SDK issues arise.
Long-Term Stability
While this combination resolves the error today, check the Google Issue Tracker #342522139 for updates, as SDK compatibility evolves with new releases.
Why This Works
The Android 15 SDK introduced structural changes in resource tables that caused parsing errors in older AGP versions (pre-8.4.x). AGP 8.4.2 contains fixes for how AAPT processes SDK resources, eliminating the RES_TABLE_TYPE_TYPE
offset conflict.