React-native: L'exécution a échoué pour la tâche «: app: processReleaseResources».

Créé le 13 mai 2018  ·  73Commentaires  ·  Source: facebook/react-native

Nous utilisons GitHub Issues exclusivement pour le suivi des bogues dans React Native. Des questions? Visitez http://facebook.github.io/react-native/help.html Si ce problème concerne la documentation ou le site Web, veuillez le déposer à l'adresse: https://github.com/facebook/react-native-website/issues /Nouveau

Décrivez votre problème en détail.

Environnement:

Système d'exploitation: Linux 4.13
Nœud: 9.10.1
Fil: 1.6.0
npm: 5,6,0
Gardien: introuvable
Xcode: N / A
Android Studio: introuvable

Paquets: (voulu => installé)

réagir: 16.3.1 => 16.3.1
natif de réaction: 0,55,3 => 0,55,3

Étapes à suivre pour reproduire

./gradlew assembleRelease

Comportement prévisible

faire marcher???

Comportement réel

Le journal:

/home/rodrigo/Documentos/React-Native/Projetos-Independentes/PetShop/PetShop/android/app/build/intermediates/res/merged/release/drawable-mdpi/node_modules_reactnativecheckbox_img_ic_check_box_outline_blank.png: error: uncompiled PNG file passed as argument. Must be compiled first into .flat file..
error: failed parsing overlays.


Task :app:processReleaseResources
Failed to execute aapt
com.android.ide.common.process.ProcessException: Failed to execute aapt
        at com.android.builder.core.AndroidBuilder.processResources(AndroidBuilder.java:796)
        at com.android.build.gradle.tasks.ProcessAndroidResources.invokeAaptForSplit(ProcessAndroidResources.java:551)
        at com.android.build.gradle.tasks.ProcessAndroidResources.doFullTaskAction(ProcessAndroidResources.java:285)
        at com.android.build.gradle.internal.tasks.IncrementalTask.taskAction(IncrementalTask.java:109)
        at sun.reflect.GeneratedMethodAccessor59.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
        at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$IncrementalTaskAction.doExecute(DefaultTaskClassInfoStore.java:173)
        at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:134)
        at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:121)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:122)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:197)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:111)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:92)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:70)
        at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:63)
        at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
        at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
        at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:88)
        at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:52)
        at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
        at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
        at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
        at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
        at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.run(DefaultTaskGraphExecuter.java:248)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:197)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107)
        at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:241)
        at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:230)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.processTask(DefaultTaskPlanExecutor.java:124)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.access$200(DefaultTaskPlanExecutor.java:80)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:105)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:99)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.execute(DefaultTaskExecutionPlan.java:625)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask(DefaultTaskExecutionPlan.java:580)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.run(DefaultTaskPlanExecutor.java:99)
        at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
        at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
        at java.lang.Thread.run(Thread.java:748)
Caused by: java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
        at com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:503)
        at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:482)
        at com.google.common.util.concurrent.AbstractFuture$TrustedFuture.get(AbstractFuture.java:79)
        at com.android.builder.core.AndroidBuilder.processResources(AndroidBuilder.java:794)
        ... 47 more
Caused by: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
        at com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:503)
        at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:462)
        at com.google.common.util.concurrent.AbstractFuture$TrustedFuture.get(AbstractFuture.java:79)
        at com.android.builder.internal.aapt.v2.QueueableAapt2.lambda$makeValidatedPackage$1(QueueableAapt2.java:179)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        ... 1 more
Caused by: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
        at com.android.builder.png.AaptProcess$NotifierProcessOutput.handleOutput(AaptProcess.java:463)
        at com.android.builder.png.AaptProcess$NotifierProcessOutput.err(AaptProcess.java:415)
        at com.android.builder.png.AaptProcess$ProcessOutputFacade.err(AaptProcess.java:332)
        at com.android.utils.GrabProcessOutput$1.run(GrabProcessOutput.java:104)


FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:processReleaseResources'.
> Failed to execute aapt

build.gradle:

"apply plugin: "com.android.application"

import com.android.build.OutputFile

project.ext.react = [
    entryFile: "index.js"
]

apply from: "../../node_modules/react-native/react.gradle"

/**
 * Set this to true to create two separate APKs instead of one:
 *   - An APK that only works on ARM devices
 *   - An APK that only works on x86 devices
 * The advantage is the size of the APK is reduced by about 4MB.
 * Upload all the APKs to the Play Store and people will download
 * the correct one based on the CPU architecture of their device.
 */
def enableSeparateBuildPerCPUArchitecture = false

/**
 * Run Proguard to shrink the Java bytecode in release builds.
 */
def enableProguardInReleaseBuilds = false

