Android 在活动之间保持Google Play服务登录
我原以为这很简单,但我一直在周而复始地试图弄清楚如何让用户在Android 在活动之间保持Google Play服务登录,android,android-activity,google-play-services,google-play-games,Android,Android Activity,Google Play Services,Google Play Games,我原以为这很简单,但我一直在周而复始地试图弄清楚如何让用户在活动之间登录 我有一个“Main”和一个“Details”活动。用户在“Main”活动中登录到googleplayservices,我想在“Details”活动中提交成绩和排行榜数据 我继承了BaseGameActivity中的Activities并使用: mGoogleApiClient = getApiClient(); 但是,在“详细信息”中,当我调用isConnected时,它总是返回false 我甚至尝试从“Main”活动
活动之间登录
我有一个“Main”和一个“Details”活动
。用户在“Main”活动中登录到googleplayservices
,我想在“Details”活动中提交成绩和排行榜数据
我继承了BaseGameActivity
中的Activities
并使用:
mGoogleApiClient = getApiClient();
但是,在“详细信息”中,当我调用isConnected
时,它总是返回false
我甚至尝试从“Main”活动
复制所有登录/回调代码,但仍然没有检测到用户登录
这篇帖子建议不要使用BaseGameActivity
并使用singleton
传递GameHelper
:
不确定正确的方法是什么。最简单的方法是让两个活动创建一个单独的api客户端实例。连接的状态在它们之间是内部共享的,因此您不需要担心如何传递客户端和处理活动未激活时可能发生的回调,并且播放器将只登录您的主活动
从BaseGameActivity扩展您的活动真的不再需要了(对于一个有趣的解释:。您需要做的是实现处理初始化GoogleAppClient的两个接口:
public class MainActivity extends Activity implements
GoogleApiClient.ConnectionCallbacks,
GoogleApiClient.OnConnectionFailedListener {
}
要实现这些,请参考示例和文档:该视频很搞笑。该死,这就是我最初实现API的方式,将其更改为使用BaseGameActivity。我想我将恢复。谢谢。