httpurlconnection_phone

来源:互联网 发布:网页美工设计视频 编辑:程序博客网 时间:2024/06/06 17:22
package com.example.a02_httpurlconnection_phone_02;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.text.Editable;import android.text.TextWatcher;import android.util.Log;import android.widget.EditText;import java.io.BufferedReader;import java.io.InputStream;import java.io.InputStreamReader;import java.net.HttpURLConnection;import java.net.URL;public class MainActivity extends AppCompatActivity {    private EditText et1;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        et1 = (EditText) findViewById(R.id.et1);        et1.addTextChangedListener(new TextWatcher() {            @Override            public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {            }            @Override            public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {                String s = charSequence.toString();                if (s.length() == 11) {                    searchPhone(s);                }            }            @Override            public void afterTextChanged(Editable editable) {            }        });    }    private void searchPhone(final String s) {        new Thread() {            @Override            public void run() {                String path = "https://tcc.taobao.com/cc/json/mobile_tel_segment.htm?tel=" + s;                try {                    URL url = new URL(path);                    HttpURLConnection connection = (HttpURLConnection) url.openConnection();                    connection.setRequestMethod("GET");                    connection.setReadTimeout(5000);                    connection.setConnectTimeout(5000);                    int responseCode = connection.getResponseCode();                    if (responseCode == 200) {                        InputStream inputStream = connection.getInputStream();                        String string = streamTostring(inputStream, "gbk");                        String json = string.substring(string.indexOf("{"));                        Log.i("string", json);                    }                } catch (Exception e) {                    e.printStackTrace();                }            }        }.start();    }    private String streamTostring(InputStream inputStream, String cheak) {        try {            InputStreamReader inputStreamReader = new InputStreamReader(inputStream, cheak);            BufferedReader bufferedReader = new BufferedReader(inputStreamReader);            StringBuilder builder = new StringBuilder();            String s = null;            while ((s = bufferedReader.readLine()) != null) {                builder.append(s);            }            bufferedReader.close();            ;            return builder.toString();        } catch (Exception e) {            e.printStackTrace();        }        return null;    }}