Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/217.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java.net.SocketTimeoutException:无法连接到(我的ip)_Java_Android_Mysql - Fatal编程技术网

java.net.SocketTimeoutException:无法连接到(我的ip)

java.net.SocketTimeoutException:无法连接到(我的ip),java,android,mysql,Java,Android,Mysql,我正在开发一个需要连接mysql的android应用程序。我使用pc作为本地主机托管wampserver。我还通过我的电脑将我真正的android设备连接到mysql。当我使用IP 192.168.1.x的家庭网络连接时,连接很好,我的应用程序在检索和插入数据方面工作正常。但当我使用其他网络/IP地址连接时,例如10.207.x.x或192.168.0.x,它会抛出错误。我已被检查,我已添加INTERNET权限,我尝试更改连接中的端口号(例如文件目录),但仍不起作用。请帮忙,我已经挣扎了几天了

我正在开发一个需要连接mysql的android应用程序。我使用pc作为本地主机托管wampserver。我还通过我的电脑将我真正的android设备连接到mysql。当我使用IP 192.168.1.x的家庭网络连接时,连接很好,我的应用程序在检索和插入数据方面工作正常。但当我使用其他网络/IP地址连接时,例如10.207.x.x或192.168.0.x,它会抛出错误。我已被检查,我已添加INTERNET权限,我尝试更改连接中的端口号(例如文件目录),但仍不起作用。请帮忙,我已经挣扎了几天了

错误日志:

