private UpdateInfo getNewestUpdateInfo() throws AVException {
   AVQuery<UpdateInfo> query = AVObject.getQuery(UpdateInfo.class);
   query.setLimit(1);
   query.orderByDescending(UpdateInfo.VERSION);
   if (policy != null) {
     query.setCachePolicy(policy);
   }
   List<UpdateInfo> updateInfos = query.find();
   if (updateInfos.size() > 0) {
     return updateInfos.get(0);
   }
   return null;
 }