2016-07-19 2 views

답변

2

그건 올바른 질문이 아니며 그 답은 둘 다있을 수 있습니다. AsyncTask는 별도의 실행 스레드입니다. 서비스는 백그라운드에서 실행되는 앱의 일부이며 활동이 끝날 때까지 살 수 있습니다.

비 UI 스레드에서 파일을 다운로드해야하므로 서비스를 사용하는지 여부에 관계없이 스레드 또는 AsyncTask가 필요합니다. 따라서 항상 두 가지 중 하나를 사용하게됩니다. 또한 서비스를 사용할지 여부에 대한 질문은 사용자가 다른 활동으로 이동하더라도 다운로드 한 파일이 필요한지 여부에 대한 질문입니다 (서비스를 사용하려는 다른 이유가 몇 가지 있지만 이것이 주된 원인입니다)).

1

내가 제안, 그것은 file.for 작은 내용 파일의 크기에 따라, asynch은 훌륭하지만거야 경우 서비스도 경우 사용자에 restart feature (start_sticky)와 함께 제공하기 때문에 다음 service 갈 수 longer task A는 죽일 수 귀하 메모리 위기시 안드로이드 OS (LMK : 낮은 메모리 킬러)에 의해 앱 또는 앱이 사망했습니다.

관련 문제