I'm trying to post a an HTTP URL with parameters. I've appended the parameters using appendQueryPrameters But statements after  build() are skipped and the control comes out of the AsyncTask.Below is th snippet of the AsyncTask
private class MyAsyncTask extends AsyncTask<String, Integer, String> {
        @Override
        protected String doInBackground(String... params) {
            // TODO Auto-generated method stub
            String givenDob = params[0];
            String givensurname = params[1];
            String givenCaptcha = params[2];
            String response = "";
            try {
                Uri.Builder builder = new Uri.Builder()
                        .appendQueryParameter("dateOfBirth", givenDob)
                        .appendQueryParameter("userNameDetails.surName", givensurname)
                        .appendQueryParameter("captchaCode", givenCaptcha);
                String query = builder.build().toString();
                PrintWriter out = new PrintWriter(connection.getOutputStream());
                out.print(query);
                out.close();
                int responseCode = connection.getResponseCode();
                Log.d("responseCode", String.valueOf(responseCode));
   /*             BufferedWriter writer = new BufferedWriter(
                      new OutputStreamWriter(connection.getOutputStream(), "ISO-8859-1"));
                writer.write(query);
               writer.flush();
               writer.close();
    */
                connection.getOutputStream().close();
                if (responseCode == HttpsURLConnection.HTTP_OK) {
                    String line;
                    BufferedReader br = new BufferedReader(new InputStreamReader(connection.getInputStream()));
                    while ((line = br.readLine()) != null) {
                        response += line;
                        Log.d("response", response);
                    }
                } else {
                    response = "";
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
            return response;
        }
        @Override
        protected void onPostExecute(String s) {
            Log.d("res", s);
        }
    }
I tried with PrintWriter also.Still it skips the execution of the statements after the line  String query = builder.build().toString();
PS: I've opened the HttpURLconnection in another AsyncTask and calling that on onCreate() Below is the code.
 URL url = new URL("https://myurl.com/path1/path2/path3.html");
            connection = (HttpsURLConnection) url.openConnection();
            connection.setReadTimeout(10000);
            connection.setConnectTimeout(15000);
            connection.setRequestMethod("POST");
            connection.setDoInput(true);
            connection.setDoOutput(true);
Used this for reference
 
     
    