首先建立一个Intent.xml
>
/>
/>
建立一个MyService.java 实现Thread多线程
packagecom.szy.service;importandroid.app.Service;importandroid.content.Intent;importandroid.os.IBinder;importandroid.util.Log;public class MyService extendsService
{protected static final String TAG = "IntentActivity";
@Overridepublic voidonCreate()
{super.onCreate();
}
@Overridepublic voidonDestroy()
{super.onDestroy();
}
@Overridepublic int onStartCommand(Intent intent, int flags, intstartId)
{newMyThread().start();returnSTART_STICKY;
}
@OverridepublicIBinder onBind(Intent intent)
{return null;
}private class MyThread extendsThread
{
@Overridepublic voidrun()
{try{
Log.i(TAG,"MyService线程ID:"+Thread.currentThread().getId());
Log.i(TAG,"文件下载....");
Thread.sleep(2000);
}catch(InterruptedException e)
{
e.printStackTrace();
}
}
}
}
再建立一个ExampleIntentService.java的IntentService
packagecom.szy.service;importandroid.app.IntentService;importandroid.content.Intent;importandroid.util.Log;public class ExampleIntentService extendsIntentService
{protected static final String TAG = "IntentActivity";publicExampleIntentService()
{super("ExampleIntentService");
}
@Overrideprotected voidonHandleIntent(Intent intent)
{try{
Log.i(TAG,"MyService线程ID:"+Thread.currentThread().getId());
Log.i(TAG,"文件下载....");
Thread.sleep(2000);
}catch(InterruptedException e)
{
e.printStackTrace();
}
}
}
最后还有建立一个IntentActivity.xml 的Activity
package com.szy.service;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class IntentActivity extends Activity
{
protected static final String TAG = "IntentActivity";
private Button btnStartNormalService;
private Button btnStartIntentService;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.intent);
btnStartNormalService = (Button) findViewById(R.id.btnStartNormalService);
btnStartIntentService = (Button) findViewById(R.id.btnStartIntentService);
btnStartNormalService.setOnClickListener(listener);
btnStartIntentService.setOnClickListener(listener);
}
private OnClickListener listener=new OnClickListener()
{
public void onClick(View v)
{
Intent intent;
switch (v.getId())
{
case R.id.btnStartNormalService:
intent=new Intent(IntentActivity.this, MyService.class);
Log.i(TAG, "主线程ID:"+Thread.currentThread().getId());
startService(intent);
break;
case R.id.btnStartIntentService:
intent=new Intent(IntentActivity.this, ExampleIntentService.class);
Log.i(TAG, "主线程ID:"+Thread.currentThread().getId());
startService(intent);
break;
default:
break;
}
}
};
}
记得修改AndroidManifest.mxl
原文:http://www.cnblogs.com/yihujiu/p/5723098.html