我创建了一个服务类,现在我正在尝试在这个类中运行一个新线程。我的服务开始了MainActivity
,效果很好。该部分Toast.Message
中的onCreate()
第一个出现了,但我的线程中的消息runa()
没有出现。认为它应该与新的Runnable()
.
public class My Service extends Service {
private static final String TAG = "MyService";
Thread readthread;
@Override
public IBinder onBind(Intent intent) {
return null;
}
@Override
public void onCreate() {
Toast.makeText(this, "My Service Created", Toast.LENGTH_LONG).show(); //is shown
readthread = new Thread(new Runnable() { public void run() { try {
runa();
} catch (Exception e) {
//TODO Auto-generated catch block
e.printStackTrace();
} } });
readthread.start();
Log.d(TAG, "onCreate");
}
@Override
public void onDestroy() {
Toast.makeText(this, "My Service Stopped", Toast.LENGTH_LONG).show();
Log.d(TAG, "onDestroy");
}
@Override
public void onStart(Intent intent, int startid) {
//Toast.makeText(this, "My Service Started", Toast.LENGTH_LONG).show();
//Log.d(TAG, "onStart");
}
public void runa() throws Exception{
Toast.makeText(this, "test", Toast.LENGTH_LONG).show(); //doesn't show up
}
}
如果有人可以帮助我会很好:)