美文网首页
网络请求回调写法规范

网络请求回调写法规范

作者: 在下陈小村 | 来源:发表于2018-07-30 15:39 被阅读41次
07-30 15:07:12.757 26725-26725/com.ganjie.app E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.ganjie.app, PID: 26725
    java.lang.IllegalArgumentException: You cannot start a load for a destroyed activity
        at com.bumptech.glide.manager.RequestManagerRetriever.assertNotDestroyed(RequestManagerRetriever.java:134)
        at com.bumptech.glide.manager.RequestManagerRetriever.get(RequestManagerRetriever.java:102)
        at com.bumptech.glide.Glide.with(Glide.java:653)
        at com.ganjie.app.activity.AccountInfoActivity.onSuccess(AccountInfoActivity.java:479)
        at com.ganjie.app.network.OkHttpHelper$StringCallBack$5.run(OkHttpHelper.java:208)
        at android.os.Handler.handleCallback(Handler.java:754)
        at android.os.Handler.dispatchMessage(Handler.java:95)
        at android.os.Looper.loop(Looper.java:163)
        at android.app.ActivityThread.main(ActivityThread.java:6360)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:880)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:770)

上面这段报错就是发生在网络请求回调的onsuccess方法中,当用户在网络请求回调时点击了返回键,页面被销毁时,onsuccess中的修改页面的操作往往就会报空指针的错误,因为修改的对象被销毁了,此时还要去修改界面当然会报错。

所以我给出的两个解决办法是
1.在修改页面操作外面加一个判断,判断isfinishing()
2.我认为在极致的情况下判断isfinishing()还是有可能会崩溃的,所以我现在的做法是在外层加一个try ()catch()。

相关文章

  • 网络请求回调写法规范

    上面这段报错就是发生在网络请求回调的onsuccess方法中,当用户在网络请求回调时点击了返回键,页面被销毁时,o...

  • 关于多个网络请求同步的一些总结

    等待多个并发请求同步回调 例如同时发起网络请求A,网络请求B,网络请求C,需等待A,B,C都返回了才进行回调。曾经...

  • 优雅地处理网络请求的依赖关系

    处理网络时,经常会遇到网络请求相互依赖的情况,如B请求的参数依赖A请求的回调结果,直接在A请求的回调中请求B,会导...

  • IOS面试之block什么时候需要构造循环引用

    在网络请求API会持有回调的block,回调的block会持有self,而self也持有网络请求API的话,我们就...

  • 移动架构--13.简单仿网络访问框架

    1.提供网络请求的包装类 2.网络访问结果回调接口 3.网络访问具体实现接口 4.供应用层回调的网络访问回调接口 ...

  • Android16-网络请求的封装

    1. 封装HttpURLConnection的网络请求 首先定义一个接口作为网络请求结果的回调 然后封装网络请求的...

  • 回调函数与promise

    回调 把一个函数A传给另一个函数B调用,那么A就是回调函数 具名回调写法 匿名回调写法 多层嵌套的匿名回调(回调地...

  • 回调函数与promise

    回调 把一个函数A传给另一个函数B调用,那么A就是回调函数 具名回调写法 匿名回调写法 多层嵌套的匿名回调(回调地...

  • iOS 网络请求回调问题

    1、多个网络请求完成后通知继续执行 2、多个异步请求,顺序回调结果

  • 如何正确的使用Promise

    promise用法 对比传统回调函数与Pormise的写法 传统回调函数 Promise的写法 Promise要比...

网友评论

      本文标题:网络请求回调写法规范

      本文链接:https://www.haomeiwen.com/subject/jnsfvftx.html