简体   繁体   中英

Compilation error in android studio after an update

I began to make an android app on android studio with my poor knowledge about Java and arrived to something that's working. I took a few months to focus on my studies and now I'm trying to build my app after an android studio update. But it didn't work : they're is a gradle issue, something that I never experienced before (all my exceptions came of my code before).

That's my logs:

Main error description

在此处输入图片说明

An example of an error in the log:

在此处输入图片说明

I don't understand... I tried to replace \\' by \' , but nothing changed.
I have no idea what's happening now

I probably should clarify that the issue is in an XML file. The strings.xml file where all the text must be written.

update : here's my strings.xml file

<resources>
        <string name="app_name">LG app</string>
        <string name="string_appTitle">Loup Garou app</string>
        <string name="String_choisirMode">Choisissez votre mode</string>
        <string name="mode_normal_String">Mode normal</string>
        <string name="mode_custom_String">Mode custom</string>
        <string name="description_bouton_custom_String">bouton avec l\'image de clé à molette pour partie custom</string>
        <string name="description_bouton_normal_String">Bouton avec une image de loup menant à une partie avec les pré-réglages du loup garou normal</string>
        <string name="description_normal_String">Le jeu, déjà réglé par nos soins pour une partie sans prise de tête. Choisissez vos extensions et le nombre de joueur et c\'est parti !</string>
        <string name="description_custom_String">Ici c\'est pas pour les débutants. Le nombre de cartes n\'est pas limité et vous pouvez faire les meilleures comme les pires parties. Régalez vous comme vous voulez mais ne cassez pas tout !</string>
        <string name="description_master_String">Tu veux être Maitre Du Jeu mais tu as peur d\'oublier des cartes, c\'est ce mode qu\'il faut choisir ! Tu nous dis quelles cartes tu as pris et on s\'occupe de te rappeler l\'ordre pendant que tu ambiances le jeu avec ta belle voix.</string>
        <string name="master_description_String">Image d\'un vieux man pour le bouton qui mène vers le guide MJ</string>
        <string name="mode_mj_String">Mode MJ</string>
        <string name="mode_workInProgress_String">On bosse !</string>
        <string name="description_workInProgress_String">On essaye de vous trouver plein de trucs à ajouter mais ça prend du temps ! On vous montre ça dès que c\'est fini, ne vous inquietez pas</string>
        <string name="description_buttonn_workInProgress_String">Image de plot de chantier sur un bouton, ça mène à rien mais c\'est pour montrer le travail en cours</string>
        <string name="tab_text_1">Tab 1</string>
        <string name="tab_text_2">Tab 2</string>
    
        <string name="afficheurDescriptionCarte">Touchez les cartes pour en avoir une explication</string>
        <string name="vanille_String">Vanille</string>
        <string name="nouvelle_lune_String">Nouvelle lune</string>
        <string name="village_String">Village</string>
        <string name="personnages_String">Personnages</string>
        <string name="pacte_String">Tout (le Pacte)</string>
        <string name="sélection_String">Sélectionner</string>
    
        <string name="loup_garou">Loup Garou</string>
        <string name="simple_villageois">Simple Villageois</string>
        <string name="voyante">Voyante</string>
        <string name="chasseur">Chasseur</string>
        <string name="petite_fille">Petite Fille</string>
        <string name="cupidon">Cupidon</string>
        <string name="sorci_re">Sorcière</string>
        <string name="voleur">Voleur</string>
        <string name="salvateur">Salvateur</string>
        <string name="idiot">Idiot du village</string>
        <string name="bouc">Bouc émissaire</string>
        <string name="ancien">Ancien</string>
        <string name="flute">Joueur de flute</string>
        <string name="lblanc">Loup Blanc</string>
        <string name="corbeau">Corbeau</string>
        <string name="grand_m_chant_loup">Grand méchant loup</string>
        <string name="enfant_sauvage">Enfant sauvage</string>
        <string name="renard">Renard</string>
        <string name="servante_d_vou_e">Servante dévouée</string>
        <string name="trois_fr_res">Trois frères</string>
        <string name="montreur_d_ours">Montreur d\'ours</string>
        <string name="com_dien">Comédien</string>
        <string name="chevalier_l_p_e_rouill_e">Chevalier à l\'épée rouillée</string>
        <string name="soeurs">soeurs</string>
        <string name="ange">Ange</string>
        <string name="abominable_sectaire">Abominable sectaire</string>
        <string name="juge_b_gue">Juge bègue</string>
        <string name="infect_p_re_des_loups">Infect père des loups</string>
        <string name="chien_loup">Chien-Loup</string>
        <string name="villageois_villageois">Villageois-Villageois</string>
        <string name="gitane">Gitane</string>
        <string name="troubadour">Troubadour</string>
    
        <string name="bouton_desc_snack">bouton pour afficher une description de la carte</string>
    
    
        <string-array name="quatreCartes">
            <item>0 Cartes</item>
            <item>1 Carte</item>
            <item>2 Cartes</item>
            <item>3 Cartes</item>
            <item>4 Cartes</item>
        </string-array>
    
        <string-array name="treizeCartes">
            <item>0 Cartes</item>
            <item>1 Carte</item>
            <item>2 Cartes</item>
            <item>3 Cartes</item>
            <item>4 Cartes</item>
            <item>5 Cartes</item>
            <item>6 Cartes</item>
            <item>7 Cartes</item>
            <item>8 Cartes</item>
            <item>9 Cartes</item>
            <item>10 Cartes</item>
            <item>11 Cartes</item>
            <item>12 Cartes</item>
            <item>13 Cartes</item>
        </string-array>
    
    
        <string name="valeurDefautNbJoueurs">8</string>
    
    
        <string name="descriptionRoleLG">Le loup garou normal, qui se concerte avec les autres pour manger une fois par nuit </string>
        <string name="descriptionRoleVillgeois">Totalement inutile, le villageois se contente de voter </string>
        <string name="descriptionRoleVovo">La voyante peut regarder la carte de quelqu\'un toutes les nuits </string>
        <string name="descriptionRoleVoleur">Le voleur peut choisir une des 2 cartes au milieu du cercle. Les autres villageois n\'auront conaissance que du rôle non-choisi </string>
        <string name="descriptionRoleChasseur">Le chasseur peut emporter quelqu\'un d\'autre avec lui quand il meurt </string>
        <string name="descriptionRoleCupidon">Cupidon met 2 personnes en couple (il peut l\'être aussi). Si un amoureux meurt, le deuxième le suit </string>
        <string name="descriptionRoleSorcière">La soricère a 2 pouvoirs : tuer ou soigner. Elle n\'a qu\'une utilisation pour chaque sort</string>
        <string name="descriptionRolePetiteFille">La petite fille peut tricher la nuit en observant le vote des loups</string>
        <string name="descriptionRoleSalvateur">Le salvateur peut protéger une personne de la morsure des Loups (pas 2 nuits de suite). C\'est inefficace sur la petite fille et la personne empoisonnée par la sorcière</string>
        <string name="descriptionRoleIdiot">L\'idiot est invulnérable au vote du village. Si il est voté il se révèle et rien ne se passe</string>
        <string name="descriptionRoleBouc">Si le vote du village mène à une égalitée. Le bouc émissaire meurt. À lui d\'éviter que cela arrive</string>
        <string name="descriptionRoleAncien">L\'ancien résiste une fois à la morsure des loups (ne pas révéler pourquoi il survit). Si il est victime du vote, de la sorcière ou du chasseur, tous les villageaois perdent leur pouvoir</string>
        <string name="descriptionRoleFlute">Le Joueur de flute est seul. Toute les nuits il charme 2 joueurs puis on réveille TOUS les joueurs charmés. Si tous les joueurs sont charmés alors le joueur de flute gagne</string>
        <string name="descriptionRoleLoupBlanc">Le loup blanc est solitaire. Il se réveille une deuxième fois après le vote des loups pour croquer un confrère (s\'il le souhaite)</string>
        <string name="descriptionRoleCorbeau">Le corbeau choisi quelqu\'un toutes les nuits. Ce joueur a 2 voix contre lui pour le vote du jour</string>
        <string name="descriptionRoleEnfant">L\'enfant sauvage choisit un joueur en tout début de partie. Si ce joueur meurt il rejoins les loups</string>
        <string name="descriptionRoleRenard">Il désigne 3 joueurs cote à cote. Si l\'un d\'entre eux est Loups le MJ malide. Sinon le renard perd son pouvoir</string>
        <string name="descriptionRoleServante">La servante peut prendre le rôle d\'un condamné à mort avant qu\'il ne meurt. Son pouvoir est annulé si elle est en couple</string>
        <string name="descriptionRoleFrères">Les 3 frères se réveillent et peuvent discuter (avec des gestes ne soyons pas bêtes)</string>
        <string name="descriptionRoleSoeurs">Les 2 soeurs se réveillent et peuvent discuter (avec des gestes ne soyons pas bêtes)</string>
        <string name="descriptionRoleOurs">Si l\'un des voisions du montreur d\'ours est un loup. Le MJ le signalera au village tous les matins</string>
        <string name="descriptionRoleComedien">Le MJ pose trois cartes visibles au milieu du cercle. Le comedien peut choisir d\'incarner chacun de ces rôles (1x chacun)</string>
        <string name="descriptionRoleChevalier">Si le chevalier est croqué, le premier loup à sa gauche meurt la nuit suivante</string>
        <string name="descriptionRoleJuge">Le juge se met d\'accord avec le MJ sur un geste discret. S\'il effectue ce geste le jour, alors il y aura un deuxième vote après la première mort</string>
        <string name="descriptionRoleAnge">L\'ange gagne si il est voté au premier tour. Sinon il devient villageois</string>
        <string name="descriptionRoleSectaire">Le MJ sépare le village en 2 groupes la première nuit (barbus/imberbes, jean/shorts, hommes/femmes…) l\'abominable sectaire devra éliminer tous les joueurs de l\'équipe adverse pour gagner seul</string>
        <string name="descriptionRoleInfectPere">Le père des loups, après que les loups aient voté, peut choisir d\'infecter la cible au lieu de la tuer. Ce afin de la transformer en Loup. L\'infecté conserve son rôle mais se réveil au tour des loups et gagne avec eux</string>
        <string name="descriptionRoleChienLoup">Le chien-loup peut choisir d\'être villageois ou loup lors du premier tour. Ni la voyante, ni sa mort ne dirons lequel il avait choisit. Un bonne variante est de tirer son rôle à pile ou face chaque nuit</string>
        <string name="descriptionRoleVilaVila">Le villageois-villageois est un simple… villageois. Mais tout le monde le sait. Alors ni le village ni les loups n\'ont d\'intérêt à le tuer</string>
        <string name="descriptionRoleGML">Tant qu\'aucun loup n\'est mort (enfant sauvage et chien-loup compris), le grand méchant loup se réveil une deuxième fois (seul) pour faire une autre victime</string>
        <string name="descriptionRoleGitane">La gitane peut choisir une question sur les cartes \"spiritisme\" que le MJ posera aux morts</string>
        <string name="descriptionRoleTroubadour">Le Troubadour (ou garde champètre) est un double rôle (au même titre que le maire). Il peut annoncer des variantes des cartes nouvelle lune tous les matins. Le troubadour est choisit par le maire et peut être destitué à tout moment</string>
    
        <string name="explicationRoleLG">Appelez tous les loups (y compris l\'enfant si son mentor est mort et le chien-loup si il a choisi le coté obscur). Puis demandez leur de pointer quelqu\'un du doigt. Vous pouvez vous contenter de la majorité ou les inviter à tous choisir le même afin qu'ils fassent plus de bruit</string>
        <string name="explicationRoleVillgeois"> </string>
        <string name="explicationRoleVovo">Appelez la voyante. Demandez lui de vous montrer quelqu\'un du doigt. Vous allez chercher la carte de cette personne pour lui montrer. L\'idéal est de faire des tours du cercle et de retourner plusieurs cartes pour que le village ne sache pas qui a été regardé</string>
        <string name="explicationRoleVoleur">Appelez le voleur. Retournez les 2 cartes préalablement disposées au centre du cercle. Il en choisit une qu\'il incarnera toute la partie. Vous échangez sa carte et celle choisi et vous laissez les cartes face découverte au centre (de manière à ce que le village sache quel rôle n'a pas été pris au réveil)</string>
        <string name="explicationRoleChasseur"> </string>
        <string name="explicationRoleCupidon">Appelez cupidon et demandez lui de pointer les deux personnes qu\'il souhaite mettre en couple. Vous endormez cupidon puis réveillez les 2 amoureux. Vous les invitez à se trouver et échanger un sourire puis vous les rendormez</string>
        <string name="explicationRoleSorcière">Vous réveillez la sorcière et lui montrez qui s\'est fait croquer la nuit. Vous lui demandez si elle veut sauver ou non la personne en l\'invitant à vous répondre d'un pouce vers le haut ou vers le bas. Puis vous lui demandez si elle veut tuer quelqu'un de la même manière</string>
        <string name="explicationRolePetiteFille"> </string>
        <string name="explicationRoleSalvateur">Vous reveillez le salvateur, il vous pointe la personne à protéger (rappelez lui qu\'il peut se protéger). Il ne peut protéger la même personne qu\'un nuit sur deux. N'OUBLIEZ PAS DE NE PAS TUER LA PERSONNE PROTÉGÉE LORS DU VOTE !</string>
        <string name="explicationRoleIdiot"> </string>
        <string name="explicationRoleBouc"> </string>
        <string name="explicationRoleAncien"> </string>
        <string name="explicationRoleFlute">Appelez le joueur de flute et demandez lui d\'indiquer 2 personnes à charmer. Ne lui rappelez pas les personnes pointées, sela corsera son rôle. Vous pouvez ensuite l\'endormir, toucher la tête des 2 charmés et ensuite réveiller toutes les personnes charmées</string>
        <string name="explicationRoleLoupBlanc">Vous appelez le loup blanc, à son réveil vous l\'invitez à croquer quelqu\'un (n'importe qui). Rappelez lui qu'il doit gagner seul</string>
        <string name="explicationRoleCorbeau">Réveillez le corbeau, demandez lui devant la maison de qui il souhaite coller son affiche. Vous placez la carte flèche, pas besoin d\'être discret car tout le monde la verra</string>
        <string name="explicationRoleEnfant">Demandez à l\'enfant de vous montrer qui il choisit comme mentor. NE L\'OUBLIEZ PAS ! Et rappelez lui de se réveiller au tour des loups le moment venu</string>
        <string name="explicationRoleRenard">Appelez le renard et demandez lui de vous pointer la personne au milieu des 3 personnes côte à côte qu\'il souhaite sonder. Vous pouvez le rendormir le temps de regarder les rôles en question avant de lui dire si oui ou non il y avait un loup dans le trio</string>
        <string name="explicationRoleServante"> </string>
        <string name="explicationRoleFrères">Vous réveillez les 3 frères en même temps. Ils peuvent se faire des gestes ou tout ce qui peut les aider à communiquer discrètement. Si ils restent stoique vous pouvez leur proposer de montrer quelqu\'un du doigt ou autre pour qu\'ils entament la conversation</string>
        <string name="explicationRoleSoeurs">Vous réveillez les 2 soeurs en même temps. Elles peuvent se faire des gestes ou tout ce qui peut les aider à communiquer discrètement. Si elles restent stoique vous pouvez leur proposer de montrer quelqu\'un du doigt ou autre pour qu\'elles entament la conversation</string>
        <string name="explicationRoleOurs">Vous réveillez l\'ours uniquement pour savoir où il est. Ensuite vous pouvez le rendormir et regarder les rôles de ses voisins. N\'hésitez pas à regarder les rôles de tout le monde pour avoir une vue d\'ensemble de votre partie</string>
        <string name="explicationRoleComedien">Vous réveillez le comédien, il peut choisir d\'utiliser un des rôles au milieu du cercle. Il l\'incarne pour un tour et vous retrournez la carte concernée pour que le village sache que le rôle a été utilisée. À eux de retenir les cartes qu\'il y avait au milieu</string>
        <string name="explicationRoleChevalier"> </string>
        <string name="explicationRoleJuge">Vous réveillez le juge. Vous lui demandez de faire un signe discret (ou à l\'inverse pas du tout, c\'est aussi efficace). Prêtez bien attention au juge lors du vote pour ne pas rater le signe</string>
        <string name="explicationRoleAnge"> </string>
        <string name="explicationRoleSectaire">Vous n\'avez pas à le réveiller, énoncez simplement 2 équipes les plus égales possible. Dans le cas échéant, il est préférable que le sectaire soit dans l\'équipe la plus petite</string>
        <string name="explicationRoleInfectPere">Réveillez l\'infect père des loups. Si il souhaite infecter faites lui lever le pouce, si il ne souhaite rien faire faites lui baisser le pouce</string>
        <string name="explicationRoleChienLoup">Réveillez le chien loup, faites lui choisir si il veut être villageois ou loup, toujours en levant ou baissant le pouce. Une bonne variante est de le faire être l\'un ou l'autre avec un pile ou face chaque jour</string>
        <string name="explicationRoleVilaVila"> </string>
        <string name="explicationRoleGML">Réveillez le grand méchant loup, et demandez lui de choisir une deuxième victime pour cette nuit</string>
        <string name="explicationRoleGitane">Réveillez la gitane, demandez lui d\'abord avec un pouce en l\'air ou vers le bas si elle veut faire du spiritisme. Montrez lui ensuite une carte de spiritisme, Elle vous montre en comptant sur ses doigts la question qu\'elle veut poser. Vous posez cette question aux morts afin d'avoir la réponse (en général on demande aux morts de ne pas mentir mais c'est une variante possible)</string>
        <string name="explicationRoleTroubadour">Le Troubadour peut choisir d\'annoncer une des 5 variantes dont il dispose</string>
    
    
        <string name="suivant">Suivant</string>
        <string name="valider">Valider</string>
        <string name="ChoisiNombreJoueurs">Choisissez le nombre de joueurs qui composeront votre village</string>
        <string name="ExplicationNombreJoueurs">L\'appli décontera le nombre de cartes à séléctionner pour vous aider à choisir vos cartes. Observez la barre se remplir sur la prochaine page !</string>
    
</resources>

(don't know if there's a better way to share my code sry 😟)

作为阿里Moghadam先生写了(他删除了答案) explicationRoleLGstrings.xml包含非有效符号(也许{str} )。

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM