Hy!!!
I have a endless thread that updated the view.
UpdateState.java:
package android.skiptvad;
import java.util.List;
import org.apache.http.NameValuePair;
import android.os.Handler;
import android.os.Message;
import android.text.NoCopySpan.Concrete;
import android.util.Log;
import android.widget.TextView;
import android.widget.Toast;
import android.util.Log;
public class UpdateState extends Thread {
public List<NameValuePair> params;
public Handler handler;
public UpdateState(List<NameValuePair> params, Handler handler) {
this.handler = handler;
this.params = params;
}
@Override
public void run() {
while (true)
{
final Handler h = new Handler (){
@Override
public void handleMessage(Message msg) {
Message msg2 = Message.obtain();
if (msg.obj.toString()!= null)
{
JSONParse json = null;
try
{
Log.e("Channel_State",msg.obj.toString());
json = new JSONParse(msg.obj.toString());
String state = json.getChannelState();
msg2.obj = state;
UpdateState.this.handler.sendMessage(msg);
}
catch (final Exception e)
{
e.printStackTrace();
}
}
}
};
HttpConnection con = new HttpConnection(params, "http://surfkid.redio.de/getChannelState", h);
con.start();
try {
Log.e("Sleep", "Begin");
UpdateState.sleep(5000);
Log.e("Sleep", "End");
} catch (InterruptedException e) {
// TODO Auto-generated catch block
Log.e("Sleep", "Error");
e.printStackTrace();
}
//super.run();
}
}
}
Call:
Handler hup = new Handler (){
@Override
public void handleMessage(Message msg) {
Log.e("UPDATE", (String) msg.obj);
if (msg.obj.equals("0")&& msg.obj.equals("1"))
{
tv2.setText("Channel State: "+ msg.obj);
}
super.handleMessage(msg);
}
};
UpdateState us = new UpdateState(params, hup);
us.start();**
Log:
02-14 07:45:39.690: ERROR/AndroidRuntime(282): Uncaught handler: thread Thread-13 exiting due to uncaught exception
02-14 07:45:39.690: ERROR/AndroidRuntime(282): java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()
02-14 07:45:39.690: ERROR/AndroidRuntime(282): at android.os.Handler.<init>(Handler.java:121)
02-14 07:45:39.690: ERROR/AndroidRuntime(282): at android.skiptvad.UpdateState$1.<init>(UpdateState.java:30)
02-14 07:45:39.690: ERROR/AndroidRuntime(282): at android.skiptvad.UpdateState.run(UpdateState.java:30)
How to solve my problem?