Vous avez obtenu l'erreur ci-dessus après avoir téléchargé la version de prévisualisation L dans Android Studio
, quand mon projet avait minSdkVersion
19.
De plus, lorsque vous définissez mindSdkVersion
comme ci-dessous:
defaultConfig {
....
minSdkVersion 'L'
....
}
J'ai des dizaines d'erreurs comme ci-dessous, concernant les ressources de AppCompat-v7-21
:
/home/user/workspace/project/build/intermediates/exploded-aar/com.Android.support/appcompat-v7/21.0.0-rc1/res/values-v21/values.xml
Error:Error retrieving parent for item: No resource found that matches the given name '@Android:TextAppearance.Material.SearchResult.Subtitle'.
J'ai donc 2 questions:
compileSdkVersion 'Android-L'
BOOM. Terminé.
LAST EDIT: À partir de Android 5.0, ce n'est plus un problème, il vous suffit de cibler directement le niveau 21 de l'API.
Éditer pour plus de clarté: En effet, comme David_E l’a spécifié ci-dessous, cette solution ne fonctionne que pour la version L; si vous essayez de déployer l’application sur un appareil situé au-dessous de L (ex <= 4.4.4), elle se plaindra de OLD_SDK. . Pour que l'application fonctionne pré-L, vous devez toujours utiliser l'ancien support v20 lib + app compat + targetVersionSdk et compileVersionSdk.
dependencies {
compile 'com.Android.support:appcompat-v7:20.+'
compile 'com.Android.support:support-v4:20.+'
}
Android {
compileSdkVersion 20
buildToolsVersion '20'
defaultConfig {
applicationId "com.example.application"
minSdkVersion 10
targetSdkVersion 20
versionCode 1
versionName "1.0"
}
}
La réponse indiquée ici risque de ne pas fonctionner correctement, car votre application ne fonctionnera que pour Android L.
Afin de conserver la compatibilité avec les versions antérieures Android du système d'exploitation, modifiez la dépendance de gradle
De:
compile 'com.Android.support:appcompat-v7:+'
À:
compile 'com.Android.support:appcompat-v7:20.+'
Notez que l'erreur se plaint de com.Android.support:appcompat-v7:21.0.0-rc1
, la raison en est que l'utilisation de appcompat-v7:+
indiquera à gradle d’importer la dernière dépendance du appcompat-v7
bibliothèque, malheureusement, cette dernière version ne fonctionne que pour Android L, nous devons donc pointer vers une version précédente.
Espérons que Google corrigera ce problème dans un avenir proche.
Pour forcer le travail avec une version de travail, il suffit de changer les dépendances de gradle comme ceci:
dependencies {
compile 'com.Android.support:gridlayout-v7:19.0.1'
compile 'com.Android.support:appcompat-v7:19+'
...
}
était:
compile 'com.Android.support:appcompat-v7:+'
N.B.
J'ai mis à jour Tools & Extras dans le gestionnaire de SDK.
après que le projet ait été interrompu, je l'ai corrigé comme indiqué ci-dessus.
Pour l'instant je ne mets pas à jour Android L & 4.4W (assez de bugs pour aujourd'hui :-())
La façon dont cela a fonctionné pour moi a été d'installer Android Studio Beta (version non disponible, la version bêta a été lancée aujourd'hui dans le cadre d'IO).
Désinstallez la version d’aperçu, installez la version bêta et ouvrez votre projet. Il vous demandera d'utiliser le projet SDK ou Studio SDK, utilisez Android SDK de Studio.
Accédez au fichier local.properties de votre projet et sur lequel vous avez sdk.dir, assurez-vous que toutes les barres obliques inverses () sont doublées. \.
Allez dans Structure du projet> SDK et assurez-vous que cela pointe vers le Android SDK sur mon PC, il s'agissait de C:\Program Files (x86)\Android\android-studio\SDK.
Ensuite, dans vos projets et dans toutes les bibliothèques, vous avez des fichiers build.gradle où vous avez
compile 'com.Android.support:support-v4
Modifiez-le en compile 'com.Android.support:support-v4:20+
Resync les fichiers de gradle et tous corrigés
Merci David pour ta réponse!
Je devais changer
compile 'com.Android.support:support-v13:+'
À:
compile 'com.Android.support:support-v13:20.+'
Et tout fonctionne parfaitement maintenant.
Juste en plus: Les autres réponses ici ne résolvent pas le problème pour moi, mais j’ai trouvé un autre moyen de résoudre le problème d’Android-l sur Android Studio 0.8.0. Après avoir modifié le dépendances dans le build.gradle, le problème malheureusement gardé, que le code dirait OLD_SKD.J’utilise un Galaxy S2.
En plus de changer tous choses à: 19+:
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.Android.support:appcompat-v7:19+'
compile 'com.Android.support:support-v4:19+'
compile 'com.google.Android.gms:play-services:+'
compile 'com.Android.support:mediarouter-v7:19+'
}
Cela ne fonctionnerait toujours pas, alors je devais revenir partout où c'était possible:
Android {
compileSdkVersion 19
buildToolsVersion '19.1'
defaultConfig {
minSdkVersion 11
targetSdkVersion 19
versionCode 1
versionName '1.0'
}
Maintenant, l'application fonctionne à nouveau sur le téléphone. Je devrais probablement me procurer un nouveau mobile, mais pour l'instant, j'espère que cela pourra aider quelqu'un.