libpng错误:不是PNG文件

我已经尝试了几次升级过去的1.3.1的Android Studio构build工具,但我总是以这个libpng错误结束。 我解决了一个错误,通过完全删除一个Maven的依赖(因为Gradle控制台确切地指出了问题文件的位置),但是现在我坚持使用相同的错误,并且没有指向问题文件的位置。 我错过了什么吗? 这里是gradle控制台日志:

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 

下面是我的build.gradle(模块:应用程序)

 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:2.0.1@aar') {transitive=true} compile 'com.google.android.exoplayer:exoplayer:r1.4.2' compile('com.crashlytics.sdk.android:crashlytics:2.5.2@aar') { transitive = true; } } 

下面是我的顶级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() } } 

恢复到类path“com.android.tools.build:gradle:1.3.1”似乎解决了这个问题,但我想开始使用所有的新function

Solutions Collecting From Web of "libpng错误:不是PNG文件"

问题在于你的PNG文件。 可能你的图像是由一些PNG优化工具进行了优化。 Android Studio使用AAPT工具在构build项目期间优化图像。 这个问题的原因是AAPT工具不知道你预处理的图像。

要在应用程序中解决这个问题,您需要在gradle中指定选项

  aaptOptions{ cruncherEnabled = false } 

这是禁用所有你的PNG文件的AAPT优化。

类似的问题在这里被问到

我采取了简短的方式,只是删除我的绘图文件夹中的任何未使用的文件。 这似乎解决了这个问题。 如Tauqir所build议的那样,将来我会确保在将任何PNG放入可绘制文件夹之前将其压碎。

其实原因是你的一些所谓的PNG文件实际上不是PNG的,但其他types(大多数我怀疑他们是JPEG的,但其他人或可能是你已经重命名为.png文件扩展名只是欺骗Eclipse。但是记住Android Studio比这个更聪明:D

为确保检查,打开一个PNG图像文件,这可能是在Photoshop中给出这个错误的工具( Photoshop更好,因为如果文件扩展名不同于它的实际格式,那么它也会给出一个错误。找出你的图像文件的实际格式是什么使用这样的webapp )。

解:
在Photoshop中打开文件后,将其另存为PNG。 并尝试build设这个问题,这个问题可能已经没有了。

希望这个答案对那里的人有帮助。
干杯!