在Android 9中,doInBackground
方法被标记为protected
,这意味着在AsyncTask
的子类中不能直接访问该方法。为了解决这个问题,可以按照以下步骤进行操作:
AsyncTask
的子类,并重写doInBackground
方法。确保你的子类是公共类(public class)。public class MyAsyncTask extends AsyncTask {
@Override
protected Void doInBackground(Void... voids) {
// 在这里执行后台任务
return null;
}
}
MyAsyncTask myTask = new MyAsyncTask();
myTask.execute();
这样,你就可以在Android 9中成功执行后台任务了。
请注意,AsyncTask
的使用已被弃用,推荐使用更现代的异步解决方案,比如Executor
框架、Coroutine
等。