Android Studio 1.2 – 默认情况下,项目编码不匹配

我是一个Android新手,我刚刚升级到Android Studio 1.2。 当我做一个新的项目(API 16:Android 4.1(果冻豆))时,我立即得到以下警告:

警告:项目编码(windows-1252)与Gradle构build文件(UTF-8)中指定的编码不匹配。 这可能会导致严重的错误。
更多信息…
打开文件编码设置

这是没有我做任何改变或编写任何代码。 我读了关于tools.android.com( http://tools.android.com/knownissues/encoding )的更多信息,但它是非常含糊的,并假设知道发生了什么(这是“更多信息…”带你)。 由于我更新到Android Studio 1.2,我的XML文件中的devise和文本标签甚至不会同步。 devise选项卡不能被编辑,而XML文件的文本文件可以。 我认为这是一个相关的问题。

为什么它默认不匹配这个编码,我该怎么做,我应该使用什么作为默认编码?

谢谢!

点击文件 – >设置 (或者点击Ctrl + Alt + S ),然后在Android Studio中find文件编码。 请参阅下面的图像作为参考。

现在你有三个select

  • 更改项目编码以匹配UTF-8,因为Gradle和Android Lint都使用这个(推荐),
  • 或更改IDE编码以匹配其他编码,
  • 或者只是简单地忽略警告。 如果到目前为止,它仍然会继续工作

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

一旦你看到警告,你可以直接点击“打开文件编码设置”,如下图所示。 这将带你到上述的相同的地方。

在这里输入图像说明

您还可以在Android Studio的右下angular看到您的文件的当前编码。 你也可以在那里改变它。 看到下面的图片。

IDE编码

你也可以像这样在你的build.gradle脚本中指定charset

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

根据Ashl7的评论,你需要做一个gradle同步这个工作

我不build议将UTF-8更改为与系统默认值匹配,而是build议将项目编码设置为UTF-8(文件 – >设置 – >编辑 – >文件编码)。 UTF-8是最常见的文件编码之一,它根据需要使用1到4个字节的字符进行编码,从而高效地使用空间。

Googlebuild议使用UTF-8,Gradle和Android Lint都使用Android Studio的 UTF -8: 文件编码

升级到Android Studio 1.2后,我遇到了完全相同的问题。

Android Studio设置窗口的屏幕截图

我是或者有同样的问题。 所以我改变了它,以便IDE和项目编码和属性文件的默认编码都是UTF-8。 但是我一直在消息的gradle sync选项卡中看到相同的警告。 最后,我只是closures了这个标签,并没有看到警告信息。 如果再次应用警告条件,则IDE可能会重新评估该选项卡。 现在,当我做项目时,不会出现gradle sync标签和警告消息。 所以也许这个警告是在一个make中恰当地写的,但是应该在新make的开始时被清除或以某种方式删除,但不是,这意味着它是IDE中的一个bug。

但每次我创build一个新项目时,问题都会再次出现。 每次创build新项目时,都应该有一个设置来使所有编码匹配。

您可以通过单击文件 – >其他设置 – >默认设置来更改新项目的默认编码设置。

在“编辑器”和“文件编码”下,您可以将IDE编码和项目编码设置为相同的值,以避免在将来的项目中出现错误消息。

在“文件” – >“设置”下进行设置,只会改变当前打开的项目。