gpt4 book ai didi

android - 使用回调时如何处理生命周期问题

转载 作者:搜寻专家 更新时间:2023-11-01 09:29:58 25 4
gpt4 key购买 nike

我的应用经常使用以下模式:

  • 用户点击按钮
  • API 请求被触发
  • 解析响应
  • 回调返回数据数据在 View 中更新。

但是,由于 API 的性质,这些回调可能需要一些时间,而且我发现如果我快速浏览应用程序,很容易使应用程序崩溃。这主要是由与 Activity 和/或 fragment 不再存在这一事实相关的 NullPointerExceptions 引起的。我的问题是处理这些问题时最佳做法是什么。我应该到处检查空值吗?我在某处读到,您应该完全避免使用回调来更新 UI,但我不确定替代方法是什么。

谢谢大家!

最佳答案

对于 fragment 你可以通过isAdded()检查

 public void onResponse(){
if(isAdded()){
// Do your stuff here
}
}

在 Activity 中 isFinishing()

public void onResponse(){
if(!isFinishing()){
// Do your stuff here
}
}

关于android - 使用回调时如何处理生命周期问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47922810/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com