gpt4 book ai didi

java - Activity 无法转换为 com.google.android.gms.common.api.GoogleApiClient$ConnectionCallbacks

转载 作者:行者123 更新时间:2023-11-30 10:31:44 25 4
gpt4 key购买 nike

我从另一个类调用 checkLocationOn 方法作为

 // Change Address Click Action
tvProfileChangeAddress.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (Build.VERSION.SDK_INT >= 23) {
if ((checkSelfPermission(android.Manifest.permission.ACCESS_FINE_LOCATION)
== PackageManager.PERMISSION_GRANTED)) {
GetLocation.checkLocationOn(Profile.this);
}else{
AskPermissions.AskLocationPermission(Profile.this);
}
} else {
GetLocation.checkLocationOn(Profile.this);
}
}
});

我已经在 CheckLocation 方法中初始化了我的 GoogleApiClient。

 // Building Google API Client
protected static synchronized void buildGoogleApiClient(Context context){
mGoogleApiClient = new GoogleApiClient.Builder(context)
.addApi(LocationServices.API)
.addConnectionCallbacks((GoogleApiClient.ConnectionCallbacks) context)
.addOnConnectionFailedListener((GoogleApiClient.OnConnectionFailedListener) context)
.build();
mGoogleApiClient.connect();
createLocationRequest();
return;

}

在初始化 GoogleApiClient 时我的应用程序强制停止给出错误

03-27 16:43:13.930 5118-5118/? E/AndroidRuntime: FATAL EXCEPTION: main Process: com.demo.FetchLocation, PID: 5118 java.lang.ClassCastException: com.demo.FetchLocation.Profile cannot be cast to com.google.android.gms.common.api.GoogleApiClient$ConnectionCallbacks at com.demo.FetchLocation.GetLocation.buildGoogleApiClient(GetLocation.java:75) at com.demo.FetchLocation.GetLocation.checkLocationOn(GetLocation.java:68) at com.demo.FetchLocation.Profile$2.onClick(Profile.java:128) at android.view.View.performClick(View.java:5269) at android.view.View$PerformClick.run(View.java:21556) at android.os.Handler.handleCallback(Handler.java:815) at android.os.Handler.dispatchMessage(Handler.java:104) at android.os.Looper.loop(Looper.java:207) at android.app.ActivityThread.main(ActivityThread.java:5769) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:789) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:679)

有人对此有解决方案吗??

最佳答案

让您的Profile Activity 同时实现GoogleApiClient.ConnectionCallbacksGoogleApiClient.OnConnectionFailedListener 接口(interface)。

当你执行以下操作时,

.addConnectionCallbacks((GoogleApiClient.ConnectionCallbacks) context)
.addOnConnectionFailedListener((GoogleApiClient.OnConnectionFailedListener) context)

您实际上并没有在传递的上下文中实现任何这些接口(interface),在您的情况下,它属于 Profile Activity 。

关于java - Activity 无法转换为 com.google.android.gms.common.api.GoogleApiClient$ConnectionCallbacks,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43045984/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com