Asynctask возвращает ноль в SDK 23 и ниже устройства - PullRequest
0 голосов
/ 21 февраля 2019

Я использую Asynctask для передачи параметров API.Asynctask выполняется, но String Response в Asynctask PostExecute дает нулевое значение для устройства с SDK 23 и ниже.Но когда устройство равно или выше SDK24 (Nougat), оно работает отлично, и данные отправляются в API, однако, когда SDK равен 23, а данные более низкого уровня не отправляются в API.Кто-нибудь сталкивался с этой проблемой?Пожалуйста, расскажите мне, что мне не хватает в моем коде, или я делаю неправильный код.Огромное спасибо.

 private class sendToServerOfficial extends AsyncTask<String,Void,String> {

    int statusCodeone;

    String convert_txt_et_username = et_username.getText().toString();
    String convert_txt_content = et_content.getText().toString();

    @Override
     protected String doInBackground(String... strings) {
        try {
            urlURL = new URL("http://www.testingsite.com/api/sendServer?/ip="+getIPAddress+"&phone_num="+getMobilePhoneNumber+"&user_text="+convert_txt_et_username+"&content_text="+convert_txt_content);
            HttpURLConnection httpURLConnection = (HttpURLConnection) urlURL.openConnection();
            httpURLConnection.setRequestMethod("POST");
            httpURLConnection.setRequestProperty("Content-Type","UTF-8");
            httpURLConnection.connect();
            statusCodeone = httpURLConnection.getResponseCode();
            if (statusCodeone == 200) {
                InputStream it = new BufferedInputStream(httpURLConnection.getInputStream());
                InputStreamReader read = new InputStreamReader(it);
                BufferedReader buff = new BufferedReader(read);
                StringBuilder dta = new StringBuilder();
                String chunks;

                while ((chunks = buff.readLine()) != null) {
                    dta.append(chunks);
                }

                buff.close();
                read.close();
                return dta.toString();
            }

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

        return null;
    }
    @Override
    protected void onPostExecute(String response) {
        Toast.makeText(MainActivity.this, response + "Form is submitted already" + urlURL, Toast.LENGTH_LONG).show();

        txt_inputURL.setEnabled(true);
        btnClick.setClickable(true);

        txt_inputURL.getText().clear();
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...