04-27 22:19:23.920 4644-4740/? W/System.err: java.net.SocketTimeoutException: failed to connect to /192.168.0.108 (port 8085) after 15000ms
04-27 22:19:23.940 4644-4740/? W/System.err:     at libcore.io.IoBridge.connectErrno(IoBridge.java:159)
04-27 22:19:23.940 4644-4740/? W/System.err:     at libcore.io.IoBridge.connect(IoBridge.java:112)
04-27 22:19:23.950 4644-4740/? W/System.err:     at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:192)
04-27 22:19:23.960 4644-4740/? W/System.err:     at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:460)
04-27 22:19:23.960 4644-4740/? W/System.err:     at java.net.Socket.connect(Socket.java:833)
04-27 22:19:23.970 4644-4740/? W/System.err:     at com.android.okhttp.internal.Platform.connectSocket(Platform.java:152)
04-27 22:19:23.980 4644-4740/? W/System.err:     at com.android.okhttp.Connection.connect(Connection.java:101)
04-27 22:19:23.980 4644-4740/? W/System.err:     at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:294)
04-27 22:19:23.990 4644-4740/? W/System.err:     at com.android.okhttp.internal.http.HttpEngine.sendSocketRequest(HttpEngine.java:255)
04-27 22:19:24.000 4644-4740/? W/System.err:     at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:206)
04-27 22:19:24.000 4644-4740/? W/System.err:     at com.android.okhttp.internal.http.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:345)
04-27 22:19:24.010 4644-4740/? W/System.err:     at com.android.okhttp.internal.http.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:89)
04-27 22:19:24.020 4644-4740/? W/System.err:     at com.android.okhttp.internal.http.HttpURLConnectionImpl.getOutputStream(HttpURLConnectionImpl.java:197)
04-27 22:19:24.030 4644-4740/? W/System.err:     at com.qualcomm.vuforia.samples.SampleApplication.utils.HttpUrlConnectionParser.makehttpUrlConnection(HttpUrlConnectionParser.java:48)
04-27 22:19:24.030 4644-4740/? W/System.err:     at com.qualcomm.vuforia.samples.Books.app.Books.FeedBack$ConnectDatabase.doInBackground(FeedBack.java:182)
04-27 22:19:24.040 4644-4740/? W/System.err:     at com.qualcomm.vuforia.samples.Books.app.Books.FeedBack$ConnectDatabase.doInBackground(FeedBack.java:140)
04-27 22:19:24.050 4644-4740/? W/System.err:     at android.os.AsyncTask$2.call(AsyncTask.java:288)
04-27 22:19:24.050 4644-4740/? W/System.err:     at java.util.concurrent.FutureTask.run(FutureTask.java:237)
04-27 22:19:24.060 4644-4740/? W/System.err:     at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
04-27 22:19:24.070 4644-4740/? W/System.err:     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
04-27 22:19:24.070 4644-4740/? W/System.err:     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
04-27 22:19:24.080 4644-4740/? W/System.err:     at java.lang.Thread.run(Thread.java:841)
我的背景代码:

 @Override
    protected String doInBackground(String... params) {
        String fb_url = "http://192.168.0.108:8085/android/comment.php";
        String get_list = "http://192.168.0.108:8085/android/get_list.php";
        String get_id = "http://192.168.0.108:8085/android/get_id.php";
        data = new HashMap<>();
        String[] response = new String[]{"Response Accepted, Thanks!","Leave us some comment =)"};
        String method = params[0];
        if (method.equals("feedBack")) {

            String id = params[1];
            String bus = params[2];
            String depart_station = params[3];
            String arrive_station = params[4];
            String item = params[5];
            String comment = params[6];

            data.put("reported_case",id);
            data.put("reported_bus",bus);
            data.put("depart_station", depart_station);
            data.put("arrive_station", arrive_station);
            data.put("reported_item", item);
            data.put("reporter_comment", comment);

            try {
                String result = HttpUrlConnectionParser.makehttpUrlConnection(fb_url, data);
                result = null;
                return response[0];

            } catch (Exception e) {
            }

        } else if (method.equals("getList")) {

            try {
                String result =     HttpUrlConnectionParser.makehttpUrlConnection(get_list, data);
                JSONObject json = new JSONObject(result);
                boolean ssucc = json.getBoolean("ssuccess");
                boolean isucc = json.getBoolean("isuccess");
                boolean bsucc = json.getBoolean("bsuccess");

                if (!ssucc && !isucc &&!bsucc) {
                    runOnUiThread(new Runnable() {
                        @Override
                        public void run() {
                            Toast.makeText(getApplicationContext(), "Error", Toast.LENGTH_SHORT).show();
                        }
                    });
                } else {
                    JSONArray jsonArrays = json.getJSONArray("Station");
                    JSONArray jsonArrayi = json.getJSONArray("Item");
                    JSONArray jsonArrayb = json.getJSONArray("BusType");
                    final List<String> lists = new ArrayList<>();
                    final List<String> listi = new ArrayList<>();
                    final List<String> listb = new ArrayList<>();


                    for (int i = 0; i < jsonArrayb.length(); i++) {
                        JSONObject child = jsonArrayb.getJSONObject(i);
                        String childBus = child.optString("Bus");
                        listb.add(childBus);

                    }

                    for (int i = 0; i < jsonArrays.length(); i++) {
                        JSONObject child = jsonArrays.getJSONObject(i);
                        String childId = child.optString("ID");
                        String childName = child.optString("Name");
                        lists.add(childId + " " + childName);
                    }

                    for (int i = 0; i < jsonArrayi.length(); i++) {
                        JSONObject child = jsonArrayi.getJSONObject(i);
                        String childId = child.optString("ID");
                        String childItem = child.optString("Item");
                        listi.add(childId + " " + childItem);

                    }

                    runOnUiThread(new Runnable() {
                        @Override
                        public void run() {
                            ArrayAdapter<String> adp1 = new ArrayAdapter<>(getApplicationContext(),R.layout.spinner_text, listb);
                            adp1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
                            editBus.setAdapter(adp1);

                            ArrayAdapter<String> adp2 = new ArrayAdapter<>(getApplicationContext(), R.layout.spinner_text, listi);
                            adp2.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
                            editItem.setAdapter(adp2);

                            ArrayAdapter<String> adp3 = new ArrayAdapter<>(getApplicationContext(), R.layout.spinner_text, lists);
                            adp1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
                            editStationDepart.setAdapter(adp3);
                            editStationArrive.setAdapter(adp3);
                        }
                    });

                }

                return response[1];

            } catch (JSONException e) {
                e.printStackTrace();
            }
        }else if (method.equals("getId")) {

            try {
                String result = HttpUrlConnectionParser.makehttpUrlConnection(get_id, data);
                JSONObject json = new JSONObject(result);
                boolean fsucc = json.getBoolean("fsuccess");

                if (!fsucc) {
                    return null;
                }else{
                    JSONArray jsonArrayf = json.getJSONArray("FeedBack_id");
                    JSONObject child = jsonArrayf.getJSONObject(0);
                    String childId = child.optString("ID");

                    return childId;

                }

            } catch (JSONException e) {
                e.printStackTrace();
            }
        }
            return null;

    }
