文件下载这种事情是很耗时的。之前使用AsyncTask这样的异步类来做下载,然后切到后台就被干掉。所以打算试试Service。(不过按目前那些系统的尿性,其实Service也分分钟被干掉)不过,这里并不是直接使用Service类,而是使用的
文件下载这种事情是很耗时的。之前使用AsyncTask这样的异步类来做下载,然后切到后台就被干掉。所以打算试试Service。(不过按目前那些系统的尿性,其实Service也分分钟被干掉)
不过,这里并不是直接使用Service类,而是使用的是继承自Service的IntentService。
这个东西有三大好处:
他有个任务队列;
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(){ //等会再填 }}
--结束END--
本文标题: Android 基于IntentService的文件下载的示例代码
本文链接: https://lsjlt.com/news/220981.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0