android {
    compileSdkVersion 26
    buildToolsVersion "26.0.2"

    defaultConfig {
        applicationId "com.petshop"
        minSdkVersion 16
        targetSdkVersion 26
        versionCode 1
        versionName "1.0"
        ndk {
            abiFilters "armeabi-v7a", "x86"
        }
    }

    signingConfigs {
        release {
            if (project.hasProperty('MYAPP_RELEASE_STORE_FILE')) {
                storeFile file(MYAPP_RELEASE_STORE_FILE)
                storePassword MYAPP_RELEASE_STORE_PASSWORD
                keyAlias MYAPP_RELEASE_KEY_ALIAS
                keyPassword MYAPP_RELEASE_KEY_PASSWORD
            }
        }
    }

    splits {
        abi {
            reset()
            enable enableSeparateBuildPerCPUArchitecture
            universalApk false  // If true, also generate a universal APK
            include "armeabi-v7a", "x86"
        }
    }
    buildTypes {
        release {
            minifyEnabled enableProguardInReleaseBuilds
            proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
            signingConfig signingConfigs.release
        }
    }
    // applicationVariants are e.g. debug, release
    applicationVariants.all { variant ->
        variant.outputs.each { output ->
            // For each separate APK per architecture, set a unique version code as described here:
            // http://tools.android.com/tech-docs/new-build-system/user-guide/apk-splits
            def versionCodes = ["armeabi-v7a":1, "x86":2]
            def abi = output.getFilter(OutputFile.ABI)
            if (abi != null) {  // null for the universal-debug, universal-release variants
                output.versionCodeOverride =
                        versionCodes.get(abi) * 1048576 + defaultConfig.versionCode
            }
        }
    }
}

dependencies {
    compile project(':react-native-device-info')
    compile project(':react-native-camera')
    compile project(':react-native-text-input-mask')
    compile project(':react-native-push-notification')
    compile project(':react-native-image-picker')
    compile project(':react-native-vector-icons')
    compile fileTree(dir: "libs", include: ["*.jar"])
    compile "com.android.support:appcompat-v7:26.0.2"
    compile "com.facebook.react:react-native:+"  // From node_modules
}

