Masum Billah
Masum Billah

Reputation: 1103

API 'variant.getExternalNativeBuildTasks()' is obsolete

I have updated my android studio. After that my Crashlytics create the problem. is it problem with crashlytics? or How can I solve this?

This is error

API 'variant.getExternalNativeBuildTasks()' is obsolete and has been 
replaced with 'variant.getExternalNativeBuildProviders()'.
It will be removed at the end of 2019.
For more information, see https://d.android.com/r/tools/task-configuration- 
avoidance.
To determine what is calling variant.getExternalNativeBuildTasks(), use - 
Pandroid.debug.obsoleteApi=true on the command line to display a stack 
trace.
Affected Modules: app

Upvotes: 6

Views: 4539

Answers (4)

Vladyslav Panchenko
Vladyslav Panchenko

Reputation: 1607

This has been fixed in the latest release of the Fabric gradle plugin, 1.28.0. Have this in your top-level build.gradle:

buildscript {
  // ... repositories, etc. ...

   dependencies {
       // ...other dependencies ...
       classpath 'io.fabric.tools:gradle:1.28.0'
   }
}

Upvotes: 17

user9143900
user9143900

Reputation:

It's caused by Fabric's plugin needed for Crashlytics.

Commenting out apply plugin: 'io.fabric' resolves the issue. So the only option is to wait until Google devs will fix Fabric's plugin

Upvotes: 2

clauub
clauub

Reputation: 1160

Probably now is late, but it helped me:

  apply plugin: 'com.android.application'
  apply plugin: 'io.fabric'
  apply plugin: 'kotlin-android'
  apply plugin: 'kotlin-android-extensions'

The problem was with apply plugin: 'io.fabric' I just had to comment this line and after it worked

apply plugin: 'com.android.application'
//apply plugin: 'io.fabric'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'

It happens after I updated Android Studio to 3.3.0.

Or you can downgrade to Android Studio 3.2.1.

Upvotes: 2

Deishelon
Deishelon

Reputation: 337

You can add

android.debug.obsoleteApi=true

to the gradle.properties file and it will show you stack trace, so you can determine what module is using obsolete APIs

However, this is considered as a warning at the moment, not an error. It's just annoying to see everytime you sync gradle . In the future modules will be updated & this warning will be gone

Hope this helps :)

Upvotes: 6

Related Questions