package com.bigdo.service;
import android.app.Service;
import android.content.Intent;
import android.os.Binder;
import android.os.Bundle;
import android.os.IBinder;
public class VideoPayService extends Service {
private final IBinder result = new LocalBinder();
private WebServer webServer;
public class LocalBinder extends Binder {
public VideoPayService getService() {
return VideoPayService.this;
}
}
@Override
public IBinder onBind(Intent arg0) {
return result;
}
@Override
public void onCreate() {
super.onCreate();
this.setForeground(true);
startWebService();
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
startWebService();
return super.onStartCommand(intent, flags, startId);
}
@Override
public void onDestroy() {
stopWebService();
super.onDestroy();
}
private void startWebService() {
if (webServer == null) {
webServer = new WebServer(this);
//webServer.setDaemon(true);
webServer.start();
} else {
webServer.sendStatusMsg();
}
}
private void stopWebService() {
if (webServer != null) {
webServer.stopService();
}
webServer = null;
}
public void sendBroadcastMsg(int optype, final String msg, final Bundle data) {
Intent i = new Intent();
i.setAction("com.bigdo.service.VideoPayService");
i.putExtra("optype", optype);
if (msg != null) {
i.putExtra("msg", msg);
}
if (data != null) {
i.putExtra("data", data);
}
sendBroadcast(i);
}
}