错误:当我尝试创build签名APK时,可疑命名空间和前缀组合

我GOOGLE了我的问题,但我找不到解决scheme。
当我尝试创build签名APK时,出现此错误:

Error:(6) Error: Suspicious namespace and prefix combination [NamespaceTypo] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Explanation for issues of type "NamespaceTypo": track these down. xmlns:app="http://schemas.android.com/tools" obscure error messages. This check looks for potential misspellings to help Accidental misspellings in namespace declarations can lead to some very 

这是这个布局文件的片段:

 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:fab="http://schemas.android.com/apk/res-auto" android:layout_width="wrap_content" android:layout_height="wrap_content" xmlns:app="http://schemas.android.com/tools" app:layout_behavior="@null" android:layout_gravity="bottom|right"> 

Solutions Collecting From Web of "错误:当我尝试创build签名APK时,可疑命名空间和前缀组合"

用下面的代码更改代码xmlns:app =“http://schemas.android.com/tools&#x201D;

xmlns:app="http://schemas.android.com/apk/res-auto"

它使我的工作。

你的前两行xml代码是不正确的。 整个XML文件应该如下所示:

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="wrap_content" android:layout_height="wrap_content" xmlns:app="http://schemas.android.com/tools" app:layout_behavior="@null" android:layout_gravity="bottom|right"> 

前两行是xml文件的声明。 尽pipe您可以在devise视图中查看页面的实际布局,但由于需要使用xml工具标记,所以布局itslef在构build时仍然会遇到问题。

这个命名空间的目的是能够将信息logging在XML文件中,并且在应用程序打包时剥离这些信息,从而避免运行时或下载大小的损失。 这是一个专用的Android XML命名空间。

希望这可以帮助 :)

tools名称空间应该用于android studio上xml的预览工具。 例如,如果您正在testing默认隐藏的视图,但是您希望在预览中看到该视图,则应使用tools:visibility=visible

据我所知, app名称空间用于将自定义视图和布局添加到要添加视图的xml的命名空间。

所以你所有的答案都是正确的,但是我认为没有人解释名字空间的作用。 所以对于约定,我build议像这样使用它们:

 xmlns:yourAppName="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" 

我有这个相同的错误。 我的问题是,当使用数据绑定时,Android Studio会自动将xmlns放入我的布局选项卡,而不是根视图标记。

换句话说,当我有Android Studio解决app前缀它这样做:

 <?xml version="1.0" encoding="utf-8"?> <layout xmlns:custom="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/tools"> <!-- added namespace here ... --> <data> <variable name="viewModel" type="com.example.ViewModel"/> </data> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <LinearLayout android:layout_width="..." android:layout_height="..." android:orientation="vertical" app:backgroundResource="@{viewModel.someResource}"> <!-- ... when trying to resolve app --> ... 

当它应该做到这一点:

 <?xml version="1.0" encoding="utf-8"?> <layout xmlns:custom="http://schemas.android.com/apk/res-auto"> <data> <variable name="viewModel" type="com.example.ViewModel"/> </data> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/tools" <!-- should have added here --> android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <LinearLayout android:layout_width="..." android:layout_height="..." android:orientation="vertical" app:backgroundResource="@{viewModel.someResource}"> ...