我有一个AsyncTask来执行任务,我从编写AsyncTask的同一个类和另一个类中调用它。

我在代码段中有以下语句,用于获取用户的当前位置:

GPSTracker gps = new GPSTracker(getActivity());


从同一类调用时,getActivity()具有值,但是从另一类调用时,getActivity()返回null。

我还尝试通过构造函数传递上下文:

 Context mContext;
 AsyncDataUpdate(Context context){
             this.mContext = context;
              }
GPSTracker gps = new GPSTracker(mContext);


这也不起作用。
可能是什么原因?
任何帮助将不胜感激。

最佳答案

在调用mContext类构造函数后,使用AsyncDataUpdate变量为:

GPSTracker gp;
Context mContext;
private AsyncDataUpdate(Context context){
     this.mContext = context;
     this.gps = new GPSTracker(this.mContext);
}

关于java - 从另一个类调用时,getActivity()在AsyncTask中返回null,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33952747/

10-11 17:42