public class WidgetService extends Service {
String sentence = null;
DbAdapter da = new DbAdapter(getBaseContext());
boolean mQuit;
int Ids, emotion = 0;
private static final int EMOTION_ANGRY = R.drawable.angry;//0;
private static final int EMOTION_CRY = R.drawable.cry;//1;
private static final int EMOTION_GLAD = R.drawable.glad;//2;
private static final int EMOTION_OUCH = R.drawable.ouch;//3;
private static final int EMOTION_PANIC = R.drawable.panic;//4;
private static final int EMOTION_QUESTION = R.drawable.question;//5;
private static final int EMOTION_SLEEP = R.drawable.sleep;//6;
private static final int EMOTION_SMILE = R.drawable.smile;//7;
private static final int EMOTION_STAND = R.drawable.stand;//8;
private static final int EMOTION_TALK = R.drawable.talk;//9;
private static final int EMOTION_TIRED = R.drawable.tired;//10;

public void onCreate() {
super.onCreate();
}
public void onDestroy() {
super.onDestroy();

Toast.makeText(this, "Service End", 0).show();
mQuit = true;
}

public int onStartCommand (Intent intent, int flags, int startId) {
super.onStartCommand(intent, flags, startId);
mQuit = false;
stopSelfResult(startId);
updateThread thread = new updateThread();
thread.setDaemon(true);
thread.start();
return START_STICKY;
}

public IBinder onBind(Intent intent) {
return null;
}
public class updateThread extends Thread {
public void run() {
while (true) {
Random rand = new Random();
int n = rand.nextInt((char)Integer.parseInt(da.countData().toString()));
sentence = da.fetchData(n, 1).toString();
emotion = da.fetchData(n, 2).getInt(2);
mHandler.sendEmptyMessage(0);
try { Thread.sleep(5000); } catch (InterruptedException e) {;}
}
}
}
Handler mHandler = new Handler() {
public void handleMessage(Message msg) {
if (msg.what == 0) {
switch (emotion) {
case 0:
Ids = EMOTION_ANGRY;
break;
case 1:
Ids = EMOTION_CRY;
break;
case 2:
Ids = EMOTION_GLAD;
break;
case 3:
Ids = EMOTION_OUCH;
break;
case 4:
Ids = EMOTION_PANIC;
break;
case 5:
Ids = EMOTION_QUESTION;
break;
case 6:
Ids = EMOTION_SLEEP;
break;
case 7:
Ids = EMOTION_SMILE;
break;
case 8:
Ids = EMOTION_STAND;
break;
case 9:
Ids = EMOTION_TALK;
break;
case 10:
Ids = EMOTION_TIRED;
break;
}
AndroMateProvider.Emotion(getBaseContext(), sentence, Ids);
}
}
};
}

Service에서 Database를 검색해서 그 값과 시간에 따라 Appwidget의 레이아웃이 바뀌게 하고 싶습니다..

그런데 Service 부분은 작동이 안됩니다. LogCat에서도 별다른 에러는 나타나지 않았습니다..

어떻게 하는게 좋을까요?