wake-up-neo.net

Resources $ NotFoundException: Datei res/drawable/abc_ic_ab_back_material.xml

Nach dem Lösen eines JDK-Nullwertfehlers stehe ich jetzt vor diesem. Ich habe ein wenig recherchiert, aber es scheint, dass ich nicht zur Sache kommen kann. Hier ist der Protokollfehler: 

FATAL EXCEPTION: main
 E/AndroidRuntime: Java.lang.RuntimeException: Unable to start activity ComponentInfo{.MainActivity}: Android.content.res.Resources$NotFoundException: File res/drawable/abc_ic_ab_back_material.xml from drawable resource ID #0x7f020013
 E/AndroidRuntime:     at Android.app.ActivityThread.performLaunchActivity(ActivityThread.Java:2204)
 E/AndroidRuntime:     at Android.app.ActivityThread.handleLaunchActivity(ActivityThread.Java:2254)
 E/AndroidRuntime:     at Android.app.ActivityThread.access$600(ActivityThread.Java:141)
 E/AndroidRuntime:     at Android.app.ActivityThread$H.handleMessage(ActivityThread.Java:1234)
 E/AndroidRuntime:     at Android.os.Handler.dispatchMessage(Handler.Java:99)
 E/AndroidRuntime:     at Android.os.Looper.loop(Looper.Java:137)
 E/AndroidRuntime:     at Android.app.ActivityThread.main(ActivityThread.Java:5069)
 E/AndroidRuntime:     at Java.lang.reflect.Method.invokeNative(Native Method)
 E/AndroidRuntime:     at Java.lang.reflect.Method.invoke(Method.Java:511)
 E/AndroidRuntime:     at com.Android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.Java:793)
 E/AndroidRuntime:     at com.Android.internal.os.ZygoteInit.main(ZygoteInit.Java:560)
 E/AndroidRuntime:     at dalvik.system.NativeStart.main(Native Method)
 E/AndroidRuntime:  Caused by: Android.content.res.Resources$NotFoundException: File res/drawable/abc_ic_ab_back_material.xml from drawable resource ID #0x7f020013
 E/AndroidRuntime:     at Android.content.res.Resources.loadDrawable(Resources.Java:1953)
 E/AndroidRuntime:     at Android.content.res.Resources.getDrawable(Resources.Java:660)
 E/AndroidRuntime:     at Android.support.v4.content.ContextCompat.getDrawable(ContextCompat.Java:354)
 E/AndroidRuntime:     at Android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.Java:193)
 E/AndroidRuntime:     at Android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.Java:181)
 E/AndroidRuntime:     at Android.support.v7.widget.AppCompatDrawableManager.checkVectorDrawableSetup(AppCompatDrawableManager.Java:689)
 E/AndroidRuntime:     at Android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.Java:186)
 E/AndroidRuntime:     at Android.support.v7.widget.TintTypedArray.getDrawableIfKnown(TintTypedArray.Java:77)
 E/AndroidRuntime:     at Android.support.v7.app.AppCompatDelegateImplBase.<init>(AppCompatDelegateImplBase.Java:83)
 E/AndroidRuntime:     at Android.support.v7.app.AppCompatDelegateImplV7.<init>(AppCompatDelegateImplV7.Java:146)
 E/AndroidRuntime:     at Android.support.v7.app.AppCompatDelegateImplV11.<init>(AppCompatDelegateImplV11.Java:28)
 E/AndroidRuntime:     at Android.support.v7.app.AppCompatDelegateImplV14.<init>(AppCompatDelegateImplV14.Java:41)
 E/AndroidRuntime:     at Android.support.v7.app.AppCompatDelegate.create(AppCompatDelegate.Java:193)
 E/AndroidRuntime:     at Android.support.v7.app.AppCompatDelegate.create(AppCompatDelegate.Java:173)
 E/AndroidRuntime:     at Android.support.v7.app.AppCompatActivity.getDelegate(AppCompatActivity.Java:511)
 E/AndroidRuntime:     at Android.support.v7.app.AppCompatActivity.onCreate(AppCompatActivity.Java:71)
 E/AndroidRuntime:     at .MainActivity.onCreate(MainActivity.Java:29)
 E/AndroidRuntime:     at Android.app.Activity.performCreate(Activity.Java:5104)
 E/AndroidRuntime:     at Android.app.Instrumentation.callActivityOnCreate(Instrumentation.Java:1092)
 E/AndroidRuntime:     at Android.app.ActivityThread.performLaunchActivity(ActivityThread.Java:2148)
 E/AndroidRuntime:     at Android.app.ActivityThread.handleLaunchActivity(ActivityThread.Java:2254) 
 E/AndroidRuntime:     at Android.app.ActivityThread.access$600(ActivityThread.Java:141) 
 E/AndroidRuntime:     at Android.app.ActivityThread$H.handleMessage(ActivityThread.Java:1234) 
 E/AndroidRuntime:     at Android.os.Handler.dispatchMessage(Handler.Java:99) 
 E/AndroidRuntime:     at Android.os.Looper.loop(Looper.Java:137) 
 E/AndroidRuntime:     at Android.app.ActivityThread.main(ActivityThread.Java:5069) 
 E/AndroidRuntime:     at Java.lang.reflect.Method.invokeNative(Native Method) 
 E/AndroidRuntime:     at Java.lang.reflect.Method.invoke(Method.Java:511) 
 E/AndroidRuntime:     at com.Android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.Java:793) 
 E/AndroidRuntime:     at com.Android.internal.os.ZygoteInit.main(ZygoteInit.Java:560) 
 E/AndroidRuntime:     at dalvik.system.NativeStart.main(Native Method) 
 E/AndroidRuntime:  Caused by: org.xmlpull.v1.XmlPullParserException: Binary XML file line #17: invalid drawable tag vector
 E/AndroidRuntime:     at Android.graphics.drawable.Drawable.createFromXmlInner(Drawable.Java:881)
 E/AndroidRuntime:     at Android.graphics.drawable.Drawable.createFromXml(Drawable.Java:822)
 E/AndroidRuntime:     at Android.content.res.Resources.loadDrawable(Resources.Java:1950)
 E/AndroidRuntime:     at Android.content.res.Resources.getDrawable(Resources.Java:660) 
 E/AndroidRuntime:     at Android.support.v4.content.ContextCompat.getDrawable(ContextCompat.Java:354) 
 E/AndroidRuntime:     at Android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.Java:193) 
 E/AndroidRuntime:     at Android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.Java:181) 
 E/AndroidRuntime:     at Android.support.v7.widget.AppCompatDrawableManager.checkVectorDrawableSetup(AppCompatDrawableManager.Java:689) 
 E/AndroidRuntime:     at Android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.Java:186) 
 E/AndroidRuntime:     at Android.support.v7.widget.TintTypedArray.getDrawableIfKnown(TintTypedArray.Java:77) 
 E/AndroidRuntime:     at Android.support.v7.app.AppCompatDelegateImplBase.<init>(AppCompatDelegateImplBase.Java:83) 
 E/AndroidRuntime:     at Android.support.v7.app.AppCompatDelegateImplV7.<init>(AppCompatDelegateImplV7.Java:146) 
 E/AndroidRuntime:     at Android.support.v7.app.AppCompatDelegateImplV11.<init>(AppCompatDelegateImplV11.Java:28) 
 E/AndroidRuntime:     at Android.support.v7.app.AppCompatDelegateImplV14.<init>(AppCompatDelegateImplV14.Java:41) 
 E/AndroidRuntime:     at Android.support.v7.app.AppCompatDelegate.create(AppCompatDelegate.Java:193) 
 E/AndroidRuntime:     at Android.support.v7.app.AppCompatDelegate.create(AppCompatDelegate.Java:173) 
 E/AndroidRuntime:     at Android.support.v7.app.AppCompatActivity.getDelegate(AppCompatActivity.Java:511) 
 E/AndroidRuntime:     at Android.support.v7.app.AppCompatActivity.onCreate(AppCompatActivity.Java:71) 
 E/AndroidRuntime:     at .MainActivity.onCreate(MainActivity.Java:29) 
 E/AndroidRuntime:     at Android.app.Activity.performCreate(Activity.Java:5104) 
 E/AndroidRuntime:     at Android.app.Instrumentation.callActivityOnCreate(Instrumentation.Java:1092) 
 E/AndroidRuntime:     at Android.app.ActivityThread.performLaunchActivity(ActivityThread.Java:2148) 
 E/AndroidRuntime:     at Android.app.ActivityThread.handleLaunchActivity(ActivityThread.Java:2254) 
 E/AndroidRuntime:     at Android.app.ActivityThread.access$600(ActivityThread.Java:141) 
 E/AndroidRuntime:     at Android.app.ActivityThread$H.handleMessage(ActivityThread.Java:1234) 
 E/AndroidRuntime:     at Android.os.Handler.dispatchMessage(Handler.Java:99) 
 E/AndroidRuntime:     at Android.os.Looper.loop(Looper.Java:137) 
 E/AndroidRuntime:     at Android.app.ActivityThread.main(ActivityThread.Java:5069) 
 E/AndroidRuntime:     at Java.lang.reflect.Method.invokeNative(Native Method) 
 E/AndroidRuntime:     at Java.lang.reflect.Method.invoke(Method.Java:511) 
 E/AndroidRuntime:     at com.Android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.Java:793) 
 E/AndroidRuntime:     at com.Android.internal.os.ZygoteInit.main(ZygoteInit.Java:560) 
 E/AndroidRuntime:     at dalvik.system.NativeStart.main(Native Method) 

Ich bin wirklich verwirrt, was es sein kann, ich lese und kann den Fehler nicht finden:

Meine App: gradle ist das:

apply plugin: 'com.Android.application'

Android {



    compileSdkVersion 23
    buildToolsVersion "24.0.2"




    defaultConfig {

        applicationId "me.me2.com.myapp"
        minSdkVersion 15
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"




    }

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






}
dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile 'com.Android.support:appcompat-v7:23.4.0'
    compile 'com.Android.support:design:23.4.0'
    compile 'com.Android.support:recyclerview-v7:23.4.0'
    compile 'com.Android.support:cardview-v7:23.4.0'


    compile 'com.google.firebase:firebase-storage:9.4.0'
    compile 'com.google.firebase:firebase-database:9.4.0'
    compile 'com.google.firebase:firebase-auth:9.4.0'
    compile 'com.firebaseui:firebase-ui-database:0.4.4'


    compile 'com.squareup.picasso:picasso:2.5.2'





}

apply plugin: 'com.google.gms.google-services'

Hier ist mein Stilordner:

<resources>

    <!-- Base application theme. -->
    <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
    </style>
    <style name="AppTheme.NoActionBar">
        <item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>
    </style>
    <style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" />
    <style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" />

    <style name="Divider">
        <item name="Android:layout_width">match_parent</item>
        <item name="Android:layout_height">1dp</item>
        <item name="Android:background">?android:attr/listDivider</item>
    </style>

