Ceci est le fichier Java qui donne l'erreur
package com.example.daksh.timetable;
import Android.support.v7.app.AppCompatActivity;
import Android.os.Bundle;
import Android.view.View;
import Android.widget.Button;
import Android.widget.ImageView;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final Button mon_but,tue_but,wed_but,thur_but,fri_but;
mon_but = (Button)findViewById(R.id.mon);
tue_but = (Button)findViewById(R.id.tue);
wed_but = (Button)findViewById(R.id.wed);
thur_but = (Button)findViewById(R.id.thur);
fri_but = (Button)findViewById(R.id.fri);
final ImageView main_Image = (ImageView) findViewById(R.id.day);
final int[] dayarray = {R.drawable.monday,R.drawable.tuesday,R.drawable.wednesday,R.drawable.thursday, R.drawable.friday};
mon_but.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
main_Image.setImageResource(dayarray[0]);
}
});
tue_but.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
main_Image.setImageResource(dayarray[1]);
}
});
wed_but.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
main_Image.setImageResource(dayarray[2]);
}
});
thur_but.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
main_Image.setImageResource(dayarray[3]);
}
});
fri_but.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
main_Image.setImageResource(dayarray[4]);
}
});
}
}
Les erreurs que je reçois sont les suivantes
Information: Gradle tâches [nettoyer,: app: assembleDebug] C:\Projects\TimeTable\app\src\main\res\layout\activity_main.xml Erreur: erreur: ressource Android: attr/colorSwitchThumbNormal est privé . Erreur: ressource Android: attr/colorSwitchThumbNormal est privé . C:\Projects\TimeTable\app\src\main\res\layout-land\activity_main.xml Erreur: erreur: ressource Android: attr/colorSwitchThumbNormal est privé . Erreur: ressource Android: attr/colorSwitchThumbNormal est privé . Erreur: échec de la liaison des ressources de fichier . Erreur: Java.util.concurrent.ExecutionException: Java.util.concurrent.ExecutionException: com.Android.tools.aapt2.Aapt2Exception: erreur AAPT2: consultez les journaux pour plus d'informations Erreur: Java.util.concurrent.ExecutionException: com.Android.tools.aapt2.Aapt2Exception: erreur AAPT2: consultez les journaux pour plus de détails Erreur: com.Android.tools.aapt2.Aapt2Exception: erreur AAPT2: consultez les journaux pour plus de détails Erreur: L'exécution a échoué pour la tâche ': app: processDebugResources' . Impossible d'exécuter aapt Information: ÉCHEC DE LA CONSTRUCTION dans 9s Information: 9 erreurs Information: 0 avertissements Information: Voir la sortie complète dans la console
Ceci est le fichier Activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<Android.support.constraint.ConstraintLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:app="http://schemas.Android.com/apk/res-auto"
xmlns:tools="http://schemas.Android.com/tools"
Android:id="@+id/activity_main"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:background="@drawable/background"
Android:paddingBottom="16dp"
Android:paddingLeft="16dp"
Android:paddingRight="16dp"
Android:paddingTop="16dp"
tools:context=".MainActivity">
<ImageView
Android:id="@+id/day"
Android:layout_width="0dp"
Android:layout_height="0dp"
Android:layout_marginBottom="8dp"
Android:layout_marginEnd="8dp"
Android:layout_marginStart="8dp"
Android:layout_marginTop="16dp"
Android:contentDescription="TODO"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/guideline_dayselection"
app:layout_constraintHorizontal_bias="0.519"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="@+id/guideline2"
app:layout_constraintVertical_bias="0.472"
app:srcCompat="@drawable/monday" />
<TextView
Android:id="@+id/textView"
style="@style/Widget.AppCompat.TextView.SpinnerItem"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:layout_marginTop="4dp"
Android:fontFamily="serif"
Android:text="@string/message"
Android:textColor="?android:attr/colorSwitchThumbNormal"
Android:textSize="18sp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<Button
Android:id="@+id/mon"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_marginBottom="16dp"
Android:layout_marginStart="16dp"
Android:layout_marginTop="50dp"
Android:text="@string/monday"
app:layout_constraintBottom_toTopOf="@+id/tue"
app:layout_constraintStart_toStartOf="@+id/guideline_dayselection"
app:layout_constraintTop_toTopOf="parent" />
<Button
Android:id="@+id/tue"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_marginBottom="16dp"
Android:layout_marginStart="16dp"
Android:text="@string/tuesday"
app:layout_constraintBottom_toTopOf="@+id/wed"
app:layout_constraintStart_toStartOf="@+id/guideline_dayselection"
app:layout_constraintTop_toBottomOf="@id/mon" />
<Button
Android:id="@+id/wed"
Android:layout_width="88dp"
Android:layout_height="48dp"
Android:layout_marginBottom="16dp"
Android:layout_marginStart="16dp"
Android:text="@string/wednesday"
app:layout_constraintBottom_toTopOf="@+id/thur"
app:layout_constraintStart_toStartOf="@+id/guideline_dayselection"
app:layout_constraintTop_toBottomOf="@id/tue" />
<Button
Android:id="@+id/thur"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_marginBottom="16dp"
Android:layout_marginStart="16dp"
Android:text="@string/thursday"
app:layout_constraintBottom_toTopOf="@+id/fri"
app:layout_constraintStart_toStartOf="@+id/guideline_dayselection"
app:layout_constraintTop_toBottomOf="@id/wed" />
<Button
Android:id="@+id/fri"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_marginBottom="8dp"
Android:layout_marginStart="16dp"
Android:text="@string/friday"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="@+id/guideline_dayselection"
app:layout_constraintTop_toBottomOf="@id/thur" />
<Android.support.constraint.Guideline
Android:id="@+id/guideline_dayselection"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:orientation="vertical"
app:layout_constraintGuide_end="196dp" />
<Android.support.constraint.Guideline
Android:id="@+id/guideline2"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:orientation="horizontal"
app:layout_constraintGuide_percent="0.15339233" />
</Android.support.constraint.ConstraintLayout>
Vous avez peut-être cette erreur sur vos fichiers Java
car il existe un ou plusieurs fichiers XML
avec une erreur.
Parcourez tous vos fichiers XML
et résolvez les erreurs, puis le projet clean
ou rebuild
à partir du menu de construction
Commencez avec votre fichier XML
édité le plus récent
Si quelqu'un qui lit ceci a le même problème, c'est ce qui m'est arrivé récemment et c'est dû à l'écriture de l'en-tête xml deux fois par erreur:
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?> <!-- Remove this one -->
<shape xmlns:Android="http://schemas.Android.com/apk/res/Android">
<solid Android:color="@color/mug_blue"/>
<corners Android:radius="@dimen/featured_radius" />
</shape>
L’erreur que j’entendais n’était absolument pas liée à ce fichier, donc c’était difficile à trouver. Assurez-vous simplement que tous vos nouveaux fichiers xml ne comportent pas d'erreur de ce type (car cela ne s'affiche pas comme une erreur).EDITIl semble que cela apparaisse comme une erreur maintenant, assurez-vous de vérifier vos journaux d'erreurs.
Regardez l'erreur que vous obtenez:
C:\Projects\TimeTable\app\src\main\res\layout-land\activity_main.xml Erreur: erreur: ressource Android: attr/colorSwitchThumbNormal est privé.
Cela signifie que vous faites référence à la couleur "Android: colorSwitchThumbNormal" dans le fichier activity_main.xml, mais qu'à l'intérieur de l'espace de noms 'Android', cette ressource est privée. Ce que vous vouliez probablement faire, c’est essayer de référencer cette couleur à partir de la version prise en charge de cet attribut, donc sans le préfixe "Android:".
<item name="Android:colorSwitchThumbNormal">@color/myColor</item>
Remplacer par:
<item name="colorSwitchThumbNormal">@color/second</item>
Il s’agit d’un erreur xml pour une raison quelconque peut être dû à la suppression d’une vue ou d’une chaîne dans une autre vue ou peut-être pour manquant "ou /> ..... etc
Mais ici, je me sers d’un bonne technique pour comprendre où se trouve exactement le problème: -
Je sais que ce n'est pas la solution du problème principal, mais cela vous permettra de trouver rapidement où est l'erreur et de gagner du temps.
Pour être plus générique sur la réponse fournie par @P Fuster . Il peut y avoir une erreur dans vos fichiers xml.
J'ai rencontré la même erreur et il y avait une erreur dans le dessin où la balise de fin était manquante.
Ceci est une erreur avec votre fichier XML. Si logcat ne peut pas localiser l'erreur avec un message de journal convivial portant le nom du fichier xml, essayez de nettoyer le projet et de le reconstruire. Cela a fonctionné pour moi.
Dans l'onglet Construction, vous obtiendrez un nœud nommé Problèmes Android. Le message d'erreur est en dessous.
J'ai ce problème.Le problème principal est que j'ai ajouté un attribut à un BottomAppBar
dans le fichier xml
.J'ai trouvé un message d'erreur dans la section de construction inférieure d'Android, qui explique que l'erreur a remplacé l'attribut et que tout était ok. Pour les autres qui ont la même erreur mais ma solution ne va pas avec eux, vous devez lire le message d'erreur qui vous guidera vers le point douloureux.
Parfois, il arrive ce que vous copiez le code coller d'un autre projet, par exemple, vous copiez
<Android.support.design.widget.NavigationView
Android:id="@+id/nav_view"
Android:layout_width="256dp"
Android:layout_height="match_parent"
Android:layout_gravity="start"
Android:background="@Android:color/white"
Android:fitsSystemWindows="true"
app:headerLayout="@layout/nav_header_main"
app:itemTextColor="@color/colorDrawerItems"
app:menu="@menu/activity_main_drawer" />
Malheureusement, Android studio ne montre pas toujours d'erreur de dépendance, mais il se trouve que la classe NavigationView
est manquante car implementation 'com.Android.support:design
n'est pas ajouté au projet
Cette erreur similaire peut également indiquer si vous avez précédemment supprimé un fichier Java d'activité et que vous n'avez pas supprimé le fichier de présentation XML correspondant.
Supprimez le fichier XML du fichier Java d'activité supprimé et nettoyez ou reconstruisez le projet.
La raison derrière cela peut être à cause de l'inadéquation du contexte dans le fichier XML. (Cela peut se produire si vous copiez-collez un code de présentation XML.) Faites correspondre les outils: context au fichier Java de l'activité.
Cela peut également se produire si vous laissez un élément avec un attribut null ou vide dans votre fichier de présentation XML, sinon si le chemin de création de votre fichier Java, tel que la spécification d'un ID incorrect pour l'objet
ici frombottom= AnimationUtils.loadAnimation(this,R.anim);
dans lequel anim. l'identifiant ou le nom du fichier laissé vide peut conduire à un tel problème.
Une erreur est associée à un problème avec le fichier .xml. Ouvrez manuellement chaque fichier au format XML pour vérifier l’erreur. J'ai eu le même problème. A dû ouvrir manuellement chaque fichier. Une erreur s'est produite lors de l'appel @string.
Je faisais Temperatur Converter App.Je faisais face à la même erreur lors de l'exécution de l'application en tant que: La liaison entre Android Studio a échoué . Cela s'est bien passé sans aucune erreur.
Avant correction
<resources>
<color name="myColor">#FFE4E1</color>
<string name="Celsius">To Celsius</string>
<string name="Fahrenheit">To Fahrenheit</string>
<string name="calc">Calculate</string>
</resources>
Après édition:
<resources>
<string name="app_name">Temp Converter</string>
<color name="myColor">#FFE4E1</color>
<string name="Celsius">To Celsius</string>
<string name="Fahrenheit">To Fahrenheit</string>
<string name="calc">Calculate</string>
</resources>
Cela se produit parfois lorsque vous avez un fichier XML aléatoire qui ne fait rien. Supprimer le fichier résout le problème.
Vérifiez dans vos fichiers XML
la résolution des erreurs. La plupart du temps, les modifications apportées à vos fichiers XML
sont affectées. Essayez de vérifier les dernières modifications apportées.
Essayez de nettoyer votre projet .... ça marche
Bonne codage :)