240 发简信
IP属地:北京
  • Jacoco 手动测试覆盖率检查

    ​ 团队中目前还没有自动化测试的覆盖,所以测试 team 想了解下手动测试的覆盖率。于是才有了本片文章的产生。网上有很多文章是利用 Android 的 instrument ...

  • 你好,想问一下,是不是Kotlin不能使用啊,我添加kotlin的相关配置后,能生成相关的html,但是都是0%

    Android 使用 jacoco 统计代码行覆盖率

    1. build.gradle 在项目的 build.gradle 中引入 jacoco core 依赖: 2. 新建 jacoco-report.gradle 在项目根目录...

  • 120
    第一次

    试一试第一次发布

  • 您好,源码能抽离开放一份出来吗?

    高仿Pinterest交互实现

    Pinterest中有一个非常棒的交互,大概的操作就是在列表页可以通过长按单个Item来讲Item选中并且让周围的item变透明白,然后弹出选项菜单,可以通过手指的移动来选择...

  • 120
    高仿Pinterest交互实现

    Pinterest中有一个非常棒的交互,大概的操作就是在列表页可以通过长按单个Item来讲Item选中并且让周围的item变透明白,然后弹出选项菜单,可以通过手指的移动来选择...

  • @菜鸟考官 您好,数据请求时成功的,但是呢,成功也会对应一批公共的错误码,比方说10201代表登录过期,这个在那个view中都有可能出现,所以想在最开始的基类,或者最开始的subscribe 对这个做出处理,所以,我按照您说的,我用BaseConsumer实现了subscribe,重写了accept
    public class BaseConsumer<T> implements Consumer<T> {
    @Override
    public void accept(T t) throws Exception {
    BaseObjectBean bean = (BaseObjectBean) t;
    switch (bean.getCode()) {
    case 0:
    break;
    default:
    LogUtils.e(bean.getMsg());
    break;
    }
    }

    }
    然后,
    model.getCode(phone_num)
    .compose(RxScheduler.<BaseObjectBean<CodeBean>>Flo_io_main())
    .as(mView.<BaseObjectBean<CodeBean>>bindAutoDispose())
    .subscribe(new BaseConsumer<BaseObjectBean<CodeBean>>() {
    @Override
    public void accept(BaseObjectBean<CodeBean> bean) throws Exception {
    mView.onGetCodeSuccess(bean);
    mView.hideLoading();
    }
    }, new Consumer<Throwable>() {
    @Override
    public void accept(Throwable throwable) throws Exception {
    mView.onError(throwable);
    mView.hideLoading();
    }
    });
    每次new这个BaseConsumer,但是匿名内部类会先执行自己的,而不执行上边实现接口的

    Android MVP 架构

    本Demo使用 Okhttp3、Retrofit2、Rxjava2 ,使用AutoDispose解决RxJava内存泄漏Github:https://github.com/R...

  • @菜鸟考官 调用的时候,这样写的
    model.getCode(phone_num)
    .compose(RxScheduler.<BaseObjectBean<CodeBean>>Flo_io_main())
    .as(mView.<BaseObjectBean<CodeBean>>bindAutoDispose())
    .subscribe(new BaseConsumer<BaseObjectBean<CodeBean>>() {
    @Override
    public void accept(BaseObjectBean<CodeBean> bean) throws Exception {
    mView.onGetCodeSuccess(bean);
    mView.hideLoading();
    }
    }, new Consumer<Throwable>() {
    @Override
    public void accept(Throwable throwable) throws Exception {
    mView.onError(throwable);
    mView.hideLoading();
    }
    });
    使用匿名内部类,会走自己的那个,accept,而父类的那个,是不走的

    Android MVP 架构

    本Demo使用 Okhttp3、Retrofit2、Rxjava2 ,使用AutoDispose解决RxJava内存泄漏Github:https://github.com/R...

  • @菜鸟考官 嗯嗯,这样确实能够解决这个问题,您再帮我看看,上边的 那个,
    public class BaseConsumer<T> implements Consumer<T> {
    @Override
    public void accept(T t) throws Exception {
    BaseObjectBean bean = (BaseObjectBean) t;
    switch (bean.getCode()) {
    case 0:
    break;
    default:
    LogUtils.e(bean.getMsg());
    break;
    }
    }

    }
    这样写,对吗,我怎么还是处理不了这个公共的错误码呢

    Android MVP 架构

    本Demo使用 Okhttp3、Retrofit2、Rxjava2 ,使用AutoDispose解决RxJava内存泄漏Github:https://github.com/R...

  • @菜鸟考官 还有,如果一个Model中,有多个请求时,每个请求返回对应的success中,结构体,都不一样,这个怎么办?

    Android MVP 架构

    本Demo使用 Okhttp3、Retrofit2、Rxjava2 ,使用AutoDispose解决RxJava内存泄漏Github:https://github.com/R...

  • 您好,我想问一下,在每个页面onSuccess中,有对应的错误码,但是,还有一些全局的错误码,这些在哪里处理比较好呢

    Android MVP 架构

    本Demo使用 Okhttp3、Retrofit2、Rxjava2 ,使用AutoDispose解决RxJava内存泄漏Github:https://github.com/R...

  • 120
    Android 6.0、7.0、8.0、9.0适配

    一、6.0适配 谈谈Android 6.0 的动态权限管理 二、7.0适配 Android 7.0脱坑指南 三、8.0适配 Android 8.0适配指北 四、9.0适配 A...