</resources>

Und meine mainactivity.class bei Bedarf:

public class MainActivity extends AppCompatActivity {

    VideoView videoView;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);


        // VideoView

        videoView = (VideoView) findViewById(R.id.videoview);
        videoView.setVideoURI(Uri.parse("Android.resource://"+getPackageName() + "/" +R.raw.video));
        videoView.requestFocus();

        /**
         * Loop
         */
        videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
            @Override
            public void onPrepared(MediaPlayer mp) {
                videoView.start();
                mp.setLooping(true);

            }
        });




    }


    public void Login(View view) {
        Intent intent = new Intent(this, FragmentMain.class); 
        startActivity(intent);

       // finish();

    }

    public void Registro(View view) {
        Intent intent = new Intent(this, Registro.class);
        startActivity(intent);
    }





    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_main, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();

        //noinspection SimplifiableIfStatement
        if (id == R.id.action_settings) {
            return true;
        }

        return super.onOptionsItemSelected(item);
    }
}

Vielen Dank.

25
user6099735

Wenn Sie das Gradle Plugin 2.0 verwenden, müssen Sie Änderungen an Ihrer gradle vornehmen:

// Gradle Plugin 2.0+  
 Android {  
   defaultConfig {  
     vectorDrawables.useSupportLibrary = true  
    }  
 }  

Wenn Sie Gradle 1.5 verwenden, verwenden Sie anstelle von previus:

// Gradle Plugin 1.5  
 Android {  
   defaultConfig {  
     // Stops the Gradle plugin's automatic rasterization of vectors
     generatedDensities = []  
  }  
  // Flag to tell aapt to keep the attribute ids around
  // This is handled for you by the 2.0+ Gradle Plugin  
  aaptOptions {  
    additionalParameters "--no-version-vectors"  
  }  
 }  

Überprüfen Sie auch: Aktualisieren Sie die Android Support Library auf 23.2.0 - Fehler: XmlPullParserException Binary XML-Dateizeile # 17 <vector> -Tag erfordert viewportWidth> 0 .

Android Support Library Ref .: Support Vector Drawables und Animated Vector Drawables .

Aktualisieren Sie auch die Android Support-Abhängigkeiten von 

compile 'com.Android.support:appcompat-v7:23.4.0'
compile 'com.Android.support:design:23.4.0'
compile 'com.Android.support:recyclerview-v7:23.4.0'
compile 'com.Android.support:cardview-v7:23.4.0'

zu

compile 'com.Android.support:appcompat-v7:24.2.0'
compile 'com.Android.support:design:24.2.0'
compile 'com.Android.support:recyclerview-v7:24.2.0'
compile 'com.Android.support:cardview-v7:24.2.0'

da Sie bereits Build-Tools in der Version von 24.0.2 verwenden.

22
piotrek1543

Wenn eine der anderen Lösungen nicht funktioniert, können Sie diese Zeile in Ihre Aktivität einfügen

static {
    AppCompatDelegate.setCompatVectorFromResourcesEnabled(true);
}

und natürlich aktualisieren sie ihr gradle und appcompat auf die neuesten versionen. Das hat in meinem Fall funktioniert.

21
ashraful

Nichts davon hat für mich gearbeitet. Aber das tat:

Veränderung 

Android:src="@drawable/your_drawable"

zu 

app:srcCompat="@drawable/your_drawable"

8
ono

Ich habe dieses Problem in Xamarin.Android mit Xamarin.Android.Support.Design 24.0.2 entdeckt. So habe ich es gelöst:

Die folgende Zeile wurde meiner Anwendungsklasse OnCreate hinzugefügt:

AppCompatDelegate.CompatVectorFromResourcesEnabled = true;

Ersetzt:

var upArrow = ContextCompat.GetDrawable(this, Resource.Drawable.abc_ic_ab_back_material);

Mit: 

var upArrow = ResourcesCompat.GetDrawable(Resources, Resource.Drawable.abc_ic_ab_back_material, null);
6
pnavk

Da diese Seite das erste Ergebnis von Google Android.content.res.Resources$NotFoundException: File res/drawable/ ist, möchte ich mitteilen, dass diese Ausnahme durch Ihre foo.xml verursacht werden könnte, die einen falschen Code enthält.

z.B. foo.xml:

<layer-list xmlns:Android="http://schemas.Android.com/apk/res/Android">

    <item Android:id="@Android:id/background">
        <shape>
            <size Android:height="@Android:style/Widget.ProgressBar.Horizontal" />
            <corners Android:radius="5dip" />
            <gradient
                Android:startColor="#000000"
                Android:centerY="0.75"
                Android:angle="270"
                />
        </shape>
    </item>
</layer-list>

Diese XML-Datei enthält <size Android:height="@Android:style/Widget.ProgressBar.Horizontal" />, der erfolgreich kompiliert wurde, zur Runtime jedoch eine Ausnahme auslöst, je nach App.

4
林果皞

verwenden Sie diese Option in Ihrer Aktivität: 

public class MainActivity extends AppCompatActivity {
    static {
        AppCompatDelegate.setCompatVectorFromResourcesEnabled(true);
     }
  ...
}

und das in deinem build.gradle: 

Android {
    ...

     defaultConfig {
         ....
         vectorDrawables.useSupportLibrary = true
    }

}

und in deiner XML: 

app:srcCompat="@drawable/your_icon"
1
AissaDevLab

Ich hatte dieses Problem.

Fügen Sie in Ihrer Anwendungsklasse in der Methode onCreate () Folgendes hinzu:

AppCompatDelegate.setCompatVectorFromResourcesEnabled(true);

... und verwenden Sie statt ImageView auch AppCompatImageView.

