在网上找了个android与pc通信的问题,可是android端一直出现“unfortunately,**has stopped”,以下是程序的所有问题,求高手解答!注:在AndroidManifest.xml中已经添加了网络权限<uses-permissionandroid:name="android.permission.INTERNET"/>
soketactivity.java文件:
package com.test.socket;import java.io.DataInputStream;import java.io.DataOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.net.Socket;import java.net.UnknownHostException; import android.app.Activity;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.TextView; public class SocketActivity extends Activity implements OnClickListener { /** Called when the activity is first created. */ private TextView tv; private Button btn, btn_exit; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); tv = (TextView)findViewById(R.id.message); tv.setText("Ready"); btn = (Button)findViewById(R.id.send); btn.setOnClickListener(this); btn_exit = (Button)findViewById(R.id.exit); btn_exit.setOnClickListener(this); } public void onClick(View v) { if (v == btn) { tv.setText("Start"); int port = 7100; try { Socket socket = new Socket("121.48.240.56", port);//此处已经改为PC端的ip OutputStream out = socket.getOutputStream(); DataOutputStream dout = new DataOutputStream(out); dout.writeUTF("Jordan"); InputStream in = socket.getInputStream(); DataInputStream din = new DataInputStream(in); String str = din.readUTF(); tv.setText(str); in.close(); out.close(); socket.close(); }catch (UnknownHostException e) { // TODO: handle exception tv.setText("UnknownHostError"); }catch (IOException e) { // TODO: handle exception tv.setText("IOError"); } } else if (v == btn_exit) { finish(); } }}
=============================================================================================
main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" > <TextView
android:id="@+id/message"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="welcome, sandy!" />
<button
android:id="@+id/send"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="send" />
<button
android:id="@+id/exit"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="exit" />
</LinearLayout>===========================================
server端,Socketserver.JAVA
import java.net.*;import java.io.*; public class SocketAppServer { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub ServerSocket ss = null; int port = 7100; String hello="From Server:Hello World!"; //create ServerSocket try { ss = new ServerSocket(port); }catch (IOException e) { // TODO: handle exception System.out.println(e); System.exit(1); } //accept client connection while(true) { try { System.out.println("Waiting for connection on port="+port); Socket cs = ss.accept(); InputStream input = cs.getInputStream(); DataInputStream din = new DataInputStream(input); String name = din.readUTF(); OutputStream output = cs.getOutputStream(); DataOutputStream dout = new DataOutputStream(output); dout.writeUTF(hello+"Your name:"+name); System.out.println("Connection OK port="+port); System.out.println("========================="); din.close(); output.close(); cs.close(); }catch (IOException e) { // TODO: handle exception System.out.println(e); } } }}
一直就出现stopped这个问题,是怎么回事呢?
soketactivity.java文件:
package com.test.socket;import java.io.DataInputStream;import java.io.DataOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.net.Socket;import java.net.UnknownHostException; import android.app.Activity;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.TextView; public class SocketActivity extends Activity implements OnClickListener { /** Called when the activity is first created. */ private TextView tv; private Button btn, btn_exit; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); tv = (TextView)findViewById(R.id.message); tv.setText("Ready"); btn = (Button)findViewById(R.id.send); btn.setOnClickListener(this); btn_exit = (Button)findViewById(R.id.exit); btn_exit.setOnClickListener(this); } public void onClick(View v) { if (v == btn) { tv.setText("Start"); int port = 7100; try { Socket socket = new Socket("121.48.240.56", port);//此处已经改为PC端的ip OutputStream out = socket.getOutputStream(); DataOutputStream dout = new DataOutputStream(out); dout.writeUTF("Jordan"); InputStream in = socket.getInputStream(); DataInputStream din = new DataInputStream(in); String str = din.readUTF(); tv.setText(str); in.close(); out.close(); socket.close(); }catch (UnknownHostException e) { // TODO: handle exception tv.setText("UnknownHostError"); }catch (IOException e) { // TODO: handle exception tv.setText("IOError"); } } else if (v == btn_exit) { finish(); } }}
=============================================================================================
main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" > <TextView
android:id="@+id/message"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="welcome, sandy!" />
<button
android:id="@+id/send"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="send" />
<button
android:id="@+id/exit"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="exit" />
</LinearLayout>===========================================
server端,Socketserver.JAVA
import java.net.*;import java.io.*; public class SocketAppServer { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub ServerSocket ss = null; int port = 7100; String hello="From Server:Hello World!"; //create ServerSocket try { ss = new ServerSocket(port); }catch (IOException e) { // TODO: handle exception System.out.println(e); System.exit(1); } //accept client connection while(true) { try { System.out.println("Waiting for connection on port="+port); Socket cs = ss.accept(); InputStream input = cs.getInputStream(); DataInputStream din = new DataInputStream(input); String name = din.readUTF(); OutputStream output = cs.getOutputStream(); DataOutputStream dout = new DataOutputStream(output); dout.writeUTF(hello+"Your name:"+name); System.out.println("Connection OK port="+port); System.out.println("========================="); din.close(); output.close(); cs.close(); }catch (IOException e) { // TODO: handle exception System.out.println(e); } } }}
一直就出现stopped这个问题,是怎么回事呢?
解决方案 »
- 一个listview的动态改变高度的问题
- android4.0 adb无法调试!360助手USB连接原理是怎样的?
- android手机,“正在运行的服务”占用空间大,有20多M,如何解决?
- 如何刷新系统的launcher2界面...
- Eclipse 写android应用时,可不可以设置断点跟踪?
- 如何才能学好Android?(请高手指教)
- 关于闹钟和notification的问题
- NDK开发的2个问题。高分求高手来解决。
- 如何实现button按下前后不同效果
- android怎么读取sqlserver中的数据,以及发送控制命令到winform程序
- 关于ViewPager使用的一些问题,求解???
- 用http请求json数据报错
不过有很多其他的error,都没看到其他的错误信息。
你看看这个xml文件是不是有问题