android service 初体验

这是一个日志性的记录。

在android中 service是一种当你的程序被最小化是也能够执行一种类,也就是进程

那么开始学习android长得service吧


1.在这里只是为了演示我创建了一个按钮来开始service 另一个按钮来结束service

在MainActivity.xml 中定义两个按钮 分别给个id btn1,btn2

在src目录下创建一个新的class 让他继承 android.app.service 

 并实现其中的 onCreate(),onStartCommand(),onStart(),onDestroy()方法

package com.example.services;
import android.app.Service;
import android.content.Intent;
import android.os.IBinder;
import android.util.Log;
public class ExampleService extends Service {
private final String TAG = "ExampleService";
@Override
public IBinder onBind(Intent arg0)
{
// TODO Auto-generated method stub
return null;
}
@Override
public void onCreate()
{
Log.i(TAG, "ExampleService-->onCreate()");
super.onCreate();
}
@Override
public void onDestroy()
{
Log.i(TAG, "ExampleService-->onDestroy()");
super.onDestroy();
}

@Override
public int onStartCommand(Intent intent, int flags, int startId)
{
Log.i(TAG, "ExampleService-->onStartCommand()");
return super.onStartCommand(intent, flags, startId);
}


@Override
public void onStart(Intent intent, int startId)
{
// TODO Auto-generated method stub
super.onStart(intent, startId);
}


}


用log来输出 程序执行到哪一步



在MainActivity中 定义两个按钮 给按钮添加onClick事件



startService.setOnClickListener(listener1);


stopservice.setOnClickListener(listener1);


private OnClickListener listener1 = new OnClickListener()
{


@Override
public void onClick(View v)
{
Intent intent = new Intent(MainActivity.this, ExampleService.class);


switch (v.getId())
{
case R.id.StartService:
startService(intent);
Toast.makeText(MainActivity.this, "start service", Toast.LENGTH_LONG).show();
break;
case R.id.StopService:
stopService(intent);


Toast.makeText(MainActivity.this, "stop service", Toast.LENGTH_LONG).show();
break;


default:
break;
}
}
};

但是事情还没有结束

因为需要在AndroidManifest中 设置一个service 

<service android:name=".ExampleService"></service>

他才能找到service




猜你喜欢

转载自blog.csdn.net/uygurjan2008/article/details/24426831