RuntimeExecutionException:com.google.android.gms.common.api.ApiException:13:错误Places API [英] RuntimeExecutionException: com.google.android.gms.common.api.ApiException: 13: ERROR Places API
问题描述
我在尝试使用Google Places API以获取当前位置在Android中。
过程:me.nabeelkottol.linkedinplaces,PID:2995
com .google.android.gms.tasks.RuntimeExecutionException:
com.google.android.gms.common.api.ApiException:13:错误
,位于com.google.android.gms.tasks.zzn.getResult (未知来源)
at
me.nabeelkottol.linkedinplaces.MainActivity $ 1.onComplete(MainActivity.java:71)
at com.google.android.gms.tasks.zzf.run(未知来源)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper .loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
在com.android.internal.os.ZygoteInit $ MethodAn dArgsCaller.run(ZygoteInit.java:726)
在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
引起:com.google.android.gms.common。 api.ApiException:13:错误
在com.google.android.gms.common.internal.zzb.zzz(未知源)
在com.google.android.gms.common.internal.zzbk。 zzaa(未知来源)
在com.google.android.gms.common.internal.zzbl.zzs(未知来源)
在com.google.android.gms.common.api.internal.zzs。 zzc(未知来源)
在com.google.android.gms.common.api.internal.zzs.setResult(未知来源)
在com.google.android.gms.location.places.zzm。 zzao(未知来源)
在com.google.android.gms.location.places.internal.zzx.onTransact(未知来源)
在android.os.Binder.execTransact(Binder.java:453)
这是我的代码:
try {
任务< PlaceLikelihoodBufferResponse> placeResult = mPlaceDetectionClient.getCurrentPlace(null);
placeResult.addOnCompleteListener(new OnCompleteListener< PlaceLikelihoodBufferResponse>(){
@Override public void onComplete(@NonNull Task< PlaceLikelihoodBufferResponse>任务){
PlaceLikelihoodBufferResponse likelyPlaces = task.getResult );
for(PlaceLikelihood placeLikelihood:likelyPlaces){
Log.i(TAG,
String.format(Place'%s'有可能性:%g,placeLikelihood.getPlace() .getName(),
placeLikelihood.getLikelihood()));
}
likelyPlaces.release();
});
} catch(SecurityException e){
e.printStackTrace();
$ b $ p
$ b这里行 PlaceLikelihoodBufferResponse likelyPlaces = task.getResult( );
给了我错误信息。
我创建了一个 API键
Android应用程序通过从 Google API控制台
提供程序包名称和SHA-1密钥进行调试。并且在库
部分中为android
启用了Google Places API。它仍然给出同样的错误。不知道实施有什么问题。请帮助我。
问题在github上报告过。
这是我的 app / build.gradle $ c $
$ p $ apply plugin:'com.android.application'
android {
compileSdkVersion 26
defaultConfig {
applicationIdme.nabeelkottol.linkedinplaces
minSdkVersion 16
targetSdkVersion 26
versionCode 1
versionName1.0
testInstrumentationRunnerandroid.support.test.runner.AndroidJUnitRunner
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt') ,'proguard-rules.pro'
}
}
}
依赖项{
implementation fileTree(dir:'libs',include:[' *。罐'])
implementation'com.android.support:appcompat-v7:26.1.0'
implementation'com.android.support.constraint:constraint-layout:1.0.2'
compile 'com.google.android.gms:play-services-places:11.6.0'
testImplementation'junit:junit:4.12'
androidTestImplementation'com.android.support.test:runner:1.0.1 '
androidTestImplementation'com.android.support.test.espresso:espresso-core:3.0.1'
}
这是我的 AndroidManifest.xml
。
<?xml version =1.0encoding =utf-8?>
< manifest xmlns:android =http://schemas.android.com/apk/res/android
package =me.nabeelkottol.linkedinplaces>
<使用权限android:name =android.permission.ACCESS_FINE_LOCATION/>
< uses-permission android:name =android.permission.INTERNET/>
< application
android:allowBackup =true
android:icon =@ mipmap / ic_launcher
android:label =@ string / app_name
android:roundIcon =@ mipmap / ic_launcher_round
android:supportsRtl =true
android:theme =@ style / AppTheme>
< meta-data
android:name =com.google.android.geo.API_KEY
android:value =我的API密钥在这里/>
< activity android:name =。MainActivity>
< intent-filter>
< category android:name =android.intent.category.LAUNCHER/>
< / intent-filter>
< / activity>
< / application>
< / manifest>
在清单中添加以下代码
<元数据
android:name =com.google.android.gms.version
android:value =@ integer / google_play_services_version/>
I am getting the following exception while trying out google places API to get likelihood places for Current Place in android.
Process: me.nabeelkottol.linkedinplaces, PID: 2995
com.google.android.gms.tasks.RuntimeExecutionException:
com.google.android.gms.common.api.ApiException: 13: ERROR
at com.google.android.gms.tasks.zzn.getResult(Unknown Source)
at
me.nabeelkottol.linkedinplaces.MainActivity$1.onComplete(MainActivity.java:71)
at com.google.android.gms.tasks.zzf.run(Unknown Source)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
Caused by: com.google.android.gms.common.api.ApiException: 13: ERROR
at com.google.android.gms.common.internal.zzb.zzz(Unknown Source)
at com.google.android.gms.common.internal.zzbk.zzaa(Unknown Source)
at com.google.android.gms.common.internal.zzbl.zzs(Unknown Source)
at com.google.android.gms.common.api.internal.zzs.zzc(Unknown Source)
at com.google.android.gms.common.api.internal.zzs.setResult(Unknown Source)
at com.google.android.gms.location.places.zzm.zzao(Unknown Source)
at com.google.android.gms.location.places.internal.zzx.onTransact(Unknown Source)
at android.os.Binder.execTransact(Binder.java:453)
this is my code:
try {
Task<PlaceLikelihoodBufferResponse> placeResult = mPlaceDetectionClient.getCurrentPlace(null);
placeResult.addOnCompleteListener(new OnCompleteListener<PlaceLikelihoodBufferResponse>() {
@Override public void onComplete(@NonNull Task<PlaceLikelihoodBufferResponse> task) {
PlaceLikelihoodBufferResponse likelyPlaces = task.getResult();
for (PlaceLikelihood placeLikelihood : likelyPlaces) {
Log.i(TAG,
String.format("Place '%s' has likelihood: %g", placeLikelihood.getPlace().getName(),
placeLikelihood.getLikelihood()));
}
likelyPlaces.release();
}
});
} catch (SecurityException e) {
e.printStackTrace();
}
Here the line PlaceLikelihoodBufferResponse likelyPlaces = task.getResult();
is giving me the error.
I have created an API key
for the android app by giving the package name and SHA-1 key for debug from Google API console
. And enabled Google Places API for android
in the libraries
section. still its giving the same error. Dont know what is wrong with the implementation. Please help me.
There is an issue reported in github regarding this.
This is my app/build.gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 26
defaultConfig {
applicationId "me.nabeelkottol.linkedinplaces"
minSdkVersion 16
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:26.1.0'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
compile 'com.google.android.gms:play-services-places:11.6.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
}
This is my AndroidManifest.xml
.
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="me.nabeelkottol.linkedinplaces">
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.INTERNET"/>
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<meta-data
android:name="com.google.android.geo.API_KEY"
android:value="My API Key here"/>
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
</application>
</manifest>
Add the below code in manifest
<meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
这篇关于RuntimeExecutionException:com.google.android.gms.common.api.ApiException:13:错误Places API的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!