Android 字符串\u太大\u Kotlin中的大字符串

Android 字符串\u太大\u Kotlin中的大字符串,android,xml,string,kotlin,Android,Xml,String,Kotlin,当我在我的项目中添加插件来支持Kotlin时,它从我的项目的string.xml文件中读取了大字符串。它给了我下面的错误 错误:字符串太大,无法使用UTF-8编码,改为“字符串太大”。这是gradle插件的问题 如果您将插件升级到3.3.0-alpha06或更高版本,并将gradle升级到4.9,它应该可以工作。这并不理想,因为它是alpha,但它为我解决了这个问题 将添加到任何缺少它的resource.xml文件的顶部。在使用矢量资源时,只需查找并分割一个大于32kb的字符串,在我的例子中,这

当我在我的项目中添加插件来支持Kotlin时,它从我的项目的string.xml文件中读取了大字符串。它给了我下面的错误

错误:字符串太大,无法使用UTF-8编码,改为“字符串太大”

这是gradle插件的问题

如果您将插件升级到
3.3.0-alpha06
或更高版本,并将gradle升级到
4.9
,它应该可以工作。这并不理想,因为它是alpha,但它为我解决了这个问题


添加到任何缺少它的resource.xml文件的顶部。

在使用矢量资源时,只需查找并分割一个大于32kb的字符串,在我的例子中,这是一个复杂的路径,我对其进行了一些简化,以符合32kb的标准,但没有看到任何代码。除了猜测可能存在的问题之外,很难做任何事情

目前我们所能看到的是,很可能有一个字符串太大而无法编码,否则您将无法得到错误消息

这个字符串是如何建立的以及它存在的原因


这是一个我们无法真正回答的问题。你可能想进一步阐述你的问题,这样我们就可以看得更远一些,帮助找到解决方案:)

这不是一个真正的Kotlin问题,它与构建工具有关。这并没有发生在构建工具27(Gradle 3.1)上,而是在升级到构建工具28(Gradle 3.2)后发生在我身上


解决方案发布在此处。

造成这种情况的一个常见原因似乎是您的应用程序/build.gradle中有条带,似乎有一个向量文件被读取为大于32kB的字符串


要解决这个问题,请将您的条带版本更改为7.0.0之后的版本,这是他们修复它的地方。Stripe的当前版本是8.1.0。

转到文件>使缓存无效/重新启动。这解决了我的问题。

我也有同样的问题,但在使用support lib 28 alpha时。我发现了这个检查,如果你有一个大的
向量可绘制的
,正如上面的帖子所建议的那样。我已经在string.xml中声明了长字符串。你使用的是哪个gradle版本?3.2测试版()可能存在错误。尝试降级到3.1.3,看看是否有帮助。将Gradle Build Tools降级到3.1.0(classpath'com.android.Tools.Build:Gradle:3.1.0')解决了我的问题!男人。。。我不能认为这是一个答案,而是一个解决办法。降级版本不是解决方案这不是解决方案!