title: android.os.NetworkOnMainThreadException json android
body: <p>In the below code I got an error when running my android project for sending json to cloudant.com from second layout,
  quiero mandar json desde android en un segundo layout pero me manda el error android.os.NetworkOnMainThreadException  desde el logcat</p>
  
  <pre><code>    //Obtenemos una referencia al LocationManager
      locManager = 
          (LocationManager)getSystemService(Context.LOCATION_SERVICE);
      //Obtenemos la última posición conocida
      final Location loc = 
          locManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
  
  
  
      // buton ejecuta
      btnActualizar.setOnClickListener(new OnClickListener() {
          @Override
          public void onClick(View v) {
          //  comenzarLocalizacion();
  
  
  
              HttpPost request = new HttpPost( "https://tonatiuhnava.cloudant.com/android/" );
              request.addHeader( "Content-Type", "application/json" );
              request.addHeader( "Authorization", "Basic " + Base64.encodeToString( "tonatiuhnava:70n471uh".getBytes(), Base64.NO_WRAP));
              JSONObject cadena = new JSONObject();
  
              if(loc != null)
              {
  
              try{
                  cadena.put("nombre", "tonatiuhNava");//Le asignamos los datos que necesitemos
                  cadena.put("Category", new Integer(01));
                  cadena.put("Event", new Integer(201));
  
                  cadena.put("Fecha",curTime);
                  //cadena.put("Fecha",  currentDate.toGMTString());
                  cadena.put("longitud", new Double(loc.getLongitude())); 
                  cadena.put("Latitud", new Double(loc.getLatitude()));
  
              } catch ( JSONException e )
              {
                  Log.d( "WAZAAA" , "error json" );
  
              }
  
              try{
                  request.setEntity( new StringEntity(  cadena.toString() ) );
  
              } catch ( Exception e ){
                  Log.d( "WAZAAA" , "error entity" );
  
              }
  
              DefaultHttpClient connection = new DefaultHttpClient();
              try{
            Log.d( "WAZAAA" , "haciendo request");
  
              HttpResponse execute = connection.execute( request );
              Log.d( "WAZAAA" , "request hecho");
  
              byte[] bytes = new byte[1000];
              int numRead = 0;
              StringBuilder x = new StringBuilder();
              InputStream stream = execute.getEntity().getContent();
              stream.read( bytes );
              x.append( new String( bytes, 0, numRead ) );
  
  
  
              Log.d( "WAZAAA" , execute.getStatusLine().getReasonPhrase() );
              } catch (ClientProtocolException e) {
                  // TODO Auto-generated catch block
                  Log.e( "WAZAAA" , "client error" );
                  e.printStackTrace();
              } catch (IOException e) {
                  // TODO Auto-generated catch block
                  e.printStackTrace();
                  Log.e( "Internet Please :..(" , "IO error" );
              }
              Log.d( "WAZAAA" , "fin");
  
              // termina if 
              }else {
                  Context context = getApplicationContext();
                  CharSequence text = "Espere a que cargue coordenadas...";
                  int duration = Toast.LENGTH_SHORT;
  
                  Toast toast = Toast.makeText(context, text, duration);
                  toast.show();
  
  
              }
  
          }
  </code></pre>