gpt4 book ai didi

android - 在 fragment 中使用 enableAutoManage()

转载 作者:IT老高 更新时间:2023-10-28 22:16:02 26 4
gpt4 key购买 nike

还有其他方法可以连接 Google API 客户端吗?

我使用自动完成的地方,我必须在 MYFRAGMENT 中的某个地方使用此代码

mGoogleApiClient = new GoogleApiClient.Builder(MainActivity.this)
.addApi(Places.GEO_DATA_API)
.enableAutoManage(this, GOOGLE_API_CLIENT_ID, this)
.addConnectionCallbacks(this).build();

我的问题

enableAutoManage(this, GOOGLE_API_CLIENT_ID, this)
.addConnectionCallbacks(this).build();

我无法处理它,因为当我用 getActivity() 替换 this 时,我在转换时遇到了很多问题

感谢您的帮助,如果这个问题很愚蠢,我们深表歉意。

最佳答案

如果你想使用 enableAutoManage 那么你必须让你的 Activity 扩展 FragmentActivityGoogleApiClient 的自动管理需要它进行的回调才能工作。因此,最简单的解决方案是将 extends FragmentActivity 添加到您的 Activity 中。这样你的 Actor 就不会失败并导致应用在运行时崩溃。

另一种解决方案是自己管理 api 客户端。您将从构建器中删除 enableAutoManage 行,并确保您自己从客户端 connect/disconnect。最常见的地方是 onStart()/onStop()。比如……

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mGoogleApiClient = new GoogleApiClient.Builder(MainActivity.this)
.addApi(Places.GEO_DATA_API)
.addConnectionCallbacks(this).build();
}

@Override
protected void onStart() {
super.onStart();
mGoogleApiClient.connect();
}

@Override
protected void onStop() {
super.onStop();
mGoogleApiClient.disconnect();
}

关于android - 在 fragment 中使用 enableAutoManage(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30622906/

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