title: How can I send HTTP Basic Authentication headers in Android?
body: <p>I am not sure how to send HTTP Auth headers.</p>
  
  <p>I have the following HttpClient to get requests, but not sure how I can send requests?</p>
  
  <pre><code>public class RestClient extends AsyncTask&lt;String, Void, JSONObject&gt; {
          private String convertStreamToString(InputStream is) {
              /*
               * To convert the InputStream to String we use the
               * BufferedReader.readLine() method. We iterate until the
               * BufferedReader return null which means there's no more data to
               * read. Each line will appended to a StringBuilder and returned as
               * String.
               */
              BufferedReader reader = new BufferedReader(new InputStreamReader(is));
              StringBuilder sb = new StringBuilder();
  
              String line = null;
              try {
                  while ((line = reader.readLine()) != null) {
                      sb.append(line + "\n");
                  }
              } catch (IOException e) {
                  e.printStackTrace();
              } finally {
                  try {
                      is.close();
                  } catch (IOException e) {
                      e.printStackTrace();
                  }
              }
  
              return sb.toString();
          }
  
          /*
           * This is a test function which will connects to a given rest service
           * and prints it's response to Android Log with labels "Praeda".
           */
          public JSONObject connect(String url) {
              HttpClient httpclient = new DefaultHttpClient();
  
              // Prepare a request object
              HttpGet httpget = new HttpGet(url);
  
              // Execute the request
              HttpResponse response;
              try {
                  response = httpclient.execute(httpget);
                  // Examine the response status
                  Log.i("Praeda", response.getStatusLine().toString());
  
                  // Get hold of the response entity
                  HttpEntity entity = response.getEntity();
  
                  if (entity != null) {
  
                      // A Simple JSON Response Read
                      InputStream instream = entity.getContent();
                      String result = convertStreamToString(instream);
  
                      // A Simple JSONObject Creation
                      JSONObject json = new JSONObject(result);
  
                      // Closing the input stream will trigger connection release
                      instream.close();
  
                      return json;
                  }
  
              } catch (ClientProtocolException e) {
                  e.printStackTrace();
              } catch (IOException e) {
                  e.printStackTrace();
              } catch (JSONException e) {
                  e.printStackTrace();
              }
  
              return null;
          }
  
          @Override
          protected JSONObject doInBackground(String... urls) {
              return connect(urls[0]);
          }
  
          @Override
          protected void onPostExecute(JSONObject json) {
  
          }
      }
  </code></pre>