网络呼叫后处理NullPointerException的最佳方法是什么?

时间:2016-07-01 07:38:13

标签: android android-fragments

大多数情况下,网络调用将在Fragment分离后完成,这就是getActivity()返回null的原因。你的典型解决方案是什么?

解决方案#1:当片段暂停时,终止所有网络呼叫。

解决方案#2:添加“isDetached()”检查

解决方案#3:添加“isAdded()”检查

解决方案#4:参考活动,动力学

1 个答案:

答案 0 :(得分:0)

我更喜欢解决方案4.我在访问共享首选项时遇到问题,getActivity()为空。参考活动解决了这个问题。

Activity mActivity;

@Override
public void onAttach(Activity activity) {
    super.onAttach(activity);
    this.mActivity = activity;
}