Firebase 将Android Studio升级到3.2.1后出现合并清单警告

Firebase 将Android Studio升级到3.2.1后出现合并清单警告,firebase,android-studio,android-manifest,Firebase,Android Studio,Android Manifest,升级到安卓Studio 3.2.1后,在编辑AndroidManifest.xml文件时,我看到文件的部分以黄色突出显示(可能是由于下面的警告)。 我还看到一个名为合并清单的新选项卡,其中包含警告: 合并错误:警告活动#com.google.firebase.auth.internal。FederatedSignInActivity@android:在AndroidManifest.xml:24处标记了启动模式,以替换其他声明,但没有其他声明存在于应用程序主清单(此文件)第23行 问题: 这个新

升级到安卓Studio 3.2.1后,在编辑
AndroidManifest.xml
文件时,我看到文件的
部分以黄色突出显示(可能是由于下面的警告)。 我还看到一个名为
合并清单
的新选项卡,其中包含警告:

合并错误:警告活动#com.google.firebase.auth.internal。FederatedSignInActivity@android:在AndroidManifest.xml:24处标记了启动模式,以替换其他声明,但没有其他声明存在于应用程序主清单(此文件)第23行

问题:

  • 这个新标签在AS 3.2.1中是新的吗?还是因为AS 3.2.1发现了以前版本没有的新警告而出现

  • 警告是关于什么的?出于某种原因,我是否需要在我的应用程序的AndroidManifest.xml for Firebase中添加活动

  • 我怎么修理它

  • (注意:大概在同一时间,Firebase也进行了更新。)

    Firebase目前是最新的

    implementation 'com.google.firebase:firebase-auth:16.0.5'
    implementation 'com.google.firebase:firebase-core:16.0.4'
    implementation 'com.google.firebase:firebase-crash:16.2.1'
    

    尽管如此,一切都可以正常编译和运行。

    找到了导致这种情况的原因

    整个

    我可以通过添加行来解决这个问题

    <application
    
          ..
    
          tools:ignore="GoogleAppIndexingWarning"
    
          ..>
          ..
    
    </application>
    


    ,希望这对您有所帮助。

    首先在清单添加中向应用程序节点添加以下活动:

    <activity
        android:name="com.google.firebase.auth.internal.FederatedSignInActivity"
        android:excludeFromRecents="true"
        android:exported="true"
        android:launchMode="singleInstance"
        android:permission="com.google.firebase.auth.api.gms.permission.LAUNCH_FEDERATED_SIGN_IN"
        android:theme="@android:style/Theme.Translucent.NoTitleBar"
        tools:replace="android:launchMode" />
    

    该问题是通过
    firebase auth:16.0.5
    引入的

    将依赖关系保持在以前的版本是一种可能的解决方法:

    dependencies {
        ...
    
        //noinspection GradleDependency
        implementation "com.google.firebase:firebase-auth:16.0.4"
    }
    

    你可以忽略这个警告,到目前为止没有发现任何副作用。

    我也有同样的问题。这不是因为Firebase

    我已经创建了一个新的启动器图标,我称之为
    my_launcher
    。生成的两个文件
    my_launcher.xml
    my_launcher\u round.xml
    有错误


    在我的例子中,它没有为
    background
    标记找到
    @mipmap/ic\u launcher\u background
    。我删除了它,重建工作正常。

    如果您有大写的软件包,请重新检查您的命名软件包若要解决此问题,请将您创建的所有包名设置为小写。


    我在AndroidManifest.xml中添加了以下行

    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools" //add this line
        ...>     
    
    
    
    并且只有以下自动关闭活动标记

    <activity
        android:name="com.google.firebase.auth.internal.FederatedSignInActivity"
        android:excludeFromRecents="true"
        android:exported="true"
        android:launchMode="singleInstance"
        android:permission="com.google.firebase.auth.api.gms.permission.LAUNCH_FEDERATED_SIGN_IN"
        android:theme="@android:style/Theme.Translucent.NoTitleBar"
        tools:replace="android:launchMode" />
    

    打开命令提示符,然后在下面键入命令

    cd android && gradlew clean
    

    你找到解决办法了吗。你也有这样的经历吗?是的,得到了同样的警告我已经向Firebase提交了一份bug报告(我怀疑问题就在这里,但很可能是3.2.1)。如果我得到一个有用的回复,我会更新这个。我得到了Firebase支持的回复,但他们无法复制。他们希望得到一个可以预期的MCVE(),但是现在我没有时间创建一个@维尼特,如果你能做到这一点,请随时发送给他们。案例编号为[5-4824000024047]供您参考。这不是一个合适的解决方案,您只需禁用谷歌索引警告并非每个人都需要链接,因此它是这些人的解决方案。另外,对于那些想做链接的人,我在上面的回答中提供了如何做的链接(在这里输入链接描述-url:)。最终我做了应用程序链接索引(请参阅上面的链接),因为我想在谷歌索引中这样做。你说的“清单添加中的应用程序节点”是什么意思?谢谢你是怎么找到这个解决方案的?我在其他地方看到了第一部分。你为什么需要第二部分?
    cd android && gradlew clean