[SOLVED] Android & Gradle Error: Default Interface Methods Are Only Supported Starting With Android N (–min-api 24) – Easy Solution!

Android & Gradle error: Default interface methods are only supported starting with Android N (–min-api 24)
Photo by Guido Coppa on Unsplash
Share this post and Earn Free Points!

In this post I will show you how to solve error: Default Interface Methods Are Only Supported Starting With Android N (–min-api 24).

This error message indicates that you are trying to use a Default interface method, which is a feature introduced in Java 8, in an Android project that has a minimum API level lower than Android N (API level 24).

Introduction

Android

In order to compile and run an Android app for a specific platform version, you will need the Android SDK Platform package and several System Image packages. The Android SDK Platform package is required to compile the app, while the System Image packages are required to run the app on the Android Emulator.

The System Image packages are available for different form factors such as handsets, Android TV, and Android Wear, and may also be available in variations to match different processor architectures like Intel x86 and ARM EABI. System images labeled Google APIs include access to Google Play services, while those labeled Google Play also include the Google Play Store.

Additionally, the Sources for Android package, which includes the source files for the platform, may be useful for debugging your app. The revision numbers listed refer to the Android SDK Platform package, while the System Image packages may receive separate updates to fix bugs in the emulator.

Gradle

Gradle is an open-source build automation tool that is widely used in the development of Android apps. It is designed to be flexible, scalable, and easy to use, and it allows developers to define and manage the build process for their projects in a declarative manner.

In the context of Android development, Gradle is used to automate the process of building, testing, and deploying Android apps. It is used to compile the source code, package the app into an APK file, and sign the APK with a digital certificate. It is also used to run tests, generate code coverage reports, and perform other tasks that are required as part of the build process.

To use Gradle in an Android project, you will need to create a build.gradle file that defines the dependencies, build types, and other configurations for your project. You can then use the gradle command-line tool or the Gradle plugin for your preferred IDE to build and run your project.

Gradle is the Default build tool for Android Studio, the official integrated development environment (IDE) for Android development, and it is also supported by other popular IDEs such as Eclipse and IntelliJ IDEA.

Default Interface Methods Are Only Supported Starting With Android N (–min-api 24)

#1 Solution – Increase Android API Version

To fix this error, you can either increase the minimum API level of your project to Android N or higher, or you can use an alternative solution that does not rely on Default interface methods.

To increase the minimum API level of your project, go to File > Project Structure > Modules and select the module that you want to modify. In the Properties tab, set the Minimum API Level to Android N or higher.

If you cannot increase the minimum API level of your project, you can consider using other approaches to achieve the same functionality, such as using an abstract class instead of an interface, or using the @Override annotation to override the method in a concrete class.

It is also worth noting that Default interface methods are not supported in all versions of Android, so you should make sure that your app is compatible with the target API level of your users.

#2 Solution – Add Missing “compileOptions” Configuration

The Android build system generates and bundles app resources and source code into APKs (Android App Bundles), which you can test, deploy, sign, and distribute. Gradle, an advanced build toolkit, is used by Android Studio to automate and control the build process while also allowing you to establish custom build configurations that are flexible.

Android Studio is not required for Gradle or the Android plugin to work. This means you can create Android apps using Android Studio, the command line on your machine, or even machines that don’t have Android Studio installed (such as continuous integration servers). You may learn how to create and execute your app from the command line if you don’t have Android Studio. Whether you build a project from the command line, on a remote machine, or with Android Studio, the build output is the same.

Each build configuration can define its own set of code and resources while reusing sections of your app that are shared across all versions. The Android plugin for Gradle integrates with the build tools to provide processes and adjustable parameters tailored to the development and testing of Android apps.

You will receive the error [ Default Interface Methods Are Only Supported Starting With Android N] due to the missing “compileOptions” configuration in the AndroidManifest.xml file.

Add the missing configuration. Example below.

android {
...
  compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
...
}

Summary

I hope that this tutorial helped you to solve the problem with the following error: “Default Interface Methods Are Only Supported Starting With Android N (–min-api 24)”

Could You Please Share This Post? 
I appreciate It And Thank YOU! :)
Have A Nice Day!

How useful was this post?

Click on a star to rate it!

Average rating 4.9 / 5. Vote count: 894

No votes so far! Be the first to rate this post.

As you found this post useful...

Follow us on social media!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?