The Host name may not be empty
The Host name may not be empty
检查您的Gradle脚本根目录。如果有这个文件:gradle.properties(全局属性),请检查值是否正确。
在我的情况下,我删除了所有这些属性,然后我的问题得到解决。
systemProp.http.proxyHost=
systemProp.http.proxyPort=80
systemProp.https.proxyHost=
systemProp.https.proxyPort=80
firebaseCrashlytics.enableMappingFileUpload
Gradle扩展属性设置为true。// To enable Crashlytics mapping file upload for specific product flavors:
flavorDimensions "environment"
productFlavors {
staging {
dimension "environment"
...
firebaseCrashlytics {
mappingFileUploadEnabled false
}
}
prod {
dimension "environment"
...
firebaseCrashlytics {
mappingFileUploadEnabled true
}
}
}
欲了解更多详情,请访问此处
是的,问题始于AS 4.0版本.. 这里是更清晰的解决方案... (因为有些人可能认为此处所说的"gradle.properties"文件指的是AS项目中的文件而不是全局文件)。
从PC gradle安装位置的"gradle.propeties"文件中删除以下行:
systemProp.http.proxyHost= systemProp.https.proxyHost= systemProp.https.proxyPort=80 systemProp.http.proxyPort=80
如下图所示,这个典型文件位置是gradle.propeties文件。
现在在您的项目中点击“重建”,问题解决。
这个问题是由于您的res目录中存在空xml文件引起的。在资源目录中打开资源管理器/查找器,按照大小对所有xml进行排序。找到大小为0kb / 空xml的文件并将其删除。现在您可以创建已签名的捆绑apk。
当我移除了所有的http.proxyPort时,它就可以工作了。
对我来说,问题在于WebDriver需要一个完全限定的URL。将localhost:9000
切换到http://localhost:9000/
对我有用(希望也能帮助其他人)。
这是因为WebDriver方法void get(String url);
被调用并出现错误:
The Host name may not be empty
参数的Java文档说明如下:
Params: url – 要加载的URL。必须是完全限定的URL
我遇到了同样的问题,但通过应用Proguard规则,我成功解决了这个问题。
https://firebase.google.com/docs/crashlytics/get-deobfuscated-reports?platform=android
在项目的proguard-rules.pro文件中
-keepattributes SourceFile,LineNumberTable
-keep public class * extends java.lang.Exception
Gradle
firebaseCrashlytics { mappingFileUploadEnabled true }
/Users/[username]/.gradle/gradle.properties
的gradle.properties
文件并移除以下属性。systemProp.http.proxyHost=
systemProp.http.proxyPort=80
systemProp.https.proxyHost=
systemProp.https.proxyPort=80
./gradle
目录,其中包含gradle.properties
文件。例如,对于 Mac 路径为/Users/[username]/.gradle/gradle.properties
。 - pRaNaY