【问题标题】:Can i use Glide to cache images without displaying them我可以使用 Glide 缓存图像而不显示它们吗
【发布时间】:2018-08-04 11:11:58
【问题描述】:

我有一个提要向我发送logos 的列表

{
  "logos": {
    "GoogleLogo": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTEC8Plg0onmk5-0lHzN74023FJaH_N_4prUSlBBaUR9FqmjbfVhA"
  }
}

此提要向我发送了大约 30 个徽标。

我要做的是在用户第一次启动应用程序时点击此服务,并使用Glide缓存所有图像。

所以在应用程序中,每当我使用以下方法时,它都不会点击服务,并立即向用户显示图像。

  GlideApp
    .with(myFragment)
    .load(url)
    .centerCrop()
    .placeholder(R.drawable.loading_spinner)
    .into(myImageView);

我将创建一个HashMap<String, String>,它将logo name 作为键,URL 作为值。

我的问题是 Glide 中是否有任何方法可以用来缓存图像而不显示它们。

【问题讨论】:

    标签: android performance android-layout android-glide


    【解决方案1】:

    是的,使用 FutureTarget 您可以在后台加载图像。

    启动 Intent 服务并以onHandleIntent 方法加载图像。喜欢,

    String data = intent.getStringExtra("data");
        try {
            JSONObject jsonObject = new JSONObject(data);
            JSONArray jsonArray = jsonObject.getJSONObject("data").getJSONArray("res");
            for (int i = 0; i < jsonArray.length(); i++) {
                if (common.getNetworkType().equalsIgnoreCase("-")) {
                    stopSelf();
                    break;
                } else {
                    JSONObject jObj = jsonArray.getJSONObject(i);
                    FutureTarget<File> future = Glide.with(this).load(common.completeURL(jObj.getString("AvatarImage"))).downloadOnly(400, 400);
                    try {
                        future.get();
                        break;
                    } catch (InterruptedException e) {
                        stopSelf();
                        break;
                    } catch (ExecutionException e) {
                        stopSelf();
                        break;
                    }
                }
    
            }
        } catch (Exception e) {
            stopSelf();
            logger.w(TAG, "onHandleIntent: ", e);
        }
    

    【讨论】:

      猜你喜欢
      • 2020-09-23
      • 1970-01-01
      • 2017-02-06
      • 1970-01-01
      • 2016-07-13
      • 1970-01-01
      • 2015-09-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多