// Run this once to be able to run the application with BUCK
// puts all compile dependencies into folder libs for BUCK to use
task copyDownloadableDepsToLibs(type: Copy) {
    from configurations.compile
    into 'libs'
}`

METTRE À JOUR

J'ai défini android.enableAapt2 = false dans le fichier gradle.properties, mais maintenant je reçois ce journal:

> Task :react-native-camera:extractReleaseAnnotations
Warning: com.google.android.cameraview.CameraView.Flash: The typedef annotation should have @Retention(RetentionPolicy.SOURCE)

/home/rodrigo/.gradle/caches/transforms-1/files-1.1/appcompat-v7-26.0.2.aar/a8ac6386db44d95bb0127b060ca3ccbc/res/values-v24/values-v24.xml:3:5-157: AAPT: Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Borderless.Colored'.

/home/rodrigo/.gradle/caches/transforms-1/files-1.1/appcompat-v7-26.0.2.aar/a8ac6386db44d95bb0127b060ca3ccbc/res/values-v24/values-v24.xml:4:5-135: AAPT: Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Colored'.

/home/rodrigo/.gradle/caches/transforms-1/files-1.1/appcompat-v7-26.0.2.aar/a8ac6386db44d95bb0127b060ca3ccbc/res/values-v26/values-v26.xml:13:5-16:13: AAPT: No resource found that matches the given name: attr 'android:keyboardNavigationCluster'.

/home/rodrigo/Documentos/React-Native/Projetos-Independentes/PetShop/PetShop/node_modules/react-native-device-info/android/build/intermediates/res/merged/release/values-v24/values-v24.xml:3: error: Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Borderless.Colored'.

/home/rodrigo/Documentos/React-Native/Projetos-Independentes/PetShop/PetShop/node_modules/react-native-device-info/android/build/intermediates/res/merged/release/values-v24/values-v24.xml:4: error: Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Colored'.

/home/rodrigo/Documentos/React-Native/Projetos-Independentes/PetShop/PetShop/node_modules/react-native-device-info/android/build/intermediates/res/merged/release/values-v26/values-v26.xml:15: error: Error: No resource found that matches the given name: attr 'android:keyboardNavigationCluster'.



FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':react-native-device-info:verifyReleaseResources'.
> com.android.ide.common.process.ProcessException: Failed to execute aapt

Pourquoi cela arrive-t-il?

Bug Android Locked

Commentaire le plus utile

Pour ceux qui font cela avant de générer apk

react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res

il génère des images dessinables inutiles dans un dossier dessinable. alors assurez-vous de le retirer et réessayez.

android-> app -> src -> main -> res -> drawable

Tous les 73 commentaires

J'obtiens également exactement le même problème avec cette même étape par étape. J'adorerais savoir pourquoi cela se produit pour les versions de version mais pas pour les versions de débogage.

Pour moi, cela fonctionne:
ajoutez ce code dans _ / android / build.gradle_

subprojects {
  project.configurations.all {
      afterEvaluate {project ->
        if (project.hasProperty("android")) {
            android {
                compileSdkVersion 26
                buildToolsVersion '26.0.2'
            }
        }
    }
     resolutionStrategy.eachDependency { details ->
        if (details.requested.group == 'com.android.support'
              && !details.requested.name.contains('multidex') ) {
           details.useVersion "26.0.2"
        }
     }
  }
}

26.0.2 est le vs que j'ai défini dans le fichier _ / android / app / build.gradle_ pour buildToolsVersion.
Donnez une photo.

@rodrigofbm , votre solution de contournement ne fonctionne pas pour moi = /

* Where:
Build file '/home/felipe/Projects/personal/grioty/android/build.gradle' line: 33

* What went wrong:
A problem occurred configuring project ':app'.
> Android tasks have already been created.
  This happens when calling android.applicationVariants,
  android.libraryVariants or android.testVariants.
  Once these methods are called, it is not possible to
  continue configuring the model.

Pouvez-vous expliquer ce que fait ce code? Peut-être que je peux comprendre ce qui se passe avec mon projet.
Merci!

@FSPinho essayez seulement ceci:

subprojects {
  project.configurations.all {
      afterEvaluate {project ->
        if (project.hasProperty("android")) {
            android {
                compileSdkVersion 26
                buildToolsVersion '26.0.2'
            }
        }
    }
  }
}

Merci!
Mais les erreurs se produisent exactement à cause de ces deux lignes.
compileSdkVersion 26
buildToolsVersion '26 .0.2 '

Pouvez-vous m'envoyer des informations sur l'environnement de développement?
Avec le terminal ouvert dans le dossier du projet: react-native info

Environment:
  OS: macOS High Sierra 10.13.4
  Node: 6.11.3
  Yarn: Not Found
  npm: 6.0.1
  Watchman: 4.9.0
  Xcode: Xcode 9.3.1 Build version 9E501
  Android Studio: 3.0 AI-171.4443003

Packages: (wanted => installed)
  react: 16.0.0 => 16.0.0
  react-native: ^0.55.4 => 0.55.4


pour mon cas, j'utilise ci-dessous
Gradle v4.4
classpath 'com.android.tools. construction: gradle : 3.1.1 '
classpath 'com.google. gms: google-services : 3.2.0 '

compileSdkVersion = 27
buildToolsVersion = '27 .0.3 '

Vous devez donc changer le code pour:

subprojects {
  project.configurations.all {
      afterEvaluate {project ->
        if (project.hasProperty("android")) {
            android {
                compileSdkVersion 27
                buildToolsVersion '27.0.3'
            }
        }
    }
  }
}

A propos de ça, je l'avais essayé. toujours le même résultat d'erreur.

Pour Gradle v4.4.
la version minimale de compilation semble être 27.0.3 ou 27.1.0 l'un ou l'autre.

C'est comme quelque chose qui renvoie à ce problème après l'installation de la dernière version de react-native-camera. Forcé de mettre à jour vers une version plus récente afin de compiler. Et voilà, ce problème apparaît.

@kkusanagi J'ai le même problème après l'installation de react-native-camera v1.1.4. L'avez-vous résolu?

salut, @ pkhien95 . Voilà comment cela fonctionne pour moi maintenant en utilisant react-native-camera v0.10.0.
À propos de la dernière version, désolé, il y a toujours un problème.

Environnement:
Système d'exploitation: macOS High Sierra 10.13.4
Nœud: 6.11.3
Fil: introuvable
npm: 6.0.1
Gardien: 4.9.0
Xcode: Xcode 9.3.1 Build version 9E501
Studio Android: 3.0 AI-171.4443003

Paquets: (voulu => installé)
réagir: 16.0.0 => 16.0.0
natif de réaction: ^ 0.51.1 => 0.51.1
caméra native de réaction: 0.10.0

Dans android android / gradle / wrapper / gradle-wrapper.properties modifiez cela
distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip

Ajoutez ci-dessous dans android / gradle.properties pour
android.enableAapt2=false

Ensuite, vous pouvez rencontrer une autre erreur en tant que fichier en double pour le fichier drawable- * png.
Pour résoudre ce problème, allez dans le dossier android / app / src / main / res et supprimez tous les dossiers drawable- ne laissant que

dans android / build.gradle , en définissant comme ci-dessous.

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        mavenCentral()
        jcenter()
        google()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.0'
        classpath 'com.google.gms:google-services:3.1.2'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

subprojects {
    afterEvaluate {project ->
        if (project.hasProperty("android")) {
            android {
                compileSdkVersion 27     //do this in android/app/build.gradle too
                buildToolsVersion '27.0.3'  //do this in android/app/build.gradle too
            }
        }
    }
}

allprojects {
    repositories {
        mavenLocal()
        jcenter()
        maven {
            // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
            url "$rootDir/../node_modules/react-native/android"
        }
        //maven {
        //    url 'https://maven.google.com'
        //}
        google()
    }
}

@kkusanagi Merci. Voici ma solution pour la dernière version de react-native-camera (1.1.4):

subprojects {
    project.configurations.all {
        resolutionStrategy.eachDependency { details ->
            if (details.requested.group == 'com.android.support'
                    && !details.requested.name.contains('multidex') ) {
                details.useVersion "27.1.1"
            }
        }
    }
    afterEvaluate {
        android {
            compileSdkVersion 27
            buildToolsVersion "27.0.3"

            defaultConfig {
                targetSdkVersion 27
            }
        }
    }
}

Dans mon cas, rien de ce qui précède n'a fonctionné, ni n'était nécessaire .....

aapt dans les outils de construction 23 est un binaire 32 bits ... Je suis sur un système 64 bits. Je n'avais pas installé de bibliothèques 32 bits correctes, donc cela ne fonctionnait pas.

L'installation de libncurses5: i386, libstdc ++ 6: i386 et zlib1g: i386 l'a corrigé.

@ pkhien95 Votre solution fonctionne pour moi, merci d'avoir sauvé ma journée.

dans android / gradle.properties, en définissant comme ci-dessous.
android.enableAapt2=false

@Scimanyd votre solution fonctionne pour moi. merci pour ça

@Scimanyd Merci mon frère, votre solution a fonctionné, mais que fait-elle exactement.

@ matt-goingout vous êtes génial, vlws !!! nince

@ matt-goingout

Dans mon cas, rien de ce qui précède n'a fonctionné, ni n'était nécessaire .....

aapt dans les outils de construction 23 est un binaire 32 bits ... Je suis sur un système 64 bits. Je n'avais pas installé de bibliothèques 32 bits correctes, donc cela ne fonctionnait pas.

L'installation de libncurses5: i386, libstdc ++ 6: i386 et zlib1g: i386 l'a corrigé.

où et comment installer ces bibliothèques?

@ viv3kk lancez simplement sudo apt-get install libncurses5: i386 libstdc ++ 6: i386 zlib1g: i386 dans ubuntu

@Scimanyd, j'ai l'impression qu'il vaut la peine de noter que

AVERTISSEMENT: l'option «android.enableAapt2» est obsolète et ne doit plus être utilisée.
Utilisez «android.enableAapt2 = true» pour supprimer cet avertissement.
Il sera supprimé fin 2018.

Il semble que ce ne sera pas une option viable à long terme.

"apt-get install libncurses5: i386 libstdc ++ 6: i386 zlib1g: i386 dans ubuntu"

Et MacOS? comment l'installer?

@ pkhien95
Je suis également confronté à la même erreur, j'ai essayé votre solution et j'ai obtenu cette erreur:

Execution failed for task ':app:preReleaseBuild'.
> Android dependency 'com.android.support:support-v4' has different version for the compile (27.1.0) and runtime (27.1.1) classpath. You should manually set the same version via DependencyResolution

À quoi ressemblent vos android/build.gradle et android/app/build.gradle ?

Salut les gars.

J'ai aussi le même problème après la mise à niveau de RN 0.55 vers 0.56, puis j'ai ajouté ceci à mon android/build.gradle , et cela m'a aidé à générer .apk, mais ce .apk ne fonctionne pas! Il montre simplement l'écran de lancement, puis s'arrête ...
Est-ce que quelqu'un a une idée?

subprojects {
    project.configurations.all {
        resolutionStrategy.eachDependency { details ->
            if (details.requested.group == 'com.android.support'
                    && !details.requested.name.contains('multidex') ) {
                details.useVersion "27.1.1"
            }
        }
    }
    afterEvaluate {
        android {
            compileSdkVersion 27
            buildToolsVersion "27.0.3"

            defaultConfig {
                targetSdkVersion 27
            }
        }
    }
}

Pour ceux qui font cela avant de générer apk

react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res

il génère des images dessinables inutiles dans un dossier dessinable. alors assurez-vous de le retirer et réessayez.

android-> app -> src -> main -> res -> drawable

Après avoir essayé toutes les solutions ci-dessus, face au même problème. Un peu creuser dans la question et la solution de contournement pour construire la version apk est:
Supprimez votre répertoire Android dans votre dossier racine.

mise à niveau react-native pour créer à nouveau le répertoire android

Maintenant, générez la version apk par ligne de commande

J'ai le même problème après être passé à 0,57 natif

android.enableAapt2 = false ne m'a pas aidé.

Même problème, impossible de le résoudre: https://github.com/rebeccahughes/react-native-device-info/issues/365#issuecomment -425609406

Ma solution qui m'aide avec 0.57 react-native

subprojects {
    afterEvaluate {project ->
        if (project.hasProperty("android")) {
            android {
                compileSdkVersion rootProject.ext.compileSdkVersion
                buildToolsVersion rootProject.ext.buildToolsVersion
            }
        }
    }
}

Vous devez donc changer le code pour:

subprojects {
  project.configurations.all {
      afterEvaluate {project ->
        if (project.hasProperty("android")) {
            android {
                compileSdkVersion 27
                buildToolsVersion '27.0.3'
            }
        }
    }
  }
}

A travaillé pour moi! Merci mon frère

@rodrigofbm merci mec cela a fonctionné pour moi

@antonsivogrivov merci, cela a fonctionné pour moi

Vous devez donc changer le code pour:

subprojects {
  project.configurations.all {
      afterEvaluate {project ->
        if (project.hasProperty("android")) {
            android {
                compileSdkVersion 27
                buildToolsVersion '27.0.3'
            }
        }
    }
  }
}

A travaillé pour moi! Merci mon frère

aux prises avec le même problème maintenant et rien ne fonctionne; /

https://github.com/facebook/react-native/issues/19239#issuecomment -425623992
cela a fonctionné pour moi. version 0.57

Ma solution qui m'aide avec 0.57 react-native

subprojects {
    afterEvaluate {project ->
        if (project.hasProperty("android")) {
            android {
                compileSdkVersion rootProject.ext.compileSdkVersion
                buildToolsVersion rootProject.ext.buildToolsVersion
            }
        }
    }
}

cela a fonctionné pour moi. version 0.57 👍

@kkusanagi Merci. Voici ma solution pour la dernière version de react-native-camera (1.1.4):

subprojects {
    project.configurations.all {
        resolutionStrategy.eachDependency { details ->
            if (details.requested.group == 'com.android.support'
                    && !details.requested.name.contains('multidex') ) {
                details.useVersion "27.1.1"
            }
        }
    }
    afterEvaluate {
        android {
            compileSdkVersion 27
            buildToolsVersion "27.0.3"

            defaultConfig {
                targetSdkVersion 27
            }
        }
    }
}

Si quelqu'un est confronté à ce bogue en utilisant react-native-image-resizer, cette solution le corrige!

travaillé pour moi! merci @Scimanyd

C'est ma solution 👍
gradle.properties >>
android.enableAapt2 = false

projet - >> build.gradle >>
// Fichier de construction de niveau supérieur où vous pouvez ajouter des options de configuration communes à tous les sous-projets / modules.

buildscript {
dépôts {
jcenter ()
Google()
}
dépendances {
classpath 'com.android.tools. construction: gradle : 3.1.0 '
classpath 'com.google. gms: google-services : 3.1.2 '

    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
}

}

allprojects {
dépôts {
mavenLocal ()
jcenter ()
Google()
maven {
// Tous les React Native (JS, sources Obj-C, binaires Android) sont installés à partir de npm
url "$ rootDir /../ node_modules / react-native / android"
}
}
}

sous-projets {
project.configurations.all {
resolutionStrategy.eachDependency {détails ->
if (details.requested.group == 'com.android.support'
&&! details.requested.name.contains ('multidex')) {
details.useVersion "26.0.2"
}
}

 afterEvaluate {
         android {
             compileSdkVersion 26
             buildToolsVersion "26.0.2"

             defaultConfig {
                 targetSdkVersion 26
             }
         }
     }

}
}

Après être passé à React-native 0.57, j'ai rencontré le même problème

android.enableAapt2 = false ne m'a pas aidé.

déjà installé?

J'ai eu le même problème, la solution de @rodrigofbm a fonctionné pour moi.
Ajoutez simplement ce qui suit à la fin du fichier _ .. / android / build.gradle_

subprojects {
  project.configurations.all {
      afterEvaluate {project ->
        if (project.hasProperty("android")) {
            android {
                compileSdkVersion 26
                buildToolsVersion '26.0.2'
            }
        }
    }
     resolutionStrategy.eachDependency { details ->
        if (details.requested.group == 'com.android.support'
              && !details.requested.name.contains('multidex') ) {
           details.useVersion "26.0.2"
        }
     }
  }
}

Salut les gars.

J'ai aussi le même problème après la mise à niveau de RN 0.55 vers 0.56, puis j'ai ajouté ceci à mon android/build.gradle , et cela m'a aidé à générer .apk, mais ce .apk ne fonctionne pas! Il montre simplement l'écran de lancement, puis s'arrête ...
Est-ce que quelqu'un a une idée?

subprojects {
    project.configurations.all {
        resolutionStrategy.eachDependency { details ->
            if (details.requested.group == 'com.android.support'
                    && !details.requested.name.contains('multidex') ) {
                details.useVersion "27.1.1"
            }
        }
    }
    afterEvaluate {
        android {
            compileSdkVersion 27
            buildToolsVersion "27.0.3"

            defaultConfig {
                targetSdkVersion 27
            }
        }
    }
}

J'ai le même problème, mais je n'en ai aucune idée , l'avez-vous résolu?

Vous devez donc changer le code pour:

subprojects {
  project.configurations.all {
      afterEvaluate {project ->
        if (project.hasProperty("android")) {
            android {
                compileSdkVersion 27
                buildToolsVersion '27.0.3'
            }
        }
    }
  }
}

travaille pour moi comme un patron! merci pour gagner du temps

@antonsivogrivov où dois-je ajouter ceci:
sous-projets {
project.configurations.all {
afterEvaluate {projet ->
if (project.hasProperty ("android")) {
Android {
compileSdkVersion 27
buildToolsVersion '27 .0.3 '
}
}
}
}
}

@ vivek-walecha-657 dans <ROOT>/android/build.gradle

si vous êtes sur 0.57 ++, je recommanderais d'utiliser la solution @antonsivogrivov . car il a les variables définies à partir de RN.

Ma solution qui m'aide avec 0.57 react-native

subprojects {
    afterEvaluate {project ->
        if (project.hasProperty("android")) {
            android {
                compileSdkVersion rootProject.ext.compileSdkVersion
                buildToolsVersion rootProject.ext.buildToolsVersion
            }
        }
    }
}

Ma solution qui m'aide avec 0.57 react-native

subprojects {
    afterEvaluate {project ->
        if (project.hasProperty("android")) {
            android {
                compileSdkVersion rootProject.ext.compileSdkVersion
                buildToolsVersion rootProject.ext.buildToolsVersion
            }
        }
    }
}

Tu as sauvé ma journée. Merci beaucoup.

Voici mon résumé avec mon exemple de projet bulid.gradle, package.json utilisant

https://gist.github.com/Abhishekgarg727/daf031fb9f94fdfd985e84db57dedbe1

ce commentaire a fonctionné pour moi!

@kkusanagi Merci. Voici ma solution pour la dernière version de react-native-camera (1.1.4):

subprojects {
    project.configurations.all {
        resolutionStrategy.eachDependency { details ->
            if (details.requested.group == 'com.android.support'
                    && !details.requested.name.contains('multidex') ) {
                details.useVersion "27.1.1"
            }
        }
    }
    afterEvaluate {
        android {
            compileSdkVersion 27
            buildToolsVersion "27.0.3"

            defaultConfig {
                targetSdkVersion 27
            }
        }
    }
}

Merci @ pkhien95 , tu as sauvé ma nuit. 🙏

Bonjour 👋 ce problème a été signalé pour une ancienne version de React Native. Idéalement, nous aimerions que tout le monde utilise 0.59 (voir les changements impressionnants qu'il a apportés) mais nous savons que la mise à jour peut être pénible. Au cours de la mise à jour 0.59, certaines modifications ont été apportées au système de construction Android, des éléments tels que compileSdkVersion et d'autres ont été mis à jour. Je clore le problème maintenant.

Mais s'il vous plaît, s'il s'agit toujours d'un problème avec 0.59, veuillez commenter ci-dessous et nous pourrons le rouvrir. Encore mieux, veuillez nous envoyer une demande d'extraction avec un correctif 😊

@rodrigofbm

React Native Environment Info:
    System:
      OS: macOS 10.14.1
      CPU: (4) x64 Intel(R) Core(TM) i5-5350U CPU @ 1.80GHz
      Memory: 36.67 MB / 8.00 GB
      Shell: 5.3 - /bin/zsh
    Binaries:
      Node: 8.11.3 - /usr/local/bin/node
      npm: 6.4.1 - /usr/local/bin/npm
      Watchman: 4.9.4 - /usr/local/bin/watchman
    SDKs:
      Android SDK:
        API Levels: 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28
        Build Tools: 26.0.1, 26.0.2, 27.0.0, 27.0.3, 28.0.3
    IDEs:
      Android Studio: 3.3 AI-182.5107.16.33.5264788
      Xcode: /undefined - /usr/bin/xcodebuild
    npmPackages:
      react: 16.6.3 => 16.6.3 
      react-native: 0.58.4 => 0.58.4 
    npmGlobalPackages:
      create-react-native-app: 2.0.2
      react-native-cli: 2.0.1
      react-native-vector-icons: 6.0.2

et j'ai le même problème

Exception dans le thread "ForkJoinPool.commonPool-worker-6" java.lang.IllegalStateException: le gestionnaire de processus AAPT ne peut pas être arrêté lorsque les démons sont en cours d'utilisation
à com.android.builder.internal.aapt.v2.Aapt2DaemonManager.shutdown (Aapt2DaemonManager.kt: 96)
à com.android.build.gradle.internal.res.namespaced.RegisteredAaptService.shutdown (Aapt2DaemonManagerService.kt: 61)
à com.android.build.gradle.internal.workeractions.WorkerActionServiceRegistry $ shutdownAllRegisteredServices $ 1 $ 1.run (WorkerActionServiceRegistry.kt: 96)
à java.util.concurrent.ForkJoinTask $ RunnableExecuteAction.exec (ForkJoinTask.java:1402)
à java.util.concurrent.ForkJoinTask.doExec (ForkJoinTask.java:289)
à java.util.concurrent.ForkJoinPool $ WorkQueue.runTask (ForkJoinPool.java:1056)
à java.util.concurrent.ForkJoinPool.runWorker (ForkJoinPool.java:1692)
à java.util.concurrent.ForkJoinWorkerThread.run (ForkJoinWorkerThread.java:157)
erreur Impossible d'installer l'application sur l'appareil, lisez l'erreur ci-dessus pour plus de détails.
Assurez-vous d'avoir un émulateur Android en cours d'exécution ou un appareil connecté et

Bonjour 👋 ce problème a été signalé pour une ancienne version de React Native. Idéalement, nous aimerions que tout le monde utilise 0.59 (voir les changements impressionnants qu'il a apportés) mais nous savons que la mise à jour peut être pénible. Au cours de la mise à jour 0.59, certaines modifications ont été apportées au système de construction Android, des éléments tels que compileSdkVersion et d'autres ont été mis à jour. Je clore le problème maintenant.

Mais s'il vous plaît, s'il s'agit toujours d'un problème avec 0.59, veuillez commenter ci-dessous et nous pourrons le rouvrir. Encore mieux, veuillez nous envoyer une demande d'extraction avec un correctif 😊

Même problème ici

"react": "16.8.3",
"react-native": "0.59.3",
"react-native-appodeal": "^2.1.5",

Cela se produit toujours et a un problème lié ici qui est ouvert: https://github.com/facebook/react-native/issues/22234

FWIW, ayant ce bit dans <root>/android/build.gradle :

subprojects { project -> 
  afterEvaluate {
        if((project.plugins.hasPlugin('android') || project.plugins.hasPlugin('android-library'))) {
            android {
                compileSdkVersion rootProject.ext.compileSdkVersion
                buildToolsVersion rootProject.ext.buildToolsVersion
            }
        }
    }
}

et ce bit dans <root>/android/app/build.gradle :

subprojects {
    project.configurations.all {
        afterEvaluate {project ->
            if (project.hasProperty("android")) {
                android {
                    compileSdkVersion rootProject.ext.compileSdkVersion
                    buildToolsVersion rootProject.ext.buildToolsVersion
                }
            }
        }
        resolutionStrategy.eachDependency { details ->
            if (details.requested.group == 'com.android.support'
                    && !details.requested.name.contains('multidex') ) {
                details.useVersion rootProject.ext.buildToolsVersion
            }
        }
    }
}

c'est ce qui a fait l'affaire.

J'ai résolu mon problème avec cette commande ./gradlew app:assembleRelease

si vous voulez créer juste un débogage apk hors ligne, essayez cette commande
./gradlew

simple vous n'avez pas besoin de faire ça

FWIW, ayant ce bit dans <root>/android/build.gradle :

subprojects { project -> 
  afterEvaluate {
        if((project.plugins.hasPlugin('android') || project.plugins.hasPlugin('android-library'))) {
            android {
                compileSdkVersion rootProject.ext.compileSdkVersion
                buildToolsVersion rootProject.ext.buildToolsVersion
            }
        }
    }
}

et ce bit dans <root>/android/app/build.gradle :

subprojects {
    project.configurations.all {
        afterEvaluate {project ->
            if (project.hasProperty("android")) {
                android {
                    compileSdkVersion rootProject.ext.compileSdkVersion
                    buildToolsVersion rootProject.ext.buildToolsVersion
                }
            }
        }
        resolutionStrategy.eachDependency { details ->
            if (details.requested.group == 'com.android.support'
                    && !details.requested.name.contains('multidex') ) {
                details.useVersion rootProject.ext.buildToolsVersion
            }
        }
    }
}

c'est ce qui a fait l'affaire.

Cela a fonctionné pour moi aussi [email protected]

Pour moi, cela fonctionne:
ajoutez ce code dans _ / android / build.gradle_

subprojects {
  project.configurations.all {
      afterEvaluate {project ->
        if (project.hasProperty("android")) {
            android {
                compileSdkVersion 26
                buildToolsVersion '26.0.2'
            }
        }
    }
     resolutionStrategy.eachDependency { details ->
        if (details.requested.group == 'com.android.support'
              && !details.requested.name.contains('multidex') ) {
           details.useVersion "26.0.2"
        }
     }
  }
}

26.0.2 est le vs que j'ai défini dans le fichier _ / android / app / build.gradle_ pour buildToolsVersion.
Donnez une photo.

travaille pour moi

@fossage où placer le bit dans les fichiers?
<root>/android/build.gradle
<root>/android/app/build.gradle
pouvez-vous coller un échantillon, merci

/android/build.gradle
un beuglement du code

FWIW, ayant ce bit dans <root>/android/build.gradle :

subprojects { project -> 
  afterEvaluate {
        if((project.plugins.hasPlugin('android') || project.plugins.hasPlugin('android-library'))) {
            android {
                compileSdkVersion rootProject.ext.compileSdkVersion
                buildToolsVersion rootProject.ext.buildToolsVersion
            }
        }
    }
}

et ce bit dans <root>/android/app/build.gradle :

subprojects {
    project.configurations.all {
        afterEvaluate {project ->
            if (project.hasProperty("android")) {
                android {
                    compileSdkVersion rootProject.ext.compileSdkVersion
                    buildToolsVersion rootProject.ext.buildToolsVersion
                }
            }
        }
        resolutionStrategy.eachDependency { details ->
            if (details.requested.group == 'com.android.support'
                    && !details.requested.name.contains('multidex') ) {
                details.useVersion rootProject.ext.buildToolsVersion
            }
        }
    }
}

c'est ce qui a fait l'affaire.

merci beaucoup cela a fonctionné maintenant avec 0.59.1, je luttais depuis 3 jours parfois je déteste réagir natif j'ai pensé à déplacer le développement natif mais des gens comme vous changent toujours d'avis :-)

Rien ne fonctionne pour moi sur React Native 0.59.0

Dans mon cas, j'ai supprimé le bloc resolutionStrategy que j'utilisais ...

Mon android / build.gradle est comme ceci:

buildscript {
    subprojects { project -> 
    afterEvaluate {
            if((project.plugins.hasPlugin('android') || project.plugins.hasPlugin('android-library'))) {
                android {
                    compileSdkVersion rootProject.ext.compileSdkVersion
                    buildToolsVersion rootProject.ext.buildToolsVersion
                }
            }
        }
    }

ext {
    buildToolsVersion = "28.0.3"
    minSdkVersion = 16
    compileSdkVersion = 28
    targetSdkVersion = 27
    supportLibVersion = "28.0.0"
}
    repositories {
        jcenter()
        google()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.4.1'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        google()
        mavenLocal()
        jcenter()
        maven {
            // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
            url "$rootDir/../node_modules/react-native/android"
        }
    }
}


wrapper {
    gradleVersion = '4.4'
    distributionUrl = distributionUrl.replace("bin", "all")
}

et mon android / app / build.gradle sont comme ceci:

android {
    compileSdkVersion rootProject.ext.compileSdkVersion
    buildToolsVersion rootProject.ext.buildToolsVersion

    defaultConfig {
        applicationId "com.modularapp"
        minSdkVersion rootProject.ext.minSdkVersion
        targetSdkVersion rootProject.ext.targetSdkVersion
        versionCode 1
        versionName "1.0"

        ndk {
            abiFilters "armeabi-v7a", "x86"
        }

        packagingOptions {
            exclude "lib/arm64-v8a/librealm-jni.so"
        }
    }

    signingConfigs {
        release {
            storeFile file(MYAPP_RELEASE_STORE_FILE)
            storePassword MYAPP_RELEASE_STORE_PASSWORD
            keyAlias MYAPP_RELEASE_KEY_ALIAS
            keyPassword MYAPP_RELEASE_KEY_PASSWORD
        }
    }

    splits {
        abi {
            reset()
            enable enableSeparateBuildPerCPUArchitecture
            universalApk false  // If true, also generate a universal APK
        }
    }
    buildTypes {
        release {
            signingConfig signingConfigs.release
            minifyEnabled enableProguardInReleaseBuilds
            proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
        }
    }
    // applicationVariants are e.g. debug, release
    applicationVariants.all { variant ->
        variant.outputs.each { output ->
            // For each separate APK per architecture, set a unique version code as described here:
            // http://tools.android.com/tech-docs/new-build-system/user-guide/apk-splits

            def versionCodes = ["armeabi-v7a":1, "x86":2]
            def abi = output.getFilter(OutputFile.ABI)
            if (abi != null) {  // null for the universal-debug, universal-release variants
                output.versionCodeOverride =
                        versionCodes.get(abi) * 1048576 + defaultConfig.versionCode
            }
        }
    }
}

dependencies {
    compile project(':react-native-voice')
    compile project(':react-native-tts')
    compile project(':react-native-vector-icons')
    compile project(':react-native-gesture-handler')
    compile project(':react-native-cookies')
    compile project(':react-native-webview')
    implementation fileTree(dir: "libs", include: ["*.jar"])
    implementation "com.android.support:appcompat-v7:${rootProject.ext.supportLibVersion}"
    implementation "com.facebook.react:react-native:+"  // From node_modules
}

@ pkhien95 merci votre solution a fonctionné pour moi, merci

Informations sur l'environnement natif de React:
Système:
Système d'exploitation: macOS 10.14.4
Binaires:
Nœud: 10.15.3
Fil: 1.15.2
npm: 6.4.1
Gardien: 4.9.0
SDK:
SDK iOS:
Plateformes: iOS 12.2, macOS 10.14, tvOS 12.2, watchOS 5.2
SDK Android:
Niveaux API: 23, 25, 28, 29
Outils de construction: 28.0.3, 29.0.2
Images système: android-28 | API Google Intel x86 Atom
IDE:
Studio Android: 3,5 AI-191.8026.42.35.5791312
Xcode: 10.2.1 / 10E1001
npmPackages:
réagir: 16,8,3 => 16,8,3
natif de réaction: ^ 0,59,8 => 0,59,8
npmGlobalPackages:
react-native-cli: 2.0.1

si quelqu'un a encore un problème, il peut suivre
https://github.com/christopherdro/react-native-html-to-pdf/issues/98

meilleur

./gradlew app:assembleRelease

Souffrant de cela avec RN 0.61.2 .

Corrigé avec ceci après react-native bundle :

git clean -df android/app/src/main/res/

J'ai résolu mon problème avec cette commande ./gradlew app:assembleRelease

Cela a vraiment fonctionné pour moi. Merci

dans android / gradle.properties, en définissant comme ci-dessous.
android.enableAapt2=false

Merci beaucoup, très utile pour moi!

./gradlew app:assembleRelease

enfin quelque chose a fonctionné.
J'ai essayé de créer une version depuis 24 heures, mais rien ne fonctionnait jusqu'à ce que je trouve cela.
Merci mon pote

J'ai le même problème après avoir utilisé react-native-ble-manager (6.5.1).
@kkusanagi Merci. Voici ma solution.

subprojects {
    afterEvaluate {project ->
        if (project.hasProperty("android")){
            android {
                compileSdkVersion 28
                buildToolsVersion '28.0.3'
            }
        }
    }
}

J'étais coincé là-dedans depuis trois jours. enfin, j'ai pu résoudre.
Cela était dû aux ressources en double générées dans votre \ yourProject \ android \ app \ src \ main \ res \
Vérifiez simplement ici que certains fichiers indésirables seront créés. supprimer certaines des images de ce dossier ne sont pas nécessaires. et supprimez le dossier brut de ce dossier. Ça marche

Merci

./gradlew app:assembleRelease

ty bro j'ai résolu ce problème

Cette page vous a été utile?
0 / 5 - 0 notes