2015-11-21 15 views
8

Ho provato più volte ad aggiornare gli strumenti di sviluppo di Android Studio oltre 1.3.1, ma finisco sempre con questo errore di libpng. Ho risolto uno degli errori rimuovendo completamente una dipendenza di tipo Maven (poiché la console gradle indicava esattamente dove si trovava il problema), ma ora sono bloccato con lo stesso errore e nessun puntatore sul punto in cui si trova il file problematico. Mi sto perdendo qualcosa? Ecco il Gradle log della console:errore libpng: non è un file PNG

Executing tasks: [:app:generateDebugSources, :app:generateDebugAndroidTestSources] 

Configuration on demand is an incubating feature. 
:app:preBuild UP-TO-DATE 
:app:preDebugBuild UP-TO-DATE 
:app:checkDebugManifest 
:app:preReleaseBuild UP-TO-DATE 
:app:prepareComAndroidDatabindingAdapters10Rc3Library UP-TO-DATE 
:app:prepareComAndroidDatabindingLibrary10Rc3Library UP-TO-DATE 
:app:prepareComAndroidSupportAppcompatV72310Library UP-TO-DATE 
:app:prepareComAndroidSupportCardviewV72310Library UP-TO-DATE 
:app:prepareComAndroidSupportDesign2310Library UP-TO-DATE 
:app:prepareComAndroidSupportMediarouterV72220Library UP-TO-DATE 
:app:preDebugAndroidTestBuild UP-TO-DATE 
:app:prepareComAndroidSupportMultidex101Library UP-TO-DATE 
:app:prepareComAndroidSupportPercent2310Library UP-TO-DATE 
:app:prepareComAndroidSupportRecyclerviewV72310Library UP-TO-DATE 
:app:prepareComAndroidSupportSupportV42310Library UP-TO-DATE 
:app:prepareComCrashlyticsSdkAndroidAnswers132Library UP-TO-DATE 
:app:prepareComCrashlyticsSdkAndroidBeta113Library UP-TO-DATE 
:app:prepareComCrashlyticsSdkAndroidCrashlytics252Library UP-TO-DATE 
:app:prepareComCrashlyticsSdkAndroidCrashlyticsCore235Library UP-TO-DATE 
:app:prepareComFacebookAndroidFacebookAndroidSdk410Library UP-TO-DATE 
:app:prepareComFacebookFrescoDrawee061Library UP-TO-DATE 
:app:prepareComFacebookFrescoFbcore061Library UP-TO-DATE 
:app:prepareComFacebookFrescoFresco061Library UP-TO-DATE 
:app:prepareComFacebookFrescoImagepipeline061Library UP-TO-DATE 
:app:prepareComGithubRahatarmanahmedCircularprogressview232Library UP-TO-DATE 
:app:prepareComGoogleAndroidExoplayerExoplayerR142Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServices810Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesAds810Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesAnalytics810Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesAppindexing810Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesAppinvite810Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesAppstate810Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesBase810Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesBasement810Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesCast810Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesDrive810Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesFitness810Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesGames810Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesGcm810Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesIdentity810Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesLocation810Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesMaps810Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesMeasurement810Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesNearby810Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesPanorama810Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesPlus810Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesSafetynet810Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesVision810Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesWallet810Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesWearable810Library UP-TO-DATE 
:app:prepareIoFabricSdkAndroidFabric136Library UP-TO-DATE 
:app:prepareDebugDependencies 
:app:compileDebugAidl UP-TO-DATE 
:app:compileDebugRenderscript UP-TO-DATE 
:app:generateDebugResValues UP-TO-DATE 
:app:generateDebugResources UP-TO-DATE 
:app:mergeDebugResources 
AAPT err(Facade for 961886319): libpng error: Not a PNG file 

FAILED 

FAILURE: Build failed with an exception. 

* What went wrong: 
Execution failed for task ':app:mergeDebugResources'. 
> Some file crunching failed, see logs for details 

* Try: 
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. 

BUILD FAILED 

Total time: 4.398 secs 

Qui di seguito è la mia build.gradle (modulo: app)

buildscript { 
    repositories { 
     maven { url 'https://maven.fabric.io/public' } 
    } 

    dependencies { 
     classpath 'io.fabric.tools:gradle:1.+' 
    } 
} 
apply plugin: 'com.android.application' 
apply plugin: 'io.fabric' 

