Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 不能';无法连接到Google API客户端_Android_Google Play Services_Android Geofence - Fatal编程技术网

Android 不能';无法连接到Google API客户端

Android 不能';无法连接到Google API客户端,android,google-play-services,android-geofence,Android,Google Play Services,Android Geofence,我找不到最后一个已知的位置。 我在谷歌控制台中启用了地理编码API和谷歌Places API for Android。 我已将api密钥添加到清单文件: <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" /> <meta-data android:name="com.google.an

我找不到最后一个已知的位置。 我在谷歌控制台中启用了地理编码API谷歌Places API for Android。 我已将api密钥添加到清单文件:

<meta-data
    android:name="com.google.android.gms.version"
    android:value="@integer/google_play_services_version" />
<meta-data
    android:name="com.google.android.geo.API_KEY"
    android:value="@string/google_api_key" />
onConnectedonConnectionFailed不要调用

我也用
但这两种方法都输出到控制台:无法连接到Google API客户端:ConnectionResult{statusCode=API\u不可用,resolution=null}

我遇到了同样的问题

Couldn't connect to Google API client: ConnectionResult{statusCode=API_UNAVAILABLE, resolution=null}
因为API控制台中未启用Google Places API for Android


您是否在google console developer中启用了place API?(在API和Auth菜单中)。 您是否选择了android API密钥


它对我来说很好,所以我不知道它会是什么样子。

您还没有在控制台上激活Google+Api

如果您想使用任何其他API,但需要用户使用Google+帐户登录,则必须启用它

  • 在此处登录:
  • 选择你的项目
  • 在左边找到“API和身份验证”
  • 点击API
  • 在此列表中,您将看到许多可用的API

希望它能起作用

我在使用Google Fit API时遇到了同样的问题。使用与您描述的非常相似的设置,我收到了相同的错误消息:

无法连接到Google API客户端: ConnectionResult{statusCode=API\u不可用,解析=null}

最终的问题是与谷歌登录服务的通信配置。在找到Google文档后,我解决了这个问题:
. 我使用“获取配置文件”部分获取有关检索密钥库的SHA1哈希的说明,然后使用“获取配置文件”按钮启动Google开发者控制台进程,创建一个JSON文件,该文件被放入Android应用程序的“/app”目录中。

我的应用程序使用Google Drive API,我也遇到了同样的问题,“无法连接到Google API客户端:在某些设备上,ConnectionResult{statusCode=API\u不可用,resolution=null}。查看的建议很有帮助,但让我非常困惑:
google-services.json如何影响生成的apk?我是否应该对发布证书等做同样的操作?…
最终我发现了幕后的情况,并透露google-services.json只是可选的

所以这些步骤帮助了我:

  • 打开并打开/创建项目
  • 在侧菜单中打开“API管理器”
  • 在左列点击“凭证”
  • “添加凭据”->“OAuth 2.0客户端ID”->“Android”,并为可用于签署应用程序的每个证书填写凭据,即:发布证书、Jenkins调试证书、本地调试证书
  • 另外,不要忘记检查项目中是否启用了相应的API(请参见步骤1)


    在通过相同的“OAuth 2.0客户端ID”生成google-services.json时,会隐式创建。

    我在这里遇到了类似的问题。 虽然我没有专门使用谷歌API,但我也有这个错误

    我的设想是:我正在制作一个可穿戴应用程序,并希望将数据项从手机发送到可穿戴设备。为此,我使用了GoogleAppClient和Wearable.DataApi

    经过几个小时的努力解决这个问题,我来到了这个帖子:

    文章中对我很重要的部分是:

    当没有Android Wear companion应用程序或设备可用时,请求Wearable.API

    因此,我解决了在手机上安装配套应用程序的问题:


    安装后,ResultCallback开始返回成功。

    请发布您的代码。但我已经为Android启用了Google Places API,我曾写道it@Elenasys:我在生产中也遇到了同样的问题,并在开发中构建了良好的工作。提前感谢。是的,我已经为Android启用了Google Places API,我写过。是的,我已经选择了一个android API密钥。同样的问题在这里丢失了wear companion应用程序。
    import com.google.auth.oauth2.{GoogleCredentials, ServiceAccountCredentials}
    import com.google.cloud.bigquery._
    
    class XYZRawDataIngestion {
     def run(): Unit = {
    
     var credentials: GoogleCredentials = null
     val client_id: String = "10754111315596"
     val client_email: String = "csp-302@xyz.com"
     val private_key = "-----BEGIN PRIVATE KEY-----\nMII9xE9wTn68bxG8W60yU4O+JdullsTX\naOCrYTyVsTK+U78ElELXSqKn+Mqqka/IAS9ETCutLXhMNbTHbDUoN6POzU1c7GGz\nxSAmSXzVz6ejoJ9zoZXCB+cEI/CCne+GoGzg+CUCgYEAuGFxjuFNEAJbOamo6zWu\n/MobrYwqg4W4akwe4bgFE9lbpb3qs5pKhxGz0Utn3fNyhsTwQvgJ5oCBVIRxZwzv\nM8+4aHXGMJLNMf6EpUeoOCWOcp+6kLFNZZF9erUU1d3m+ID4Df4AUijIIG6lUQa1\nLP4eCwDeNpJGFcTQuz18u+U=\n-----END PRIVATE KEY-----\n"
     val private_key_id: String = "79072ec47cc5a70bb4f2da1ccd4a"
     val project_id = "xyz-mgmt"
     val token_uri = new URI("https://oauth2.googleapis.com/token")
    
     credentials = ServiceAccountCredentials.fromPkcs8(client_id, client_email, private_key, private_key_id,
      null, null, token_uri)
    
     val bigquery: BigQuery = BigQueryOptions.newBuilder.setCredentials(credentials).setProjectId(project_id).build().getService()
    
     }
    }
    
    import com.google.auth.oauth2.{GoogleCredentials, ServiceAccountCredentials}
    import com.google.cloud.bigquery._
    
    class XYZRawDataIngestion {
     def run(): Unit = {
    
     var credentials: GoogleCredentials = null
     val client_id: String = "10754111315596"
     val client_email: String = "csp-302@xyz.com"
     val private_key = "-----BEGIN PRIVATE KEY-----\nMII9xE9wTn68bxG8W60yU4O+JdullsTX\naOCrYTyVsTK+U78ElELXSqKn+Mqqka/IAS9ETCutLXhMNbTHbDUoN6POzU1c7GGz\nxSAmSXzVz6ejoJ9zoZXCB+cEI/CCne+GoGzg+CUCgYEAuGFxjuFNEAJbOamo6zWu\n/MobrYwqg4W4akwe4bgFE9lbpb3qs5pKhxGz0Utn3fNyhsTwQvgJ5oCBVIRxZwzv\nM8+4aHXGMJLNMf6EpUeoOCWOcp+6kLFNZZF9erUU1d3m+ID4Df4AUijIIG6lUQa1\nLP4eCwDeNpJGFcTQuz18u+U=\n-----END PRIVATE KEY-----\n"
     val private_key_id: String = "79072ec47cc5a70bb4f2da1ccd4a"
     val project_id = "xyz-mgmt"
     val token_uri = new URI("https://oauth2.googleapis.com/token")
    
     credentials = ServiceAccountCredentials.fromPkcs8(client_id, client_email, private_key, private_key_id,
      null, null, token_uri)
    
     val bigquery: BigQuery = BigQueryOptions.newBuilder.setCredentials(credentials).setProjectId(project_id).build().getService()
    
     }
    }