【发布时间】:2017-01-23 16:00:15
【问题描述】:
我已将我的项目更新到 SDK 版本 24 和 Java 8,但遇到了一个奇怪的编码问题。
由于某种奇怪的原因,Android 将我硬编码的 UTF-8 字符串视为 Windows-1251,因此文本是乱码。
像这样:
这是我改变的:
compileSdkVersion 24
buildToolsVersion "24.0.2"
compileOptions {
encoding = 'utf-8'
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
以及我尝试过的:
- 更改了 Android Studio 设置中的编码
- 添加了 compileOptions.encoding = 'windows-1251' 和 compileOptions.encoding = 'utf-8'
- 添加系统变量 JAVA_TOOL_OPTIONS:-Dfile.encoding=UTF8
如果我恢复到 Java 7 一切正常。
有什么想法吗?
【问题讨论】:
-
你用过jack编译器吗?
-
我在 build.gradle 中使用了 jackOptions { enabled true }
标签: android android-studio encoding utf-8 java-8