web-dev-qa-db-fra.com

Android Studio 1.2 - Incohérences d’encodage de projet par défaut

Je suis un peu d'un Android recrue et je viens de passer à Android Studio 1.2. Lorsque je crée un nouveau projet (API 16: Android 4.1 (Jelly Bean)), je reçois immédiatement l'avertissement suivant:

Avertissement: Le codage du projet (Windows-1252) ne correspond pas au codage spécifié dans les fichiers de construction Gradle (UTF-8). Cela peut conduire à de graves bugs.
Plus d'informations...
Ouvrir les paramètres de codage de fichier

Ceci est sans moi avoir apporté de modifications ou écrit aucun code que ce soit. J'ai lu plus d'informations sur tools.Android.com ( http://tools.Android.com/knownissues/encoding ) mais il est incroyablement vague et suppose de savoir ce qui se passe (c'est là "Plus d'infos ..." vous emmène). Depuis que j'ai mis à jour vers Android Studio 1.2, les onglets de conception et de texte de mes fichiers XML ne sont même pas synchronisés; l'onglet de conception ne peut pas être modifié, contrairement au fichier texte des fichiers XML. Je suppose que c'est une question connexe.

Pourquoi ne correspond-il pas à cet encodage par défaut, que puis-je faire à ce sujet et que dois-je utiliser comme encodage par défaut?

Merci!

43
LGW

Cliquez sur Fichier -> Paramètres (ou cliquez sur Ctrl + Alt + S) et trouvez les encodages de fichiers dans votre Android Studio. Consultez l’image ci-dessous à titre de référence.

Maintenant vous avez trois options

  • Modifiez l'encodage du projet pour qu'il corresponde à UTF-8, car Gradle et Android Lint utilisent this (recommandé),
  • ou changer IDE encodage pour correspondre à un autre encodage,
  • ou tout simplement ignorer l'avertissement. Si cela a fonctionné pour vous jusqu'à présent, il continuera de fonctionner de toute façon

http://shrani.si/f/3V/p7/5xt1uxV/encoding.png

Une fois que vous voyez l'avertissement, vous pouvez directement cliquer sur "Ouvrir les paramètres de codage de fichier", comme indiqué dans l'image ci-dessous. Cela vous mènera au même endroit que décrit ci-dessus.

enter image description here

Vous pouvez également voir l'encodage actuel de votre fichier dans le coin inférieur droit de Android studio. Vous pouvez également le modifier ici. Voir l'image ci-dessous.

IDE Encoding

Aussi, vous pouvez spécifier charset dans votre script build.gradle comme ceci

Android {
    ...
    compileOptions {
        encoding "UTF-8"
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
    }
}

Selon le commentaire de Ashl7 , vous devez effectuer une synchronisation graduelle pour que cela fonctionne.

79
Bojan Kseneman

Au lieu de changer UTF-8 pour qu'il corresponde aux valeurs par défaut du système, il est recommandé de définir l'encodage de votre projet sur UTF-8 (Fichier -> Paramètres -> Éditeur -> Encodages de fichier). UTF-8 est l’un des encodages de fichiers les plus courants. Il utilise efficacement l’espace en encodant des caractères de 1 à 4 octets selon les besoins.

Google recommande d'utiliser UTF-8 et Gradle et Android Lint utilise UTF -8: Codage de fichier pour Android Studio =

J'ai eu exactement le même problème après la mise à niveau vers Android Studio 1.2.

Screen capture of Android Studio settings window

15
joshgoldeneagle

Je suis ou ai eu le même problème. Je l'ai donc modifié pour que les codages IDE et du projet et le codage par défaut des fichiers de propriétés soient tous au format UTF-8). Mais le même message d'avertissement était affiché dans l'onglet de synchronisation des gradins des messages. finalement, j'ai simplement fermé cet onglet et je n'ai pas vu le message d'avertissement depuis. Vraisemblablement, le IDE lèverait cet onglet si la condition d'avertissement était à nouveau appliquée. Maintenant, lorsque je crée le projet, ni le synchro gradle Ainsi, peut-être que l'avertissement a été écrit correctement au cours d'une fabrication, mais aurait dû être effacé ou en quelque sorte supprimé au début d'une nouvelle création, mais ne l'était pas, ce qui signifie qu'il s'agit d'un bogue dans l'EDI.

Mais chaque fois que je crée un nouveau projet, le problème se pose à nouveau. Il doit exister un paramètre permettant de faire correspondre tous les encodages à chaque fois qu'un nouveau projet est créé.

5
John Surname

Vous pouvez modifier les paramètres de codage par défaut pour les nouveaux projets en cliquant sur Fichier -> Autres paramètres -> Paramètres par défaut.

Sous "Editeur" et "Codages de fichier", vous pouvez définir IDE Encodage et codage de projet sur la même valeur pour éviter de recevoir le message d'erreur dans les projets futurs.

Le paramétrer sous Fichier -> Paramètres ne le modifiera que pour le projet actuellement ouvert.

2
user3554394