16

Ich habe Probleme zu verstehen, das Versionsschema der Support-Bibliotheken und wann zu welcher Version zu verwenden. Zurzeit habe ich ein Projekt mit compileSdkVersion 21, minSdkVersion 21 und targetSdkVersion 21 und möchte die Android-Design-Support-Bibliothek verwenden. Als ich com.android.support:design:22.2.0 das Projekt kompiliert verwenden, aber ich erhalte eine Warnung Gradle:Design-Support-Bibliothek - Welche Version mit SDK V21 verwenden

"This support library should not use a different version (22) than the `compileSdkVersion` (21)". 

Als ich com.android.support:design:23.0.1 Ich benutze Kompilierungsfehlern wie erhalten:

"Error:(2) Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Inverse'. 

Ich dachte, ich die höchste Version immer verwenden können die Support-Bibliotheken, solange die compileSdkVersion ist niedriger oder gleich, aber das scheint falsch.

Kann ich die Design-Support-Bibliothek beim Kompilieren mit API-Level 21 verwenden?

+0

Sie nur Versionen bis einschließlich Ihrer 'compileSdkVersion', in Ihrem Fall so 21 verwenden können –

Antwort

23

Die Support-Bibliothek sollte immer mit compileSdkVersion übereinstimmen, auch wenn targetSdkVersion oder minSdkVersion niedriger sind. Wenn Sie die Design-Bibliothek verwenden möchten, müssen Sie compileSdkVersion auf mindestens 22 und Bibliotheksversion 22.2.0 setzen.

Der Grund dafür ist einfach. Die Version der Bibliothek spiegelt die Version der Android-SDK wider, die erstellt wurde. Wenn Sie versuchen, eine höhere Version der Support-Bibliothek als die compileSdkVersion zu verwenden, findet es möglicherweise keine Ressourcen, die in einer späteren Version hinzugefügt wurden.

19

können Sie eine davon verwenden:

//You have to use compileSdkVersion=22 
compile 'com.android.support:design:22.2.0' 
compile 'com.android.support:design:22.2.1' 

//You have to use compileSdkVersion=23 
compile 'com.android.support:design:23.3.0' 
compile 'com.android.support:design:23.2.1' 
compile 'com.android.support:design:23.2.0' 
compile 'com.android.support:design:23.1.1' 
compile 'com.android.support:design:23.1.0' 
compile 'com.android.support:design:23.0.1' 
compile 'com.android.support:design:23.0.0' 

Die Design-Bibliothek Abhängigkeit hat mit appcompat-v7-Bibliothek.
Sie können nicht die v23.0.x Version verwenden, um mit api Kompilieren 22 (es ist der Grund von "Error:(2) Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Inverse' ist.

Auch, weil die erste Version der Design-Bibliothek 22 ist, Sie können nicht verwenden compileSdk = 21

+1

wo kann ich alle Versionen für bestimmte Support-Bibliothek sehen –

+1

@BharatDodeja Hier die vollständige Liste:..? http : //developer.android.com/tools/support-library/index.html –

Verwandte Themen