Beispiel: BaseApplication.class:

public class BaseApplication extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        //Your other code here...
        AppCompatDelegate.setCompatVectorFromResourcesEnabled(true);
    }
}

XML:

<androidx.appcompat.widget.AppCompatImageView
        Android:id="@+id/yourIvId"
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content" />
1
AceStan

Nicht speziell auf Ihre Frage bezogen, kann aber möglicherweise dieses Problem für alle lösen, die sich hier auf der Suche nach diesem Fehler befinden.

Für mich war das Problem mit der SVG-Datei, die ich in mein Projekt importiert habe. Einer der Pfade in XML hat pathData leer, was bei einigen Geräten wie Pixel XL, Samsung Galaxy S7, ...

Überprüfen Sie also das importierte XML-Dokument für ein Bild, wenn Sie SVG als Bildquelle verwenden.

1
BVantur

Ok, ich habe gerade mein Problem gelöst, das Problem war mein veralteter Gradle und mein Sdk. Wenn also jemand mit diesem Problem läuft, führen Sie einfach diese Schritte aus 

1.- Vergewissern Sie sich, dass Ihre Bibliotheken aktualisiert sind. Piotrek1543 sagt oben 2.- Aktualisieren Sie Ihre SDK, falls dies erforderlich ist 3.- Aktualisieren Sie Ihre Abstufungsdateien (SEHR WICHTIG) .__ diese 

classpath 'com.Android.tools.build:gradle:2.1.0'

dann gehen Sie zu Ihrem App-Projekt> app> graddle> graddlewrapper.properties und fügen Sie hinzu 

distributionUrl=https://services.gradle.org/distributions/gradle-2.10-all.Zip

4.- ändern Sie compileSdkVersion in 24 und Ihre buildToolsVersion "24.0.2" ( STELLEN SIE SICHER, DASS DIE ABHÄNGIGKEITEN AUF DEM DATUM MIT DEM SDK SIND )

Habe Spaß

1
user6099735

Ich habe alle oben genannten Lösungen ausprobiert. Nichts hat für mich funktioniert. Das einzige, was für mich funktioniert hat, ist sehr einfach, alle Unterstützungsbibliotheken auf die neueste Version zu aktualisieren, da dieser Fehler behoben wurde. Also habe ich einfach die unten stehende Sache in Gradle-Datei gemacht; SDK und Support auf 25 aktualisiert. 

Android {
    compileSdkVersion 25
    buildToolsVersion "25"
  defaultConfig {
        targetSdkVersion 25
   }

}
In dependencies 

    compile 'com.Android.support:appcompat-v7:25.1.0'
    compile 'com.Android.support:design:25.1.0'
    compile 'com.Android.support:recyclerview-v7:25.1.0'
1
Googler

in meinem Fall enthielt das XML Android:endX, das 24 unterstützt.

0
sajad abbasi

Wenn Sie in Ihrem Drawable ?attr Verwenden, kann dies der Grund für einen Fehler sein.

erwägen Sie, es durch Vector Drawable zu ersetzen, damit es in allen Android Versionen verwendet werden kann:

Ersetzen

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:Android="http://schemas.Android.com/apk/res/Android">
    <item>
        <shape Android:shape="rectangle">
            <solid Android:color="?attr/navigationIconColor" />
        </shape>
    </item>
</selector>

Mit:

<vector xmlns:Android="http://schemas.Android.com/apk/res/Android"
    Android:width="37dp"
    Android:height="5dp"
    Android:viewportWidth="37"
    Android:viewportHeight="5">
  <path
      Android:pathData="M2.5,0h32C35.9,0 37,1.1 37,2.5l0,0C37,3.9 35.9,5 34.5,5h-32C1.1,5 0,3.9 0,2.5l0,0C0,1.1 1.1,0 2.5,0z"
      Android:fillColor="?attr/navigationIconColor"/>
</vector>

0
Morteza Rastgoo

Ändern der Kotlin-Stdlib-Abhängigkeit von:

implementation "org.jetbrains.kotlin:kotlin-stdlib-jre7:1.2.0"to

implementation "org.jetbrains.kotlin:kotlin-stdlib:1.2.0" hat den Fehler behoben.

0
vovahost