title: Why is in main thread?
body: <p>Hello here is my code:</p>
  
  <pre><code>package pl.polskieszlaki.przewodnikjura;
  
  public class JSONParser extends AsyncTask&lt;String, Void, JSONArray&gt; {
  public JSONParser() {
  
  }
  
  @Override
  protected JSONArray doInBackground(String... url) {
      return getJSONFromUrl(url[0]);
  }
  
  public JSONArray getJSONFromUrl(String inputUrl) {
      JSONArray jObj = null;
      String result = "";
      InputStream is = null;
      // Making HTTP request
      Log.d("ps","url: "+inputUrl);
      try {
          URL url = new URL(inputUrl);
          is=url.openStream();
      } catch (Exception e) {
          Log.e("log_tag", "Error in http connection " + e.toString());
      }
  
      // convert response to string
      try {
          BufferedReader reader = new BufferedReader(new InputStreamReader(
                  is, "utf-8"), 8);
          StringBuilder sb = new StringBuilder();
          String line = null;
          while ((line = reader.readLine()) != null) {
              sb.append(line + "\n");
          }
          is.close();
          result = sb.toString();
          Log.v("RESULT: ", result);
      } catch (Exception e) {
          Log.e("log_tag", "Error converting result " + e.toString());
      }
  
      try {
  
          jObj = new JSONArray(result);
      } catch (JSONException e) {
          Log.e("log_tag", "Error parsing data " + e.toString());
      }
  
      //return jArray;
      return jObj;
  
  }
  
  }
  </code></pre>
  
  <p>I always get "Error in http connection android.os.NetworkOnMainThreadException" - why?
  I have AsyncTask.</p>
  
  <p>Here is my code in Activity:</p>
  
  <pre><code>    JSONParser jParser = new JSONParser();
      Log.d("ps","1Pobieram url: "+url); 
      // getting JSON string from URL
      JSONArray json = jParser.getJSONFromUrl(url);
  </code></pre>