Click here to Skip to main content
12,406,986 members (60,754 online)
Rate this:
 
Please Sign up or sign in to vote.
See more: Java Mobile Android
/*this class to receive message and add it to adapter , the error is (android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views) what should i do ???*/ 
 public class UDPBiganResciveMessage extends Thread{
	
	private WifiManager mWifi;
	private DatagramSocket socket ;
	public String message="null";
	DiscussArrayAdapter adapter;
	
	public boolean isOn=true;
	UDPBiganResciveMessage(WifiManager wifi, DiscussArrayAdapter adapterIn) throws SocketException {
        mWifi = wifi;
        adapter =adapterIn;
        socket = new DatagramSocket(2060);
        socket.setSoTimeout(1000);
    }
	
	public void run() {
		
        try {
        	while(isOn){ 
        		
        	receiveUDPMessage();
        	
        	}
			} catch (IOException e) {
				e.printStackTrace();
		}
    }
	private void receiveUDPMessage() throws java.io.IOException {
        
		try{
		byte[] msgBuffer = new byte[1024];
		
        DatagramPacket packet = new DatagramPacket(msgBuffer, msgBuffer.length);
        socket.receive(packet);
        Data messR=new Data(new String(msgBuffer, 0, packet.getLength()));
        //adapter.add(new OneComment(true,messR.strName+" : "+messR.strMessage));
        packet.setLength(msgBuffer.length);
		}
		catch (SocketTimeoutException e){}
        
        
    }
	
    public void stopLisning() throws InterruptedException{
    	isOn=false;
    	sleep(1001);
    	socket.close();
    	
    	
    	
    }
	public void main(String[] args) throws SocketException {
        new UDPBiganResciveMessage(null,null).start();
	}
 
}
Posted 16-Mar-13 0:56am
Comments
AndroidVivek 17-Mar-13 4:34am
   
try to use runnable Thread

1 solution

Rate this: bad
 
good
Please Sign up or sign in to vote.

Solution 1

You can also use runnable thread , or in case like thi use runOnUIThread
  Permalink  

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
Top Experts
Last 24hrsThis month


Advertise | Privacy | Mobile
Web02 | 2.8.160730.1 | Last Updated 17 Mar 2013
Copyright © CodeProject, 1999-2016
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100