Firebase - GetTokenResult, getExpirationTimestamp () не найден - PullRequest
0 голосов
/ 07 октября 2018

Ниже приведен код для получения токена и его срока действия для пользователя Firebase:

fun refreshToken(apiBlock: (() -> Unit)? = null) {
    val firebaseUser = FirebaseAuth.getInstance().currentUser
    if (firebaseUser != null) {
        firebaseUser.getIdToken(false)
                .addOnCompleteListener { task ->
                    if (task.isSuccessful) {
                        generatedToken = task.result.token
                        val tokenExpirationTime = task.result.expirationTimestamp
                        apiBlock?.invoke()
                    } else {
                        // Handle error -> task.getException();
                    }
                }
    }
}

Однако я получаю ошибку компиляции в следующей строке:

val tokenExpirationTime = task.result.expirationTimestamp

Когда япытался проверить существование этого метода в декомпилированном классе, я не мог получить такой метод:

package com.google.firebase.auth;

import android.support.annotation.Nullable;
import com.google.android.gms.common.internal.Hide;

public class GetTokenResult {
    private String zzeia;

    @Hide
    public GetTokenResult(String var1) {
        this.zzeia = var1;
    }

    @Nullable
    public String getToken() {
        return this.zzeia;
    }
}

Однако, согласно Ссылка на класс GetTokenResult , должен быть метод getExpirationTimestamp ():

getExpirationTimestamp () Возвращает время в миллисекундах с той эпохи, когда истекает срок действия этого токена ID

Я что-то здесь упустил?

1 Ответ

0 голосов
/ 07 октября 2018

Я попробовал, код хорошо компилируется.Это версия Firebase в моем проекте, попробуйте установить тот же

implementation 'com.google.firebase:firebase-core:16.0.3'
implementation 'com.google.firebase:firebase-auth:16.0.3'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...