Dans les rapports d'erreur de la console développeur, je vois parfois des rapports avec un problème NPE. Je ne comprends pas ce qui ne va pas avec mon code. Sur l'émulateur et mon application de périphérique fonctionne bien sans forcecloses, cependant certains utilisateurs obtiennent NullPointerException dans la classe de fragments lorsque la méthode getActivity () est appelée.
Activité
pulic class MyActivity extends FragmentActivity{
    private ViewPager pager; 
    private TitlePageIndicator indicator;
    private TabsAdapter adapter;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        pager = (ViewPager) findViewById(R.id.pager);
        indicator = (TitlePageIndicator) findViewById(R.id.indicator);
        adapter = new TabsAdapter(getSupportFragmentManager(), false);
        adapter.addFragment(new FirstFragment());
        adapter.addFragment(new SecondFragment());
        indicator.notifyDataSetChanged();
        adapter.notifyDataSetChanged();
        // push first task
        FirstTask firstTask = new FirstTask(MyActivity.this);
        // set first fragment as listener
        firstTask.setTaskListener((TaskListener) adapter.getItem(0));
        firstTask.execute();
    }
    indicator.setOnPageChangeListener(new ViewPager.OnPageChangeListener()  {
        @Override
        public void onPageSelected(int position) {
            Fragment currentFragment = adapter.getItem(position);
            ((Taskable) currentFragment).executeTask();
        }
        @Override
        public void onPageScrolled(int i, float v, int i1) {}
        @Override
        public void onPageScrollStateChanged(int i) {}
    });
}
Classe AsyncTask
public class FirstTask extends AsyncTask{
    private TaskListener taskListener;
    ...
    @Override
    protected void onPostExecute(T result) {
        ... 
        taskListener.onTaskComplete(result);
    }   
}
Classe de fragment
public class FirstFragment extends Fragment immplements Taskable, TaskListener{
    public FirstFragment() {
    }
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        return inflater.inflate(R.layout.first_view, container, false);
    }
    @Override
    public void executeTask() {
        FirstTask firstTask = new FirstTask(MyActivity.this);
        firstTask.setTaskListener(this);
        firstTask.execute();
    }
    @Override
    public void onTaskComplete(T result) {
        // NPE is here 
        Resources res = getActivity().getResources();
        ...
    }
}
Peut-être que cette erreur se produit lorsque les applications reprennent en arrière-plan. Dans ce cas, comment dois-je gérer cette situation correctement?