Что касается задачи Async в android, то лучше всего включать их в качестве внутреннего класса активности, в которой вы работаете, или лучше иметь в качестве собственного самостоятельного класса? напримерAsync Task Best Practice
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