gpt4 book ai didi

android - fragment 中的 FusedLocationApi MapView - addConnectionCallbacks、onConnectionSuspended

转载 作者:行者123 更新时间:2023-11-29 15:55:34 24 4
gpt4 key购买 nike

我在一个 fragment 中有一个 MapView,我遇到了两个似乎找不到解决方案的问题。我已经搜索过,但我没有看到其他人遇到这些问题。供引用,我主要关注this开发者页面上的教程。

这是我的 fragment :

public class MapFragment extends Fragment
implements GooglePlayServicesClient.ConnectionCallbacks,
GooglePlayServicesClient.OnConnectionFailedListener,
LocationListener

第一个问题在这里:

 mGoogleApiClient = new GoogleApiClient.Builder(getActivity())
.addApi(LocationServices.API)
.addConnectionCallbacks(this) //problem!
.addOnConnectionFailedListener(this) //problem!
.build();

调用 addConnectionCallbacks(this) 会出现错误,指出它无法应用于 myPackageName.MapFragment。我知道您必须在此处传递 GoogleApiClient.ConnectionCallbacks 监听器,但我看到的每个示例都使用 this,但我不确定该怎么做。同样的问题出现在 addOnConnectionFailedListener 中。在我的 fragment 中,我已经实现了所有必要的方法,例如 onLocationChanged()

第二个问题在这里:

@Override
public void onConnectionSuspended(int i)
{
Log.i(TAG_MAP_FRAGMENT, "GoogleApiClient connection has been suspended");
}

这会给出一条错误消息:Method does not override method from its superclass。我已经搜索过,但找不到遇到此问题的其他人。我不确定如何处理它。

有人知道如何解决这些问题吗?感谢您的帮助!

最佳答案

代替:

implements GooglePlayServicesClient.ConnectionCallbacks,
GooglePlayServicesClient.OnConnectionFailedListener

尝试:

implements GoogleApiClient.ConnectionCallbacks,
GoogleApiClient.OnConnectionFailedListener

这解决了上面最初发布的所有三个问题。 但是,现在方法onDisconnected() 被标记为错误method does not override method from superclass

当您同时使用所有四个时,错误已修复:

implements GooglePlayServicesClient.ConnectionCallbacks,
GooglePlayServicesClient.OnConnectionFailedListener,
GoogleApiClient.ConnectionCallbacks,
GoogleApiClient.OnConnectionFailedListener

这看起来并不理想,但它确实有效,至少目前如此。如果您偶然发现这个问题并且知道更好的解决方法,请留下回复。

关于android - fragment 中的 FusedLocationApi MapView - addConnectionCallbacks、onConnectionSuspended,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28259518/

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