FireBase卡在了“运行您的应用以验证安装”上,适用于Android

时间:2019-03-14 10:15:02

标签: android firebase

我是Android开发的新手,很长一段时间以来,我一直陷在一个错误中,该错误是“运行您的应用以验证安装(检查应用是否已与我们的服务器通信。您可能需要卸载并重新安装您的应用程序。)

build.gradle(Module:app)
    dependencies {
        implementation fileTree(dir: 'libs', include: ['*.jar'])
        implementation 'com.android.support:appcompat-v7:26.1.0'
        implementation 'com.android.support.constraint:constraint-layout:1.1.3'
        testImplementation 'junit:junit:4.12'
        androidTestImplementation 'com.android.support.test:runner:1.0.2'
        androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
        implementation 'com.google.firebase:firebase-core:16.0.1'
    }

     dependencies {
            classpath 'com.android.tools.build:gradle:3.3.2'
            classpath 'com.google.gms:google-services:4.0.1'
            // NOTE: Do not place your application dependencies here; they belong
            // in the individual module build.gradle files
        }

18 个答案:

答案 0 :(得分:14)

由于@Udayraj Deshmukh的评论,我解决了此问题。 我以为我会补充这个问题,因为它对我有帮助

只需转到应用程序级别的Gradle并添加以下内容:

apply plugin: 'com.google.gms.google-services'

enter image description here

Firebase SDK指南忘记告诉您包括该插件。 enter image description here

答案 1 :(得分:7)

您无需执行任何操作,只需在android模拟器或真实的android设备上运行该应用即可。如果您已经制作了应用程序,后来又添加了dependencies,则需要从设备/仿真器中删除该应用程序,然后重新安装该应用程序。

这样做,当应用运行时,它将google-services.json文件中的变量传递给Firebase服务器,并检查同一应用是否在通信。

此步骤是为了验证应用中是否正确安装了Firebase依赖项。如果发现困难,则可以跳过该过程。

答案 2 :(得分:5)

在我的情况下,问题是在项目级别的gradle文件中,我设置了最新的google-services,在回答此问题时,它是 4.3.0

classpath 'com.google.gms:google-services:4.3.0'

然后我注意到,在Firebase向导中,配置步骤显示的是以前的版本: 4.2.0

更改我的gradle使其与Firebase配置向导中显示的相同版本解决了该问题。

注意:因此,我的结论是,无论哪个是最新的google-services版本(以及我们在此堆栈溢出问答中讨论的版本),我们都应始终使用Firebase中显示的版本向导配置步骤。

答案 3 :(得分:3)

我解决了更新SDK工具的问题:首选项->外观和行为->系统设置->更新,然后单击“立即检查”。

更新完成后,我从模拟器上卸载了该应用程序,退出了Android Studio和模拟器​​,然后再次运行

答案 4 :(得分:3)

确保您没有运行任何网络级adblocker,这可能会阻止对Firebase的调用。

就我而言,我必须禁用Pi-Hole才能允许我的应用通过网络连接到Firebase。

答案 5 :(得分:2)

我遵循了每个步骤,但是我没有工作。因此,我联系了Firebase支持人员并获得了以下答案:

  

谢谢你伸出手,西蒙。

     

我建议完全跳过该步骤。该应用程序应具有   已成功添加并验证Firebase是否已   工作,最好直接测试您要使用的服务   尝试使用。

     

如果您还有其他问题/问题,请告诉我。

答案 6 :(得分:2)

以上答案均无济于事。但是@kotlinski的回答帮助我转到AndroidManifest.xml来检查问题。就我而言,这是AndroidManifest.xml中的条目。

<meta-data
        android:name="firebase_analytics_collection_enabled"
        android:value="false" />

我只是将其修改为true,以使事情正常进行。我立即在FCM控制台上收到消息“恭喜,您已成功将Firebase添加到您的应用中! '

答案 7 :(得分:1)

我遇到了这个问题,我删除了google.json / google.plist文件,然后再次启动了该应用程序。清理构建文件夹,清除缓存,从模拟器中删除该应用程序,重新启动它,进行pod update && pod install ...等。我为我发现这是在Google文件混乱时发生的

答案 8 :(得分:1)

只需在Android Studio终端中运行flutter clean命令,然后重新安装,然后尝试在Firebase中将其连接即可

答案 9 :(得分:1)

在我的情况下,FabricFirebase冲突。当我从包装中取出Fabric时,它开始工作。 我也看到了一些情况,当电话连接到wifi时,有问题需要验证。在这种情况下,将网络更改为Mobile data

答案 10 :(得分:0)

请确保您

  1. 已将google()包含在android / build.gradle
  2. buildscript 存储库中
  3. 已在android / build.gradle中添加了 classpath 'com.google.gms:google-services:4.3.3'依赖关系
  4. 已将google()包含在android / build.gradle
  5. allprojects 存储库中

this official documentation对我有很大帮助(我只是遵循了所有步骤)。

答案 11 :(得分:0)

我发现,即使我没有使用Analytics(分析)(仅使用函数和firestore),也必须在build.gradle文件中添加Analytics(分析)行,或者:

implementation 'com.google.firebase:firebase-analytics:17.5.0'

以便自动检测应用程序。

我认为,如果您知道自己在做什么,并且不需要分析,则可以跳过此步骤。

答案 12 :(得分:0)

按照Waizard中提到的确切版本进行操作,它将显示成功。

对我有用。

答案 13 :(得分:0)

Firebase不利于分析。 google从此将Google Analytics(分析)与firebase合并,然后发生了这个令人讨厌的问题。以前,Google Analytics(分析)可以在几秒钟内出色地工作。现在我们没有选项,只是跳过此步骤,希望它会在一段时间后自动运行。

答案 14 :(得分:0)

如果任何人在控制台中都变得像这样:

com.google.firebase.FirebaseException: An internal error has occurred. [ API key not valid. Please pass a valid API key. ]

只需在项目级别gradle更改google服务的版本并同步您的项目并重新安装即可。

classpath'com.google.gms:google-services:4.3.0'

为我工作 我

答案 15 :(得分:0)

如果应用程序仍然为空,则需要在清单中添加Internet权限。 text .replace(/[^a-z0-9 ]/gi,'') .match(/([^\s]+\s+){500}/)

答案 16 :(得分:-1)

您不会被我的朋友困住,只需执行以下步骤: 1.转到您的android studio项目,然后单击Main_activity.xml以显示您的应用 2.单击运行菜单,然后在真实设备或仿真器中运行应用程序 3.加载应用程序后,您的连接将在firebase中成功

答案 17 :(得分:-2)

如果您在物理Android设备上运行该应用程序,请确保该应用程序具有与用于注册Firebase相同的Google帐户。