我的 android 应用程序中运行的一些异步任务有点问题。由于我使用了一些网络 IO,它有时会比预期花费更长的时间并阻止其他异步任务的运行。
我需要保持我的 target 和 min sdk 版本不变,但他们的目标是 targetSdkVersion="15",minSdkVersion="8"。我需要它,以便在调用异步任务时,我可以检查设备 SDK,如果大于 11,它可以调用 executeOnExecutor() 而不是只执行以允许设备并行运行这些任务并防止此阻塞操作。
虽然我的目标 SDK 为 15,但我使用的设备的 SDK 为 17。
但是在调用时:
MyAsyncTask(this).executeOnExecutor();
我收到一个错误“未定义该类型的方法 executeOnExecutor()”,我唯一可用的选项是:
MyAsyncTask(this).execute();
MyAsyncTask 是一个扩展 AsyncTask 并重载标准方法 onPreExecute、doInBackground、onProgressUpdate 和 onPostExecute 的类对象。
我尝试遵循此处列出的一些建议... http://steveliles.github.io/android_s_asynctask.html