/**
   * 从sdcard中获取内存缓存
   *
   * @param url 图片url地址
   * @param buffer 填充缓存区
   * @return 是否获得图片
   */
  public boolean getImageData(String url, BytesBuffer buffer) {
    if (mDiskCache == null) return false;

    byte[] key = Utils.makeKey(url);
    long cacheKey = Utils.crc64Long(key);
    try {
      LookupRequest request = new LookupRequest();
      request.key = cacheKey;
      request.buffer = buffer.data;
      synchronized (mDiskCache) {
        if (!mDiskCache.lookup(request)) return false;
      }
      if (Utils.isSameKey(key, request.buffer)) {
        buffer.data = request.buffer;
        buffer.offset = key.length;
        buffer.length = request.length - buffer.offset;
        return true;
      }
    } catch (IOException ex) {
      // ignore.
    }
    return false;
  }