예제 #1
0
 /** 开始定时任务,失效期到时,执行清理cache */
 private static synchronized void startSchedule() {
   Timer timer = new Timer();
   timer.schedule(
       new TimerTask() {
         @Override
         public void run() {
           AccessTokenManager.clearCache();
         }
       },
       ACCESS_TOKEN_CACHE.getExpiresIn() * 1000);
 }
예제 #2
0
 /**
  * 获取accessToken <br>
  * 如果当前的token已经过期,会从微信服务器重新取一次 <br>
  * 如果当前的token未过期,直接返回当前的token
  *
  * @return accessToken
  */
 public static String getAccessToken() {
   if (null == ACCESS_TOKEN_CACHE) {
     synchronized (AccessTokenManager.class) {
       if (null == ACCESS_TOKEN_CACHE) {
         ACCESS_TOKEN_CACHE = getAccessTokenFromWX();
         startSchedule();
       }
     }
   }
   return ACCESS_TOKEN_CACHE.getAccessToken();
 }