web-dev-qa-db-fra.com

Erreur libpng: Il ne s'agit pas d'une erreur de fichier PNG indiquant dans Android Studio

Je viens d'importer un projet de Eclipe to Android Studio. Juste un projet simple et clair. Mais le dossier du projet affiche une erreur.

Puis-je savoir quelle est la bonne façon d'atteindre mon objectif? Je suis nouveau dans Android-studio. Est-ce que les gars rencontrent ce problème? Toute aide serait grandement appréciée.

Voici Logcat:

Execution failed for task ':app:mergeDebugResources'.
> Error: Failed to run command:
    /home/amiya/Android-studio/sdk/build-tools/Android-4.4.2/aapt s -i /home/amiya/vola/app/src/main/res/drawable-mdpi/call.png -o /home/amiya/vola/app/build/res/all/debug/drawable-mdpi/call.png
  Error Code:
    42
  Output:
    libpng error: Not a PNG file

Voici mon build.gradle

 apply plugin: 'Android'

Android {


    compileSdkVersion 19
    buildToolsVersion "19.0.3"



    defaultConfig {
        minSdkVersion 17
        targetSdkVersion 19
    }


    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.txt'
        }
    }



}

dependencies {
    compile 'com.Android.support:appcompat-v7:+'
    compile 'com.Android.support:support-v4:+'
    compile 'com.google.Android.gms:play-services:+'
    compile files('libs/google-play-services.jar')
    compile files('libs/livesdk.jar')
}

Je n'utilise ce fichier nulle part dans mon projet avec ce nom !! Il y a beaucoup d'autres fichiers png dans mon projet cependant.

46
IntelliJ Amiya

Vous devez suivre les étapes ci-dessous.

  1. Copier/coller l'image sur mon bureau .

  2. L'ouvre dans un éditeur et l'enregistre en png. Sans renommer le nom du fichier .

  3. Copié-collé le .png image dans le dossier pouvant être dessiné .

Vous pouvez utiliser cruncherEnabled.

Renvoie true si les fichiers PNG doivent être compressés, false sinon.

Android 
{ 
   aaptOptions
   {
   cruncherEnabled = false
   } 
}

J'espère que cela vous aide.

63
IntelliJ Amiya

Essayez ceci dans build.gradle

Android {
    ....
    aaptOptions {
        cruncherEnabled = false
    }
    ....
}
30
Dormon Zhou

Essayez de lancer la commande

find . -type f -name "*.png" | xargs -L 1 -I{} file  -I {} | grep -v 'image/png; charset=binary$'

dans votre répertoire de projet racine, il vous montrera tous les fichiers ayant l'extension . png, mais ne sont pas pngs. Ensuite, vous pouvez les enregistrer à nouveau au format png dans un éditeur d’image. Avant d'exécuter cette commande, nettoyez projet, pour accélérer le processus.

24
vbevans94

C’est peut-être à cause d’un problème de changement de nom de l’image: il suffit de couper les images et de les coller dans le système, puis de les ouvrir avec l’éditeur correspondant et de les enregistrer sous la même, mais de PNG formater et ensuite copier/coller à nouveau dans des dossiers pouvant être dessinés. Ça marche pour moi

ET REGARDEZ SVP AT LA QUESTION QUE J'AI SOUMIS A LA Android STUDIO TEAM

J'espère que cela vous aidera tous.

20
Spry Techies

Si vous utilisez Mac OS, suivez les étapes ci-dessous pour obtenir un png

  1. Ouvrir l'image en aperçu
  2. Aller dans le fichier -> Exporter
  3. Définir le format en png
  4. Cliquez sur sauvegarder

Cela vous donnera un png valide

Renommer ou changer d’extension ne fonctionnera pas sous Mac OS.

3
Android Mason

"PNG" dans l'erreur est clairement écrit en majuscules. Il faut donc voir que l’image a une extension .PNG (dans Capital).

Étape 1: Ouvrez l’image dans Paint .

Étape 2: Enregistrer l'image Enregistrer sous .PNG comme ci-dessous Cliquez ici pour savoir comment enregistrer l'image en PNG

Étape 3: actualisez votre projet

Étape 4: Vous devriez voir comme ceci -> voir ici

S'il vous plaît répondez si le problème n'est toujours pas résolu

2
dmellos

En ce qui me concerne, ce qui se passait, c’est que j’ai cloné le référentiel sous Windows et que ces fichiers PNG étaient des liens symboliques sous Linux/Mac, mais qu’ils ne représentaient que des fichiers non valides sous Windows. Une fois que j'ai fait les copies appropriées des fichiers au lieu d'être des liens symboliques, la construction a fonctionné.

0
knocte