2016-07-04 171 views
9

我在寻找一种方法来检查我的用户是否已使用Google登录登录。Android Google登录:请检查用户是否已登录

我支持多种日志记录API(Facebook,谷歌,自定义),所以我想建造像一个静态辅助方法: User.isUserLoggedIn()

随着Facebook的使用:

if AccessToken.getCurrentAccessToken() != null { 
    return true 
} 

检查用户通过Facebook登录。

在我使用以下方法来检查,如果用户通过谷歌登录登录iOS版:

GIDSignIn.sharedInstance().hasAuthInKeychain() 

我的问题: 是否有关于Android的一个相当于iOS的方法:

GIDSignIn.sharedInstance().hasAuthInKeychain()

我正在寻找一种不涉及回调的方法。

谢谢! 最大

+1

使用Shared Prefrence在用户登录时执行此操作使布尔值为true并打开Oncreate检查天气布尔值是否为true –

+0

也许[this](http://stackoverflow.com/a/22527038/1563878)将会很有用 –

回答

6

the Android sign-in documentation看看:

要检查用户是否登录的,请拨打isConnected()

if (mGoogleApiClient != null && mGoogleApiClient.isConnected()) { 
    // signed in. Show the "sign out" button and explanation. 
    // ... 
} else { 
    // not signed in. Show the "sign in" button and explanation. 
    // ... 
} 
0

实现在科特林,并使用安口:

val googleSignInAccount = GoogleSignIn.getLastSignedInAccount(act) 
    if (googleSignInAccount != null) { 
     getGoogleSignInClient().signOut() 
    }