android { 
    compileSdkVersion 23 
    buildToolsVersion "23.0.2" 

    defaultConfig { 
     applicationId "us.revibe.revibe" 
     minSdkVersion 16 
     targetSdkVersion 23 
     versionCode 1 
     versionName "1.0" 
     multiDexEnabled = true 
    } 
    buildTypes { 
     debug{ 
      debuggable true 
     } 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
    dataBinding { 
     enabled = true 
    } 
    dexOptions { 
     javaMaxHeapSize "4g" 
    } 
} 

repositories { 
// maven { url 'http://maven.livotovlabs.pro/content/groups/public' } 
    maven { url 'https://maven.fabric.io/public' } 
} 

dependencies { 
    compile fileTree(include: ['*.jar'], dir: 'libs') 
    compile 'com.android.support:appcompat-v7:23.1.0' 
    compile 'com.android.support:cardview-v7:23.1.0' 
    compile 'com.android.support:recyclerview-v7:23.1.0' 
    compile 'com.android.support:percent:23.1.0' 
    compile 'com.android.support:design:23.1.0' 
    compile files('libs/core-3.2.1.jar') 
    compile files('libs/retrofit-1.9.0.jar') 
    compile files('libs/connectionclass-1.0.1.jar') 
    compile 'com.squareup.okhttp:okhttp-urlconnection:2.0.0' 
    compile 'com.squareup.okhttp:okhttp:2.3.0' 
    compile 'com.joanzapata.android:android-iconify:1.0.8' 
    compile 'com.github.rahatarmanahmed:circularprogressview:2.3.2' 
    compile 'com.facebook.android:facebook-android-sdk:4.1.0' 
    compile 'com.facebook.fresco:fresco:0.6.1+' 
    compile 'com.google.android.gms:play-services:8.1.0' 
    compile 'com.android.support:multidex:1.0.1' 
    compile 'com.amazonaws:aws-android-sdk-core:2.+' 
    compile 'com.amazonaws:aws-android-sdk-cognito:2.+' 
    compile 'com.amazonaws:aws-android-sdk-s3:2.+' 
// compile ('eu.livotov.labs:zxscanlib:[email protected]') {transitive=true} 

    compile 'com.google.android.exoplayer:exoplayer:r1.4.2' 
    compile('com.crashlytics.sdk.android:crashlytics:[email protected]') { 
     transitive = true; 
    } 
} 

E sotto è il mio primo livello build.gradle

buildscript { 
    repositories { 
     jcenter() 
     mavenCentral() 
    } 
    dependencies { 
     classpath "com.android.tools.build:gradle:1.5.0" 

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

allprojects { 
    repositories { 
     jcenter() 
    } 
} 

Ripristino torna a classpath "com.android.tools.build:gradle:1.3.1" sembra risolvere il problema, ma mi piacerebbe iniziare a utilizzare tutte le nuove funzionalità

+0

provare questo http: // StackOverflow.it/a/32883231/5202007 – Tauqir

+0

o questo http://stackoverflow.com/questions/4280398/9-patch-image-error-in-android – Tauqir

+0

Ho preso la via corta e ho semplicemente cancellato tutti i file inutilizzati che avevo nel mio cartella drawable. Questo sembra aver risolto il problema. In futuro mi assicurerò di schiacciare qualsiasi PNG prima di metterli nella cartella dei drawable –

risposta

0

Ho preso la via corta e ho semplicemente cancellato tutti i file inutilizzati che avevo nella mia cartella drawable. Questo sembra aver risolto il problema. In futuro mi assicurerò di schiacciare qualsiasi PNG prima di metterli nella cartella dei drawables, come suggerito da Tauqir.

20

Il problema è nei file png. Probabilmente le tue immagini sono state ottimizzate da alcuni strumenti di ottimizzazione png. Android studio utilizza lo strumento AAPT per ottimizzare le immagini durante la creazione del progetto. Il motivo di questo problema è che lo strumento AAPT non sa che hai preelaborato l'immagine.

per aggirare questo nella vostra applicazione è necessario specificare l'opzione in Gradle

aaptOptions{ 
    cruncherEnabled = false 
} 

Questo è disabilitare AAPT ottimizzazione per tutti i file PNG.

domanda simile è stato chiesto here

0

In realtà la ragione di questo è il vostro alcuni dei cosiddetti .png file non sono in realtà PNG s, ma qualche altro tipo (per lo più ho il sospetto che siano JPEG s, ma qualcun altro o può essere li avete rinominato con l'estensione del file .png solo per ingannare Eclipse Ma ricordate Android Studio è intelligente di quello :. D)

per essere sicuri per un controllo, ope n uno dei file immagine PNG che potrebbero dare questo errore in Photoshop come strumento (Photoshop è meglio, perché se l'estensione del file è diversa dal suo formato reale, allora darà anche un errore. In tal caso, per scoprire qual è il formato effettivo del file immagine, utilizzare webapp like this).

Soluzione:
Dopo aver aperto il file in Photoshop, salvarlo come PNG. E prova a costruire questo e per lo più questo problema potrebbe essere andato via.

Spero che questa risposta sia stata utile a qualcuno là fuori.
Saluti!

Problemi correlati