File tree Expand file tree Collapse file tree 3 files changed +17
-12
lines changed
src/main/java/com/mushare/plutosdk Expand file tree Collapse file tree 3 files changed +17
-12
lines changed Original file line number Diff line number Diff line change @@ -4,8 +4,8 @@ apply plugin: 'kotlin-android-extensions'
44apply plugin : ' maven-publish'
55
66buildscript {
7- ext. versionCode = 20
8- ext. versionName = ' 0.8.1 '
7+ ext. versionCode = 21
8+ ext. versionName = ' 0.8.2 '
99}
1010
1111android {
Original file line number Diff line number Diff line change @@ -9,20 +9,25 @@ fun Pluto.getAccessToken(
99 completion : (String? ) -> Unit ,
1010 handler : Pluto .PlutoRequestHandler ? = null
1111) {
12+ if (state != Pluto .State .signIn) {
13+ completion(null )
14+ return
15+ }
1216 val accessToken = data.accessToken
13- val expire = data.expire
14- if (isForceRefresh || accessToken == null || expire == null || expire - System .currentTimeMillis() / 1000 < 5 * 60 ) {
15- refreshToken({
16- if (it == null ) {
17- data.clear()
18- }
19- completion(it)
20- }, handler)
17+ val expire = data.expire ? : 0
18+ if (isForceRefresh || accessToken == null || expire - System .currentTimeMillis() / 1000 < 30 ) {
19+ refreshAccessToken(
20+ completion = {
21+ completion(it)
22+ },
23+ handler = handler
24+ )
25+ return
2126 }
2227 completion(data.accessToken)
2328}
2429
25- private fun Pluto.refreshToken (
30+ fun Pluto.refreshAccessToken (
2631 completion : (String? ) -> Unit ,
2732 handler : Pluto .PlutoRequestHandler ? = null
2833) {
Original file line number Diff line number Diff line change @@ -27,7 +27,7 @@ open class PlutoResponse(
2727 success()
2828 } else {
2929 when (errorCode) {
30- PlutoError .invalidRefreshToken -> {
30+ PlutoError .invalidRefreshToken, PlutoError .invalidAccessToken -> {
3131 Pluto .getInstance()?.let {
3232 it.data.clear()
3333 it.state.value = Pluto .State .invalidRefreshToken
You can’t perform that action at this time.
0 commit comments