文件下载这种事情是很耗时的。之前使用AsyncTask这样的异步类来做下载,然后切到后台就被干掉。所以打算试试Service。(不过按目前那些系统的尿性,其实Service也分分钟被干掉)
不过,这里并不是直接使用Service类,而是使用的是继承自Service的IntentService。
这个东西有三大好处:
1.他有个任务队列;
2.任务队列执行完后会自动停止;
3.他会起一个独立的线程,耗时操作不会影响你app的主线程。
这么自动化的东西简直省心。
话不多说,开始撸代码。
首先,要建个应用,主文件如下(布局什么的代码就不贴了):
package net.codepig.servicedownloaderdemo; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; public class MainActivity extends AppCompatActivity { private String _url="http://www.boosj.com/apk/boosjDance.apk"; private EditText urlText; private Button goBtn; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); goBtn=(Button) findViewById(R.id.goBtn); urlText=(EditText) findViewById(R.id.urlText); urlText.setText(_url); goBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { _url=urlText.getText().toString(); //start download start_service(); } }); } public void start_service(){ //等会再填 } }
网页名称:Android基于IntentService的文件下载的示例代码-创新互联
文章出自:https://www.cdcxhl.com/article26/cchijg.html
成都网站建设公司_创新互联,为您提供静态网站、网站设计、定制网站、移动网站建设、企业建站、商城网站
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联