Error: (81, 0) getMainOutputFile ya no es compatible. Utilice getOutputFileName si necesita determinar el nombre de archivo de la salida.

Estoy intentando modificar el proceso de la estructura para requisitos particulares usando código abajo

android.applicationVariants.all { variant -> def appName = "MyApplication.apk" variant.outputs.each { output -> output.outputFile = new File(output.outputFile.parent, appName) } } 

Pero desde android studio 3.0 no funciona Estoy recibiendo error por debajo

Error: (81, 0) getMainOutputFile ya no es compatible. Utilice getOutputFileName si necesita determinar el nombre de archivo de la salida.

2 Solutions collect form web for “Error: (81, 0) getMainOutputFile ya no es compatible. Utilice getOutputFileName si necesita determinar el nombre de archivo de la salida.”

Sólo hazlo así:

 buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' signingConfig getSigningConfig() android.applicationVariants.all { variant -> def date = new Date(); def formattedDate = date.format('dd MMMM yyyy') variant.outputs.all { def newApkName newApkName = "MyApp-${variant.versionName}, ${formattedDate}.apk" outputFileName = newApkName; } } } } 

Esto está cubierto en la guía de migración de Android Gradle Plugin v3 :

El uso del Variant API para manipular salidas variantes se rompe con el nuevo complemento. Todavía funciona para tareas simples, como cambiar el nombre de APK durante el tiempo de compilación, como se muestra a continuación:

 // If you use each() to iterate through the variant objects, // you need to start using all(). That's because each() iterates // through only the objects that already exist during configuration time— // but those object don't exist at configuration time with the new model. // However, all() adapts to the new model by picking up object as they are // added during execution. android.applicationVariants.all { variant -> variant.outputs.all { outputFileName = "${variant.name}-${variant.versionName}.apk" } } 

Habrá una nueva api para casos de uso más complejos que renombrar el nombre del archivo de salida.

  • Android Studio 3.0 Canary 1 GRPC error
  • Android Studio 3.0: canary 6: android.content.res.Resources $ NotFoundException dentro de la actividad de lanzamiento
  • Vista previa de Android Studio 3.0: Studio no tiene acceso de escritura
  • Dagger 2 con Android Studio 3.0 Preview (Canary 2) usando annotationProcessor en lugar de android-apt
  • Cómo utilizar Data Binding y Kotlin en Android Studio 3.0.0
  • Android Studio Preview 3.0 - Error en la instalación de la aplicación al ejecutar una aplicación instantánea
  • No se puede compilar en Android Studio 3.0 Canary 1
  • El emulador de Android no puede acceder a Internet
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.