我认为这很简单,但我一直在兜圈子,试图找出如何让用户保持登录状态Activities
.
我有一个“主要”和一个“详细信息”Activity
。用户登录Google Play Services
在“主要”Activity
我想在“详细信息”中提交成就和排行榜数据Activity
.
我继承自BaseGameActivity
同时Activities
并使用:
mGoogleApiClient = getApiClient();
在“详细信息”中,但是当我打电话时isConnected
它总是返回false
.
我什至尝试从“Main”复制所有登录/回调代码Activity
结束了,但是仍然没有检测到用户已登录。
这篇文章建议不要使用BaseGameActivity
并通过GameHelper
用一个singleton
:
如何在多个活动中使用BaseGameActivity.getApiClient()?
不确定正确的方法是什么。
最简单的方法是让这两个活动创建一个单独的 api 客户端实例。连接的状态在它们内部共享,因此您无需担心如何传递客户端并处理 Activity 不活动时可能发生的回调,并且玩家只会登录您的主要 Activity。
实际上不再需要从 BaseGameActivity 扩展您的活动(有关有趣的解释,请观看:基本游戏活动之死。您需要做的是实现处理初始化 GoogleAPIClient 的两个接口:
public class MainActivity extends Activity implements
GoogleApiClient.ConnectionCallbacks,
GoogleApiClient.OnConnectionFailedListener {
}
要实现这些,请参阅示例和文档:https://developers.google.com/games/services/android/init
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)