2017-03-10 7 views
16

Wenn proguard läuft meine apk-Datei zu erstellen, erhalte ich folgende Fehlermeldung:Aapt_rules.txt nicht beim Bau von apk in Android Studio gefunden

Warning:Exception while processing task java.io.FileNotFoundException: C:\Users\Josh\Documents\AdscendUnityPlugin2.1.3\AdscendUnityPlugin2.1.3\HelloUnity\Export\HelloUnity\build\intermediates\proguard-rules\debug\aapt_rules.txt (The system cannot find the path specified) 

Meine gradle Datei:

// GENERATED BY UNITY. REMOVE THIS COMMENT TO PREVENT OVERWRITING WHEN EXPORTING AGAIN 
buildscript { 
    repositories { 
     jcenter() 
    } 

    dependencies { 
     classpath 'com.android.tools.build:gradle:2.3.0' 
    } 
} 

allprojects { 
    repositories { 
     jcenter() 
     flatDir { 
     dirs 'libs' 
     } 
    } 
} 

apply plugin: 'com.android.application' 

repositories { 

    maven { url "https://bitbucket.org/adscend/androidsdk/raw/master/" } 
} 


dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    compile 'com.adscendmedia.sdk:adscendmedia:2.1.26' 
} 

android { 
    compileSdkVersion 25 
    buildToolsVersion '25.0.0' 

    defaultConfig { 
     targetSdkVersion 25 
    } 

    lintOptions { 
     abortOnError false 
    } 

    buildTypes { 
     debug { 
      jniDebuggable true 
      minifyEnabled true 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-unity.txt' 
     } 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-unity.txt' 

     } 
    } 

} 

I couldn‘ t scheint auch der Ordner 'proguard-rules' zu finden, was könnte diesen Fehler verursachen? Irgendwelche Ideen?

Ich bin mir bewusst, dass ich Progress auf meinem Debug-Build laufen, ich versuche nur, es an dieser Stelle zu arbeiten.

Danke

+4

Ich bin auch gleiches Problem gegenüber. Möglicherweise ist dieses Problem in der neuesten Version Gradle Plugin verursacht. Das erste Mal sah ich diese Art von Problem. Ich bekomme dieses Problem, wenn ich Android Studio mit Gradle-Plugin Version 2.3.0 aktualisiert habe. –

+1

Das gleiche hier, ich habe noch keine Problemumgehung gefunden. – vRallev

Antwort

0

Ich denke, Ihr proguard-pro.txt leer sein kann. Ich hatte diese Art von Problem früher. Bu nach dem Hinzufügen von Code unter proguard-pro.txt funktionierte es für mich. Probieren Sie es einmal, es kann für Sie arbeiten.

# Add project specific ProGuard rules here. 
# By default, the flags in this file are appended to flags specified 
# in D:\Android\adt-bundle-windows-x86-20140702\adt-bundle-windows-x86-20140702\sdk/tools/proguard/proguard-android.txt 
# You can edit the include path and order by changing the proguardFiles 
# directive in build.gradle. 
# 
# For more details, see 
# http://developer.android.com/guide/developing/tools/proguard.html 

# Add any project specific keep options here: 

# If your project uses WebView with JS, uncomment the following 
# and specify the fully qualified class name to the JavaScript interface 
# class: 
#-keepclassmembers class fqcn.of.javascript.interface.for.webview { 
# public *; 
#} 
# Required for GSON 
-keep class com.ptechsolutions.android.authenticrecipe.core.** { *; } 

-keepattributes *Annotation* 
-keepattributes Signature 
-keep class sun.misc.Unsafe { *; } 

-keep class * extends java.util.ListResourceBundle { 
    protected Object[][] getContents(); 
} 

-keep public class com.google.android.gms.common.internal.safeparcel.SafeParcelable { 
    public static final *** NULL; 
} 

-keepnames @com.google.android.gms.common.annotation.KeepName class * 
-keepclassmembernames class * { 
    @com.google.android.gms.common.annotation.KeepName *; 
} 

-keepnames class * implements android.os.Parcelable { 
    public static final ** CREATOR; 
} 


-keep class butterknife.** { *; } 
-dontwarn butterknife.internal.** 
-keep class **$$ViewInjector { *; } 

-keepclasseswithmembernames class * { 
    @butterknife.* <fields>; 
} 

-keepclasseswithmembernames class * { 
    @butterknife.* <methods>; 
} 
-dontwarn org.apache.commons.** 
-dontwarn com.google.** 
-dontwarn com.j256.ormlite** 
-dontwarn org.apache.http** 

-keepattributes SourceFile,LineNumberTable 
-keep class com.j256.** 
-keepclassmembers class com.j256.** { *; } 
-keep enum com.j256.** 
-keepclassmembers enum com.j256.** { *; } 
-keep interface com.j256.** 
-keepclassmembers interface com.j256.** { *; } 

-keepattributes Signature 
# GSON Library 
# For using GSON @Expose annotation 
-keepattributes *Annotation* 

# Gson specific classes 
-keep class sun.misc.Unsafe { *; } 
#-keep class com.google.gson.stream.** { *; } 

# Application classes that will be serialized/deserialized over Gson 
-keep class com.google.gson.examples.android.model.** { *; } 

-keepattributes SourceFile, LineNumberTable 

# Google Map 
-keep class com.google.android.gms.maps.** { *; } 
-keep interface com.google.android.gms.maps.** { *; } 

-keep class org.apache.harmony.awt.** { *; } 
-dontwarn org.apache.harmony.awt.** 

-keep class com.github.siyamed.** { *; } 
-dontwarn com.github.siyamed.** 

-keep class com.squareup.picasso.** { *; } 
-dontwarn com.squareup.picasso.** 

-keep class com.squareup.okhttp.** { *; } 
-dontwarn com.squareup.okhttp.** 

-keep class com.sun.mail.** { *; } 
-dontwarn com.sun.mail.** 

-keep class org.codehaus.mojo.** { *; } 
-dontwarn org.codehaus.mojo.** 

-keep class java.awt.datatransfer.** { *; } 
-dontwarn java.awt.datatransfer.** 

-keep class java.nio.file.** { *; } 
-dontwarn java.nio.file.** 

-keep class javax.mail.** { *; } 
-dontwarn javax.mail.** 

-keep class com.theartofdev.edmodo.** { *; } 
-dontwarn com.theartofdev.edmodo.** 

-keep class javax.activation.** { *; } 
-dontwarn javax.activation.** 

-dontskipnonpubliclibraryclassmembers 
1

In meinem Fall das Problem war:
ich ein Projekt mit mehreren Modulen haben: eine Android-Anwendung und eine Android-Bibliothek.

Als ich assembleRelease in Android Studio bauen, muss ich auch dafür sorgen, dass alles für Release gebaut (nicht Debug).

In Android Studio stellen Sie die Build Variant freizugeben: enter image description here

In der build.gradle Datei des Bibliotheksmodul:

android { 
    defaultPublishConfig "release" 

siehe auch:

27

In meinem Fall ist meine benutzerdefinierte proguard.pro leer. Rebuild Projekt funktioniert für mich.

+1

Das hat für mich funktioniert. Vielen Dank. – user1510006

+1

"Sauberes Projekt" ist der Schlüssel. – jclova

0

Löschen Sie den Ordner build in Moudle und neu erstellen.

In Ihrem Projekt ist HelloUnity\build\ Ordner

Verwandte Themen