为了账号安全,请及时绑定邮箱和手机立即绑定

android接收不到服务器端发送回来的数据,请问下是为什么

android接收不到服务器端发送回来的数据,请问下是为什么

qq__3574 2017-03-21 01:21:57
public class MainActivity extends Activity {    private Button send;    private EditText input;    private TextView output;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        input=(EditText)this.findViewById(R.id.input);        output=(TextView)this.findViewById(R.id.output);        send=(Button) this.findViewById(R.id.send);        send.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View view) {                final String Output=input.getText().toString().trim();                new Thread(new Runnable() {                    @Override                    public void run() {                        String path="http://192.168.11.254:8080";                        //String path="http://192.168.111.93";                        try {                            URL url=new URL(path);                            //打开http连接                            HttpURLConnection conn=(HttpURLConnection) url.openConnection();                            conn.setDoInput(true);                            conn.setDoOutput(false);                            conn.setRequestMethod("POST");                          //  conn.setRequestMethod("GET");                            conn.setConnectTimeout(1000*30);//连接超时时间                            conn.setReadTimeout(1000*30);//读取数据的超时时间                            conn.setUseCaches(false);//                            conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");//                            conn.setRequestProperty("Connection", "Keep-Alive");// 维持长连接//                            conn.setRequestProperty("Charset", "UTF-8");//                            conn.setRequestProperty("Content-type", "application/x-java-serialized-object");                              conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");                            conn.connect();                            //对服务器端读取或写入数据                            //DataOutputStream out=new DataOutputStream(conn.getOutputStream());                            OutputStream out=conn.getOutputStream();                            out.write(Output.getBytes());                            //out.writeBytes(Output);                            out.flush();                            out.close();                            //获取响应数据                            int code=conn.getResponseCode();                            String sCurrentLine="";                            String sTotalString="";                            if(code==200){                                InputStream os=conn.getInputStream();                                BufferedReader reader=new BufferedReader(new InputStreamReader(os));                                while((sCurrentLine=reader.readLine())!=null){                                    if(sCurrentLine.length()>0){                                        sTotalString=sTotalString+sCurrentLine.trim();                                    }                                }                                final String finalLine = sTotalString;                                runOnUiThread(new Runnable() {                                    @Override                                    public void run() {                                        output.setText("内容:"+ finalLine);                                        Toast.makeText(MainActivity.this,"try!!!",Toast.LENGTH_SHORT).show();                                    }                                });                            }else{                                Toast.makeText(MainActivity.this,"fail!",Toast.LENGTH_LONG).show();                            }                            //InputStreamReader in=new InputStreamReader(conn.getInputStream());//                             BufferedReader br=new BufferedReader(new InputStreamReader(conn.getInputStream()));//                            //BufferedReader br=new BufferedReader(in);//                            String readLine;//                            StringBuffer strbuffer=new StringBuffer();//                            String line=null;//                            while((readLine=br.readLine())!=null){////                                line+=readLine;//                                strbuffer.append(readLine);//                                strbuffer.append("\n");//                            }////                            line=strbuffer.toString();//                            br.close();                            //System.out.println("result"+result);                            conn.disconnect();//关闭连接                        } catch (MalformedURLException e) {                            e.printStackTrace();                        } catch (IOException e) {                            e.printStackTrace();                        }                    }                }).start();            }        });    }}
查看完整描述

2 回答

?
康6

TA贡献3条经验 获得超5个赞

首先测试下接口是否有问题,   然后看看log   , 或者用 Xutil okhttp  等框架试试


查看完整回答
反对 回复 2017-03-21
  • qq__3574
    qq__3574
    我测试了下,发现连接超时了,这要怎么解决,我也不清楚哪里错了
?
田心枫

TA贡献1064条经验 获得超383个赞

看返回的结果不就行了?或者抓下包
查看完整回答
反对 回复 2017-03-21
  • qq__3574
    qq__3574
    要如何查看就是返回结果时看不到
  • wolf_0005
    wolf_0005
    1. 要学会看日志 2. 有一个问题你要先知道,如果是用安卓模拟器或手机你要先检测http://192.168.111.93是否能够打开(不是在电脑上查看),没有形成局域网也是一种原因。
  • 2 回答
  • 0 关注
  • 2461 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信