Android 代币以及如何处理它们

Android 代币以及如何处理它们,android,Android,我正在开发一个应用程序,将数据拉入并推送到服务器 为了防止不希望的Web服务使用,我们建立了一个每隔一段时间更新一次的令牌系统 我正在创建一个方法,该方法将在每个webservices调用之前检查令牌是否不为null 比如: public boolean isTokenValid(){ if (token == null){ renewToken(); return false; } return true; } 同样的方式,如果我得到令

我正在开发一个应用程序,将数据拉入并推送到服务器

为了防止不希望的Web服务使用,我们建立了一个每隔一段时间更新一次的令牌系统

我正在创建一个方法,该方法将在每个webservices调用之前检查令牌是否不为null

比如:

public boolean isTokenValid(){
    if (token == null){
        renewToken();
        return false;
    }
    return true;
}
同样的方式,如果我得到令牌过期的服务器错误代码,我会调用
renewToken()

我的问题:

如何在接收有效令牌时再次调用我的方法?请记住,之后调用的方法是“动态的”:该方法可以从任何Web服务调用,因此需要它再次运行此调用

潜在解决方案:

1) 创建尽可能多的令牌更新方法

例如:renewTokenGetProduct()、renewTokenGetProfile()。。。要知道在获取有效令牌时要调用哪个Web服务。但这似乎不太合适


2) 我还可以传递一个参数。例如,RenewatToken(产品)或RenewatToken(配置文件),然后使用条件或广播,但在我看来,这又有点过分/草率。

从api方面尝试为令牌添加一个参数

比如令牌和类别

所以

然后在续订令牌中:

if(category.equals("profile"){
  //do necessary work
}
else if(category.equals("product"){
  //do necessary work or pass intent
}
else{
  //
}
if(category.equals("profile"){
  //do necessary work
}
else if(category.equals("product"){
  //do necessary work or pass intent
}
else{
  //
}