2015-11-21 24 views
8

Tôi đã thử nhiều lần để nâng cấp các công cụ xây dựng Android Studio qua 1.3.1, nhưng tôi luôn kết thúc với lỗi libpng này. Tôi đã giải quyết một trong các lỗi bằng cách loại bỏ hoàn toàn phụ thuộc maven (vì giao diện điều khiển gradle trỏ đến chính xác vị trí tệp vấn đề), nhưng bây giờ tôi bị mắc kẹt với cùng một lỗi và không có con trỏ nào xảy ra với tệp vấn đề. Tui bỏ lỡ điều gì vậy? Đây là gradle console log:Lỗi libpng: Không phải tệp 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 

Dưới đây là build.gradle của tôi (Học phần: ứng dụng)

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; 
    } 
} 

Và dưới đây là top-level của tôi 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() 
    } 
} 

Lùi lại quay lại classpath "com.android.tools.build:gradle:1.3.1" dường như khắc phục được sự cố, nhưng tôi muốn bắt đầu sử dụng tất cả các tính năng mới

+0

thử luồng lưu lượng truy cập http: // này.com/a/32883231/5202007 – Tauqir

+0

hoặc http://stackoverflow.com/questions/4280398/9-patch-image-error-in-android – Tauqir

+0

Tôi thực hiện một cách ngắn gọn và đơn giản là xóa mọi tệp không sử dụng mà tôi có trong thư mục drawables. Điều này dường như đã giải quyết được vấn đề. Trong tương lai, tôi chắc chắn sẽ đè bẹp bất kỳ PNG nào trước khi đặt chúng vào thư mục drawables –

Trả lời

0

Tôi đã thực hiện một cách ngắn gọn và đơn giản là xóa mọi tệp không sử dụng mà tôi có trong thư mục drawables của mình. Điều này dường như đã giải quyết được vấn đề. Trong tương lai, tôi chắc chắn sẽ nghiền nát mọi PNG trước khi đặt chúng vào thư mục drawables, như Tauqir gợi ý.

20

Sự cố nằm trong tệp png của bạn. Có lẽ hình ảnh của bạn đã được tối ưu hóa bởi một số công cụ tối ưu hóa png. Android studio sử dụng công cụ AAPT để tối ưu hóa hình ảnh trong khi xây dựng dự án của bạn. Lý do cho vấn đề này là công cụ AAPT không biết rằng bạn đã xử lý trước hình ảnh.

Để làm được việc này trong ứng dụng của bạn, bạn cần phải xác định các tùy chọn trong gradle

aaptOptions{ 
    cruncherEnabled = false 
} 

Đây là disable AAPT tối ưu hóa cho tất cả các file png của bạn.

câu hỏi tương tự được hỏi here

0

Thực ra lý do cho điều này là của bạn một số trong những cái gọi là .png file không thực sự PNG s nhưng một số loại khác (chủ yếu là tôi nghi ngờ họ là JPEG s, nhưng người khác hoặc có thể bạn đã đổi tên họ với phần mở rộng tập tin .png chỉ để lừa dối Eclipse Nhưng hãy nhớ Android Studio là thông minh hơn :. D)

để chắc chắn để kiểm tra, ope Một trong những tệp hình ảnh PNG có thể đưa ra lỗi này trong Photoshop như công cụ (Photoshop là tốt hơn, vì nếu phần mở rộng tệp khác với định dạng thực tế thì nó cũng sẽ gây ra lỗi. Nếu vậy để tìm hiểu định dạng thực tế của tệp hình ảnh của bạn là sử dụng webapp like this).

Giải pháp:
Sau khi bạn mở tệp của mình trong Photoshop, hãy lưu tệp dưới định dạng PNG. Và thử xây dựng điều này và chủ yếu là vấn đề này có thể đã biến mất.

Hy vọng câu trả lời này hữu ích cho ai đó ngoài kia.
Chúc mừng!

Các vấn đề liên quan