2015-08-19 4 views
-2

Как я могу назвать этот класс из mainactivity? может кто-нибудь помочь мне, застрял, поскольку я пытаюсь научиться, спасибо, это будет признательно, если ты сможешь помочь мне в этом приветствии.android Как я могу назвать этот класс из mainactivity

package httpp.myapplication; 

import java.io.BufferedReader; 
import java.io.IOException; 
import java.io.InputStreamReader; 
import java.io.OutputStream; 
import java.net.HttpURLConnection; 
import java.net.URL; 

public class HttpURLConnectionExample { 

    private static final String USER_AGENT = "Mozilla/5.0"; 

    private static final String GET_URL = "file:///C:/2-click%20run/index.html"; 

    private static final String POST_URL = "file:///C:/2-click%20run/home.html"; 

    private static final String POST_PARAMS = "userName=Pankaj"; 

    public static void main(String[] args) throws IOException { 

     sendGET(); 
     System.out.println("GET DONE"); 
     sendPOST(); 
     System.out.println("POST DONE"); 
    } 

    private static void sendGET() throws IOException { 
     URL obj = new URL(GET_URL); 
     HttpURLConnection con = (HttpURLConnection) obj.openConnection(); 
     con.setRequestMethod("GET"); 
     con.setRequestProperty("User-Agent", USER_AGENT); 
     int responseCode = con.getResponseCode(); 
     System.out.println("GET Response Code :: " + responseCode); 
     if (responseCode == HttpURLConnection.HTTP_OK) { // success 
      BufferedReader in = new BufferedReader(new InputStreamReader(
        con.getInputStream())); 
      String inputLine; 
      StringBuffer response = new StringBuffer(); 

      while ((inputLine = in.readLine()) != null) { 
       response.append(inputLine); 
      } 
      in.close(); 

      // print result 
      System.out.println(response.toString()); 
     } else { 
      System.out.println("GET request not worked"); 
     } 

    } 

    private static void sendPOST() throws IOException { 
     URL obj = new URL(POST_URL); 
     HttpURLConnection con = (HttpURLConnection) obj.openConnection(); 
     con.setRequestMethod("POST"); 
     con.setRequestProperty("User-Agent", USER_AGENT); 

     // For POST only - START 
     con.setDoOutput(true); 
     OutputStream os = con.getOutputStream(); 
     os.write(POST_PARAMS.getBytes()); 
     os.flush(); 
     os.close(); 
     // For POST only - END 

     int responseCode = con.getResponseCode(); 
     System.out.println("POST Response Code :: " + responseCode); 

     if (responseCode == HttpURLConnection.HTTP_OK) { //success 
      BufferedReader in = new BufferedReader(new InputStreamReader(
        con.getInputStream())); 
      String inputLine; 
      StringBuffer response = new StringBuffer(); 

      while ((inputLine = in.readLine()) != null) { 
       response.append(inputLine); 
      } 
      in.close(); 

      // print result 
      System.out.println(response.toString()); 
     } else { 
      System.out.println("POST request not worked"); 
     } 
    } 

} 

я не знаю, как назвать это из MainActivity

+0

Это очень распространенный вызов класса. , как те, что вы делаете в других классах Java – Sheychan

+0

Почему этот помеченный андроид?] – njzk2

ответ

0

Прежде всего, необходимо иметь какой-то публичные методы, чтобы сделать это использовать класс вне себя. Установите sendGET() и sendPOST() на общедоступные методы вместо частных.

Затем в MainActivity, чтобы получить:

HttpURLConnectionExample.sendGET(); 

размещать:

HttpURLConnectionExample.sendPOST(); 

Это так же, как вы могли бы назвать любой другой класс, и потому sendGET и sendPOST статичны вы не имеют в размещении новый объект HttpURLConnection Пример:

HttpURLConnectionExample httpURLConnectionExample = new HttpURLConnectionExample(); 
+0

, когда я использую HttpURLConnectionExample.sendGET(); говорит, что sendGet имеет частный доступ в httpp.myapplication.HttpURLConnectionExample –

+0

Обновлен мой ответ. Кроме того, при выполнении любого сетевого подключения вы должны делать это за пределами своего UIThread. – Nate

+0

nate i stil get говорит, что sendGet имеет частный доступ в httpp.myapplication.HttpURLConnectionExample –