public class AskService extends Service
{
public class SimpleBinder extends Binder
{
/**
* 获取 Service 实例
*/
public AskService getService()
{
return AskService.this;
}
public int add(int a, int b)
{
return a + b;
}
}
public SimpleBinder sBinder;
/**
* 当启动Service的时候会调用这个方法
*/
public void onCreate()
{
CommonUtil.log("create service");
super.onCreate();
sBinder = new SimpleBinder();
}
/**
* 当系统被销毁的时候会调用这个方法
*/
public void onDestroy()
{
CommonUtil.log("deatroy service");
super.onDestroy();
}
public IBinder onBind(Intent intent)
{
return sBinder;
}
/**
* 当启动Service的时候会调用这个方法
*/
public int onStartCommand(Intent intent, int flags, int startId)
{
CommonUtil.log("start service");
return super.onStartCommand(intent, flags, startId);
}
}
Activity:private ServiceConnection sc;
private boolean isBind;
sc = new ServiceConnection()
{
@Override
public void onServiceDisconnected(ComponentName name) {
}
@Override
public void onServiceConnected(ComponentName name, IBinder service) {
AskService.SimpleBinder sBinder = (AskService.SimpleBinder)service;
CommonUtil.log("3 + 5 = " + sBinder.add(3, 5));
CommonUtil.log(sBinder.getService().toString());
}
};
bindService(new Intent(Index.this, AskService.class), sc, Context.BIND_AUTO_CREATE);
isBind = true;
CommonUtil.log("running service is:"+isMyServiceRunning());
private boolean isMyServiceRunning()
{
ActivityManager manager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
for (RunningServiceInfo service : manager.getRunningServices(Integer.MAX_VALUE))
{
if ("com.huawei.voice.activity.AskService".equals(service.service.getClassName()))
{
return true;
}
}
return false;
}
AndroidManifest.xml:<service android:name=".activity.AskService" android:icon="@drawable/logo"
android:label="ask everyday"></service>
{
public class SimpleBinder extends Binder
{
/**
* 获取 Service 实例
*/
public AskService getService()
{
return AskService.this;
}
public int add(int a, int b)
{
return a + b;
}
}
public SimpleBinder sBinder;
/**
* 当启动Service的时候会调用这个方法
*/
public void onCreate()
{
CommonUtil.log("create service");
super.onCreate();
sBinder = new SimpleBinder();
}
/**
* 当系统被销毁的时候会调用这个方法
*/
public void onDestroy()
{
CommonUtil.log("deatroy service");
super.onDestroy();
}
public IBinder onBind(Intent intent)
{
return sBinder;
}
/**
* 当启动Service的时候会调用这个方法
*/
public int onStartCommand(Intent intent, int flags, int startId)
{
CommonUtil.log("start service");
return super.onStartCommand(intent, flags, startId);
}
}
Activity:private ServiceConnection sc;
private boolean isBind;
sc = new ServiceConnection()
{
@Override
public void onServiceDisconnected(ComponentName name) {
}
@Override
public void onServiceConnected(ComponentName name, IBinder service) {
AskService.SimpleBinder sBinder = (AskService.SimpleBinder)service;
CommonUtil.log("3 + 5 = " + sBinder.add(3, 5));
CommonUtil.log(sBinder.getService().toString());
}
};
bindService(new Intent(Index.this, AskService.class), sc, Context.BIND_AUTO_CREATE);
isBind = true;
CommonUtil.log("running service is:"+isMyServiceRunning());
private boolean isMyServiceRunning()
{
ActivityManager manager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
for (RunningServiceInfo service : manager.getRunningServices(Integer.MAX_VALUE))
{
if ("com.huawei.voice.activity.AskService".equals(service.service.getClassName()))
{
return true;
}
}
return false;
}
AndroidManifest.xml:<service android:name=".activity.AskService" android:icon="@drawable/logo"
android:label="ask everyday"></service>