0
关于Android中的异步任务,最好的做法是将它们作为您正在工作的活动的内部类,或者将自己作为自己的独立类更好?例如异步任务最佳实践
public MyClass extents Activity
{
public void onCreate(){
}
public class MyAsyncTask extents AsyncTask<Void, Void, Void>
{
protected void doInBackground()
{
//do stuff here....
}
}
public void onResume(){
}
}
或外部类
public class MyAsyncTask extents AsyncTask<Void, Void, Void>
{
protected void doInBackground()
{
//do stuff here....
}
}
public MyClass extents Activity
{
public void onCreate(){
}
}
取决于你在做什么 - 真的没有“最好的方式”。如果它很大/很长,我会把它放在它自己的文件中,就像任何其他类一样,这样你的代码就不会混乱。但是,这其实并不重要。另外值得注意的是,Stack Overflow并非真正适合“意见”问题的地方 - 您可能会在别处得到更好的答案。 – JonasCz
@JonasCz事实上,它很重要......如果内部类是静态的,那将是无论如何。在其他情况下,它包含对外部类的引用,并且它是一个活动,因为Asynctask可能活得更长是错误的。 – Selvin
@Selvin - 这不会使它“错误”......这意味着你必须处理这些引用,并确保在生命周期更改期间全部处理正确,这都是可能的。即使AsyncTask在单独的类文件中,这也是一个问题。 – NoChinDeluxe