2016-09-27 163 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);