Java 更新刷新令牌身份验证

Java 更新刷新令牌身份验证,java,android,retrofit,Java,Android,Retrofit,这是我的令牌访问方法。我有一个api,其中有令牌,5分钟后到期。我得到了令牌,但我不知道如何获得新令牌,如果它在5分钟后到期,我正在使用改型 私有静态字符串mToken,电子邮件=”xxx@gmail.com,password=“1234” public void loginProcess(){ 用户=新用户(电子邮件、密码); Call Call=userClient.login(用户); call.enqueue(新回调(){ @凌驾 公共void onResponse(调用、响应){ if

这是我的令牌访问方法。我有一个api,其中有令牌,5分钟后到期。我得到了令牌,但我不知道如何获得新令牌,如果它在5分钟后到期,我正在使用改型

私有静态字符串mToken,电子邮件=”xxx@gmail.com,password=“1234”

public void loginProcess(){
用户=新用户(电子邮件、密码);
Call Call=userClient.login(用户);
call.enqueue(新回调(){
@凌驾
公共void onResponse(调用、响应){
if(response.issusccessful()){
mToken=response.body().getToken();
Call call1=userClient.user(mToken);//传递了令牌
}
}
@凌驾
失败时公共无效(调用调用,可丢弃的t){
Toast.makeText(MainActivity.this,“错”,Toast.LENGTH_SHORT.show();
}
});

您可以使用
倒计时
并将其设置为5分钟,然后在
onFinish
方法调用
loginProcess
并调用
倒计时
self方法在每5分钟检查您的令牌

这工作正常,但日志中有很多错误,我似乎需要稍微更改一下。请接受我的答案发誓
public void loginProcess() {
    User user = new User(email,password);
    Call<Login> call = userClient.login(user);
    call.enqueue(new Callback<Login>() {
        @Override
        public void onResponse(Call<Login> call, Response<Login> response) {
            if(response.isSuccessful()){
                mToken = response.body().getToken();
                Call<ResponseBody> call1 = userClient.user(mToken);//passed the token   
            }
        }

        @Override
        public void onFailure(Call<Login> call, Throwable t) {
            Toast.makeText(MainActivity.this,"Wrong",Toast.LENGTH_SHORT).show();
        }
    });