码迷,mamicode.com
首页 > 移动开发 > 详细

Android的Socket编程尝试失败了,求帮助

时间:2014-10-22 23:26:32      阅读:302      评论:0      收藏:0      [点我收藏+]

标签:android   io   os   ar   java   sp   on   art   问题   

============问题描述============


服务器端:把客户端传来的int加1,传回去
public class Server extends Thread

{

	@Override

	public void run()

	{

		// TODO Auto-generated method stub

		try

		{

			ServerSocket serverSocket=new ServerSocket(10000);

			System.out.println("Start Server");

			while(true)

			{

				Socket socket=serverSocket.accept();

				System.out.println("Get Socket");

				

				int i=socket.getInputStream().read();

				i++;

				

				socket.getOutputStream().write(i);		

				

				

				socket.close();

			}

		} catch (IOException e)

		{

			// TODO Auto-generated catch block

			e.printStackTrace();

		}

	}

	

	public static void main(String args[])

	{

		new Server().start();

	}

	



}


客户端:activity的布局,一个button,按了就连接服务器并且发送一个int数过去,一个textview来显示接受的加1的数字
textView=(TextView) findViewById(R.id.tv);

		button=(Button) findViewById(R.id.btn);

		

		button.setOnClickListener(new View.OnClickListener()

		{

			

			@Override

			public void onClick(View arg0)

			{

				// TODO Auto-generated method stub

				

				try

				{

					Socket socket=new Socket("113.76.162.91", 10000);

					System.out.println("Build Socket");

					

					socket.getOutputStream().write(12);			

					

					System.out.println("Build Socket");

					int i=socket.getInputStream().read();

					

					

					socket.close();

					textView.setText(String.valueOf(i));

				} catch (UnknownHostException e)

				{

					// TODO Auto-generated catch block

					System.out.println("Unknow Host");

				} catch (IOException e)

				{

					// TODO Auto-generated catch block

					System.out.println("IO Wrong");

				}

			}

		});



我的代码如果不涉及Android,即是直接2个*.java能够正常运行的,我的电脑的IP地址没弄错,Android也加了联网的权限:
<uses-permission android:name="android.permission.INTERNET"></uses-permission>

就是不知道怎么会崩了,那个IP地址我还试过了127.0.0.1和10.0.2.2,我用的是真机调试的

============解决方案1============


你的客户端有问题,不能在OnClickListener里面更新 textView.setText(String.valueOf(i));

============解决方案2============


socket 放到子线程里去

Android的Socket编程尝试失败了,求帮助

标签:android   io   os   ar   java   sp   on   art   问题   

原文地址:http://www.cnblogs.com/llj1985522/p/4044484.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!