2015-08-30 2 views
-1

Как мне назвать этот код.Как я могу назвать этот код с помощью jsoup login

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

    Connection.Response loginForm = Jsoup.connect("http://deeproute.com/deeproute/default.asp") 
      .method(Connection.Method.GET) 
      .execute(); 

    Document document = Jsoup.connect("http://deeproute.com/deeproute/default.asp") 
      .data("cookieexists", "false") 
      .data("name", "username") 
      .data("password", "pass") 
      .data("subbera", "Login") 
      .cookies(loginForm.cookies()) 
      .post(); 

} 

Я хочу знать, как вызвать этот код, я добавил это к моему MainActivity и теперь я хочу знать, как это назвать. Я изучаю, как сделать post, используя jsoup.

+1

Вы не можете использовать этот код непосредственно в 'MainActivity' - он имеет длительное время выполнения, поэтому он будет блокировать пользовательский интерфейс в течение длительного времени, и Android этого не позволяет. Поместите этот код в 'AsyncTask' и вызовите задачу из вашей основной. Попробуйте Google, вы найдете много вещей. – TDG

+0

@TDG Вы должны оставить свой комментарий в качестве ответа. – alkis

+0

@alkis Вы так думаете? Это не отвечает прямо на вопрос, это просто дает направление? – TDG

ответ

1

Вы не можете использовать этот код непосредственно в MainActivity. Он имеет длительное время выполнения, поэтому он блокирует пользовательский интерфейс, который не разрешен Android. Поместите этот код в AsyncTask и вызовите задачу из своей основной. Вы можете использовать его как это:

@Override 
public void onCreate(Bundle savedInstanceState) { 
    //Do some stuff here 
    new ConnectToInternet().execute(); //And call your task 
} 

private class ConnectToInternet extends AsyncTask<Void, Void, String> { 

    @Override 
    protected String doInBackground(Void... params) { 
     //place here your code for accessing the web 
     return YOUR_ANSWER_AS_STRING //or modify the return type 
    } 

    @Override 
    protected void onPostExecute(String result) { 
     //This method receives your String result of 
     //doInBackground so you can process it here. 
    } 

Вы можете прочитать больше об этом here.

Смежные вопросы