Después de actualizar Android Studio a la versión 1.3.0, aparece el error "La integración del NDK está obsoleta en el complemento actual".

89

He actualizado mi Android Studio a la versión 1.3.0 antes de 3 días.

Antes de eso, puedo usar NDK y ahora recibo un error como,

Error: (50, 0) Error: la integración de NDK está obsoleta en el complemento actual. Considere probar el nuevo complemento experimental. Para obtener más información, consulte http://tools.android.com/tech-docs/new-build-system/gradle-experimental . Establezca "android.useDeprecatedNdk = true" en gradle.properties para continuar usando la integración actual del NDK.

No puedo encontrar el archivo gradle.property a nivel de proyecto.

¿Cómo puedo solucionar este error?

AndiGeeky
fuente
@ EthicsDev: lea mi respuesta completamente descriptiva.
AndiGeeky
¿Es esto un error o solo una advertencia?
IgorGanapolsky
@ Igor Ganapolsky: ¡¡Es un error .. !!
AndiGeeky

Respuestas:

214

A continuación, se explica cómo resolver este problema:

  1. añadir gradle.properties archivo a la carpeta raíz de su proyecto
  2. añadir 'android.useDeprecatedNdk=true'agradle.properties archivo

Aquí está mi gradle.properties:

# Project-wide Gradle settings.

# IDE (e.g. Android Studio) users:
# Gradle settings configured through the IDE *will override*
# any settings specified in this file.

# For more details on how to configure your build environment visit
# http://www.gradle.org/docs/current/userguide/build_environment.html

# Specifies the JVM arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
# Default value: -Xmx10248m -XX:MaxPermSize=256m
# org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. More details, visit
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
# org.gradle.parallel=true

android.useDeprecatedNdk=true

Y agréguelo a la raíz de su proyecto:

ubicación de gradle.properties

Y reconstruye tu proyecto. Eso es.

AndiGeeky
fuente
después de agregarlo, tengo el siguiente error: excepción durante el trabajo con un sistema externo:
Kishan Soni
@Kishan Soni: Por favor publique una pregunta con su archivo gradle ... ¡¡Habrá algún error en su proyecto ... !!
AndiGeeky
Siempre que cambio el complemento de gradle a 1.2.3, todo funciona bien, pero si cambio la versión del complemento a 1.5.0 nuevamente, se produce un error. Pero necesito usar 1.5.0 solamente pero nada funciona bien.
Kishan Soni
@Kishan Soni: Para la versión 1.2.3 anterior, debe usar 'Complemento experimental' para NDK .. !!
AndiGeeky
1
Tienes alguna idea de cómo usar o trabajar con "Experimental Pugin", es bastante difícil y no encontré ningún tutorial al respecto :(
Kishan Soni
3

Ocurre principalmente cuando migra su proyecto de eclipse a Android Studio, o cuando simplemente importa el proyecto eclipse en Android Studio.

Un problema más al recibir este error, la mayoría de las veces no tiene el archivo llamado "gradle.properties" que necesita crear / agregar en el proyecto primero y luego configurar

android.useDeprecatedNdk=true
Ahmad Arslan
fuente
2

El NDK obsoleto ya no es compatible. Para evitar ese error, elimine android.useDeprecatedNdk = true y no deje ningún espacio en blanco en el directorio del proyecto. Si los errores vuelven a aparecer, edite build.gradle (Módulo: aplicación) y agregue esas líneas como a continuación:

 buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
sourceSets { main { jni.srcDirs = ['src/main/jni/','src/main/jniLibs/'] } }
externalNativeBuild {
    ndkBuild {
        path 'build/intermediates/ndk/debug/Android.mk'
    }
}
Istiyak
fuente
0

A continuación, se explica cómo resolver este problema:

Vaya al archivo gradle.properties a la carpeta raíz de su proyecto Eliminar android.useDeprecatedNdk=truede su gradle.propertiesarchivo

Android se ha eliminado, android.useDeprecatedNdkpor lo que ya no funcionará

Shashikant Singh
fuente