当我运行我的flutter项目时,我得到了以下错误:
C:\Users\Sourav Kannantha B\Documents\AndroidProjects\ecommercestore\build\app\generated\source\buildConfig\debug\com\skbsmk\ecommercestore\BuildConfig.java:14: error: illegal escape character
public static final String fluttersdk = "C:\Users\Sourav Kannantha B\Documents\Flutter";
^
.
.
.
我可以理解为什么这是错误的,因为BuildConfig.java
包含以下行:
public static final String fluttersdk = "C:\Users\Sourav Kannantha B\Documents\Flutter";
但是我的local.properties
文件包含正确格式的路径:
flutter.sdk=C:\\Users\\Sourav Kannantha B\\Documents\\Flutter
我不知道为什么,在构建它的时候跳过了一个反斜杠。我甚至试着把local.properties
编辑成这样:
flutter.sdk=C:\\\\Users\\\\Sourav Kannantha B\\\\Documents\\\\Flutter
还有这个
flutter.sdk=C:/Users/Sourav Kannantha B/Documents/Flutter
但是只要我运行这个项目,android studio就会自动把这些改成以前的样子。
- EDIT**:项目之前运行正常。这一切都是在我将
com.google.android.libraries.mapsplatform.secrets-gradle-plugin
添加到我的android gradle文件时开始的。但我不确定这是否与此错误有关。
- EDIT**:项目之前运行正常。这一切都是在我将
- 编辑**:我的错误,错误确实与
com.google.android.libraries.mapsplatform.secrets-gradle-plugin
有关。删除后,错误得到解决。有人能解释一下这种行为吗?
- 编辑**:我的错误,错误确实与
3条答案
按热度按时间wlwcrazw1#
自从我添加secrets插件后,我在Windows上偶然发现了同样的问题。我在文档中发现,你可以将你的秘密移动到插件可以使用的特定属性文件中。这样,你就可以不修改local.properties文件。
请参阅documentation中的第8点。简单地说,您需要在应用的build.gradle中添加以下代码:
在www.example.com上secrets.properties,写下你的秘密。
1tu0hz3e2#
目前,我隐藏我的MapAPI密钥如下:
将API密钥存储在
local.properties
中在
AndroidManifest.xml
中声明API密钥占位符替换模块级别
build.gradle
中的API密钥占位符3phpmpom3#
我或多或少遇到了同样的问题。自动生成的
buildConfig
文件在添加其他声明的地方不正确。删除
com.google.android.libraries.mapsplatform.secrets-gradle-plugin
修复了此问题