如何在Android中添加google-services.json文件?

69
错误内容为:

错误是:

文件 google-services.json 不存在于模块根目录中。没有该文件,Google Quickstart 插件无法正常工作。


1
我已经将它添加到应用程序文件夹中,尽管出现了这个错误。 - Lalit Kushwah
9个回答

33
以上提出的问题已经根据developer.google.com上的文档得到解决。https://developers.google.com/cloud-messaging/android/client#get-config
 

2018年修改:GCM已弃用,请使用FCM

文件google-services.json应复制到app/目录中。之后,当我用gradle文件同步项目时会出现意外的顶层异常错误。这是因为:

项目级Gradle文件中有:

dependencies {
    classpath 'com.android.tools.build:gradle:1.0.0'
    classpath 'com.google.gms:google-services:1.3.0-beta1'
}

同时具有应用级别的Gradle文件:

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:22.1.1'
    compile 'com.google.android.gms:play-services:7.5.0' // commenting this lineworks for me
}

顶部的那一行代码与 classpath 'com.google.gms:google-services:1.3.0-beta1' 冲突了,所以我现在注释掉它,这样就可以正常工作了,没有 "File google-services.json is missing from module root folder. The Google Quickstart Plugin cannot function without it." 这个错误了。


1
我不小心把它放在了根目录,但是将其放在根目录下的app文件夹中解决了问题。 - Aishwat Singh
https://developers.google.com/cloud-messaging/android/client#get-config 返回 404 "页面未找到" 错误页面。 - l --marc l

24
文档指出:

将文件复制到Android Studio项目的app/文件夹中,或者如果您正在使用多个构建类型,则将其复制到app/src/{build_type}文件夹中。


22

应该在项目 -> app文件夹中。

请查看Firebase网站的截图

输入图片描述


9

不要按照Firebase文档中给出的方式将文件放在根目录中,而是将Google JSON文件复制到项目名称/应用程序的根目录中即可正常工作。这很简单!


3

WINDOWS

  1. 在Android Studio中打开终端窗口(Alt+F12或View->Tool Windows->Terminal),然后输入

"move file_path/google-services.json app/"

不需要双引号。

例如:

move C:\Users\siva\Downloads\google-services.json app/

LINUX

  1. 打开Android Studio终端,输入以下命令

scp file_path/google-services.json app/

例如:

scp '/home/developer/Desktop/google-services.json' 'app/'

2
  1. 从Firebase下载“google-service.json”文件
  2. 在Windows资源管理器中前往此地址:“C:\Users\Your-Username\AndroidStudioProjects”,您将看到您的Android Studio项目列表
  3. 打开所需的项目,导航到“app”文件夹并粘贴.json文件
  4. 转到Android Studio,单击下拉菜单中的“与文件系统同步”(文件>与文件系统同步)
  5. 现在与Gradle同步,一切都应该正常

2

在Android Studio中,在应用程序上方即android(下拉列表)的右侧单击。从下拉菜单中选择项目,通过在应用程序包上右键单击并同步来粘贴json文件....


粘贴从哪里? - djdance

2
这个错误提示表明你在google-services.json文件中的package_name可能是错误的。我个人在使用时也碰到了这个问题。
buildTypes {
    ...

    debug {
        applicationIdSuffix '.debug'
    }
}

在我的build.gradle文件中,当我想要调试时,应用程序的名称突然变成了app.something.debug而不是app.something。当我更改了所述的package_name后,我能够运行调试...


解决方案是这个:https://dev59.com/-qXja4cB1Zd3GeqPPVFa#46320303 - MatPag

0

google-services.json文件像API密钥一样工作,这意味着它以json格式存储您的project_id和api密钥,用于所有启用了的谷歌服务(由您在谷歌控制台上启用),因此无需在不同位置管理所有内容。

使用google-services.json时的重要流程

在应用gradle中应添加

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

在顶层Gradle中,您应该添加以下依赖项

  dependencies {
        // Add this line
        classpath 'com.google.gms:google-services:3.0.0'
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }

1
您可以从Google控制台下载并放置在应用程序位置。 - ViramP
ViramP,很抱歉,我们在新的AS中使用自动助手。我已经找到了原因,助手偶尔会停止工作,只需要重新运行即可。 - djdance

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接