OkGo使用缓存

添加依赖:

    implementation 'com.lzy.net:okgo:3.0.4'

添加网络权限:

<uses-permission android:name="android.permission.INTERNET"/>

准备网络数据:
这里写图片描述

使用:

        OkGo.getInstance().init(getApplication());
        OkGo.<String>get(URL_TEST)
                .cacheMode(CacheMode.FIRST_CACHE_THEN_REQUEST)//设置缓存模式
                .cacheKey("weapon")//作为缓存的key
                .execute(new StringCallback() {
                    @Override
                    public void onSuccess(Response<String> response) {
                        Log.d(TAG, "onSuccess: " + response.body());
                    }
                });
    }

输出结果:
这里写图片描述
缓存数据以数据库方式存储:
这里写图片描述
数据库中的数据:
这里写图片描述
查询数据:

  List<CacheEntity<?>> all = CacheManager.getInstance().getAll();
        String data = (String) all.get(0).getData();
        Log.d(TAG, "onSuccess: " + data);

bebug看一下all 对象:
这里写图片描述

猜你喜欢

转载自blog.csdn.net/qq_30447263/article/details/80316599