@覆盖
受保护的字符串doInBackground(字符串…参数){
字符串fb_url=”http://192.168.0.108:8085/android/comment.php";
字符串get_list=”http://192.168.0.108:8085/android/get_list.php";
字符串get_id=”http://192.168.0.108:8085/android/get_id.php";
data=newhashmap();
String[]response=newstring[]{“response Accepted,thanking!”,“leavesomecomment=)”;
字符串方法=参数[0];
if(方法等于(“反馈”)){
字符串id=参数[1];
字符串总线=参数[2];
字符串depart_station=params[3];
字符串到达站=参数[4];
字符串项=参数[5];
字符串注释=参数[6];
数据。put(“报告的案例”,id);
数据输入(“报告的总线”,总线);
数据输入(“出发站”,出发站);
数据输入(“到达站”,到达站);
数据输入(“报告的项目”,项目);
data.put(“reporter_comment”,comment);
试一试{
字符串结果=HttpUrlConnectionParser.makehttpUrlConnection(fb_url,数据);
结果=空;
返回响应[0];
}捕获(例外e){
}
}else if(method.equals(“getList”)){
试一试{
String result=HttpUrlConnectionParser.makehttpUrlConnection(获取列表,数据);
JSONObject json=新的JSONObject(结果);
布尔ssucc=json.getBoolean(“SSACCESS”);
boolean isucc=json.getBoolean(“isuccess”);
boolean bsucc=json.getBoolean(“bsuccess”);
如果(!ssucc&&!isucc&&!bsucc){
runOnUiThread(新的Runnable(){
@凌驾
公开募捐{
Toast.makeText(getApplicationContext(),“Error”,Toast.LENGTH_SHORT.show();
}
});
}否则{
JSONArray jsonArrays=json.getJSONArray(“站”);
JSONArray jsonArrayi=json.getJSONArray(“项”);
JSONArray jsonArrayb=json.getJSONArray(“BusType”);
最终列表列表=新的ArrayList();
最终列表列表i=新的ArrayList();
最终列表listb=新的ArrayList();
for(int i=0;ipublic static String makehttpUrlConnection(String   url_path,HashMap<String,String> data) {
    try {
        URL url = new URL(url_path);
        urlConnection = (HttpURLConnection) url.openConnection();
        urlConnection.setReadTimeout(10000);
        urlConnection.setConnectTimeout(20000);
        urlConnection.setRequestMethod("POST");
        urlConnection.setDoInput(true);
        urlConnection.setDoOutput(true);

        OutputStream os = urlConnection.getOutputStream();

        BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(os, "UTF-8"));
        writer.write(getQueryData(data));
        writer.flush();
        writer.close();

        urlConnection.connect();
        is = urlConnection.getInputStream();

    } catch (MalformedURLException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }

        try {
            BufferedReader reader = new BufferedReader(new InputStreamReader(is, "iso-8859-1"), 8);
            StringBuilder sb = new StringBuilder();
            String line = null;


            while ((line = reader.readLine()) != null) {
                sb.append(line + "\n");
            }


            json = sb.toString();
            is.close();

        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

    return json;
}