文件下載這種事情是很耗時(shí)的。之前使用AsyncTask這樣的異步類來(lái)做下載,然后切到后臺(tái)就被干掉。所以打算試試Service。(不過(guò)按目前那些系統(tǒng)的尿性,其實(shí)Service也分分鐘被干掉)
凌河ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書未來(lái)市場(chǎng)廣闊!成為成都創(chuàng)新互聯(lián)公司的ssl證書銷售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:13518219792(備注:SSL證書合作)期待與您的合作!不過(guò),這里并不是直接使用Service類,而是使用的是繼承自Service的IntentService。
這個(gè)東西有三大好處:
1.他有個(gè)任務(wù)隊(duì)列;
2.任務(wù)隊(duì)列執(zhí)行完后會(huì)自動(dòng)停止;
3.他會(huì)起一個(gè)獨(dú)立的線程,耗時(shí)操作不會(huì)影響你app的主線程。
這么自動(dòng)化的東西簡(jiǎn)直省心。
話不多說(shuō),開(kāi)始擼代碼。
首先,要建個(gè)應(yīng)用,主文件如下(布局什么的代碼就不貼了):
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(){ //等會(huì)再填 } }