首页 > 解决方案 > 二维码扫描仪获取数据,无法连接mysql

问题描述

@Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        IntentResult result = IntentIntegrator.parseActivityResult(requestCode, resultCode, data);
        if (result != null) {
            if (result.getContents() == null) {
                Toast.makeText(this, " Not Found", Toast.LENGTH_LONG).show();
            } else {
                resultQR(result.getContents());
            }
        } else {
            super.onActivityResult(requestCode, resultCode, data);
        }
    }

将二维码发送到服务器并接收结果的方法:

void resultQR(final String dataQR) {
        try {
            JSONObject obj = new JSONObject(dataQR);
            final Integer qrID = obj.getInt("id");

            StringRequest stringRequest = new StringRequest(Request.Method.POST, APIURL,
                    new Response.Listener<String>() {
                        @Override
                        public void onResponse(String response) {
                            try {
                                JSONObject object = new JSONObject(response);
                                if(!object.equals("0")) {

                                    int ID = object.getInt("id");
                                    if(qrID.equals(ID)){
                                        textViewName.setText(ID);
                                    }
                                }

                            } catch (JSONException e) {
                                e.printStackTrace();
                            }
                        }
                    },
                    new Response.ErrorListener() {
                        @Override
                        public void onErrorResponse(VolleyError error) {
                            Toast.makeText(MainActivity.this, "Can't COnnect", Toast.LENGTH_SHORT).show();
                            error.printStackTrace();
                        }
                    });

            Volley.newRequestQueue(this).add(stringRequest);
        } catch (JSONException e) {
            e.printStackTrace();
            Toast.makeText(this,"Data Not Found", Toast.LENGTH_LONG).show();
        }
    }

扫描 qr 后,它总是转到“无法连接”。QR 的值为id: 1。我在手机上运行,​​地址是http://192.168.1.110/。这是我的IP地址。

标签: androidandroid-volley

解决方案


推荐阅读