2016-09-27 125 views
1

我正在开发一个Android应用程序,需要accesstoken所有api callsAccessToken期限是10个min.I正在使用retrofitapi calls后。目前我在做什么用getAccessToken()方法和响应首先得到一个accesstoken我做其他api calls所以它证实了其他api calls(如获取用户信息)由后才得到accesstoken。这工作正常,但由于在我的应用程序中有很多api调用,我需要在每个类(片段或活动)中编写相同的代码getAccessToken()方法,并在响应中写入相应的api calls
那么有没有什么办法可以避免在每个班级中出现这种重复的代码,或者我正在做正确的做法。Android:刷新使用异步调用accesstoken改造

回答

1

尝试一个静态函数。

public class Utility { 
    public static String getAccessToken(Context context) { 
     //Do the calculation here 
     return accessToken; 
    } 
} 

通过

Utility.getAccessToken(context); 
0

援引每当你从你的活动需要的accessToken或片段这种方法可以使用 Retrofit Interceptors

比使用改造通过你的interptor的每个请求都获得你的access_token。

它会看起来像在你的拦截器:

Request request = chain.request(); 
request.header("header_name", Utility.getAccessToken()); 
Response response = chain.proceed(request);