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'
4
4
apply plugin : ' maven-publish'
5
5
6
6
buildscript {
7
- ext. versionCode = 20
8
- ext. versionName = ' 0.8.1 '
7
+ ext. versionCode = 21
8
+ ext. versionName = ' 0.8.2 '
9
9
}
10
10
11
11
android {
Original file line number Diff line number Diff line change @@ -9,20 +9,25 @@ fun Pluto.getAccessToken(
9
9
completion : (String? ) -> Unit ,
10
10
handler : Pluto .PlutoRequestHandler ? = null
11
11
) {
12
+ if (state != Pluto .State .signIn) {
13
+ completion(null )
14
+ return
15
+ }
12
16
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
21
26
}
22
27
completion(data.accessToken)
23
28
}
24
29
25
- private fun Pluto.refreshToken (
30
+ fun Pluto.refreshAccessToken (
26
31
completion : (String? ) -> Unit ,
27
32
handler : Pluto .PlutoRequestHandler ? = null
28
33
) {
Original file line number Diff line number Diff line change @@ -27,7 +27,7 @@ open class PlutoResponse(
27
27
success()
28
28
} else {
29
29
when (errorCode) {
30
- PlutoError .invalidRefreshToken -> {
30
+ PlutoError .invalidRefreshToken, PlutoError .invalidAccessToken -> {
31
31
Pluto .getInstance()?.let {
32
32
it.data.clear()
33
33
it.state.value = Pluto .State .invalidRefreshToken
You can’t perform that action at this time.
0 commit comments