Android KitKat HttpURLCподключение AsyncTask
В моем приложении я загружаю файл, используяHttpURLConnection вAsyncTask, Если загрузка файла занимает слишком много времени, я хочу отменить его; и я делаю это, закрывая поток и вызываяОтключить() наHttpURLConnection
объект. Код работал безупречно в течение многих лет в Android. Однако теперь, когда KitKat вышел, проблемы всплыли. В частности,disconnect()
сам вызов занимает несколько секунд или более для завершения. В устройствах pre-KitKat это занимало миллисекунду или меньше. Что действительно странно, так это то, что когда я выполняю вызов разъединения в отдельном потоке, он снова действительно быстрый. Так что это должно быть проблемой с вызовом его вAsyncTask
doInBackground
метод. Стоит отметить, что мойAsyncTask
действительно естьLooper.prepare()
вызов.
Кто-нибудь знает, в чем разница между KitKat и другими версиями Android? Я пролистал списки изменений и не увидел ничего связанного с этой проблемой.