2016-11-06 5 views
0
public class SecondActivity2 extends AppCompatActivity { 

    public static String main_html = ""; 
    public static int second_action = 0; 
    WebView webView2; 
    public static taskResearch ndc; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     getSupportActionBar().hide(); 
     setContentView(R.layout.activity_main); 
     webView2 = (WebView) findViewById(R.id.webView); 

     String userid = "12345"; 

     try { 
      ndc = new TaskResearch(userid, "1", "keyword", 5, 4, "orderid", 6, "title", "text"); 
      ndc.execute(""); 
     } catch (Exception e) { 
      e.printStackTrace(); 
     } 

     Log.v("htmlg", "taskResearch finished"); 

    } 



    class TaskResearch extends AsyncTask <String, String, String> { 

     String deviceId, s_id, keyword, city, s_title, s_text; 
     int count1, size1, online; 

     public TaskResearch(String deviceId, String s_id, String keyword, int count1, int size1, String city, int online, String s_title, String s_text){ 

      this.deviceId = deviceId; 
      this.s_id = s_id; 
      this.keyword = keyword; 
      this.city = city; 
      this.s_title = s_title; 
      this.s_text = s_text; 
      this.count1 = count1; 
      this.size1 = size1; 
      this.online = online; 

     } 

     protected String doInBackground(String... strings) { 

      String sonuc = ""; 

      runOnUiThread(new Runnable() { 
       public void run() { 





       } 
      }); 

      return "a"; 

     } 

     @Override 
     protected void onPostExecute(String s) { 
      super.onPostExecute(s); 
     } 


    } 

    class html_reader { 

     @SuppressWarnings("unused") 
     @JavascriptInterface 
     public void processHTML(final String html) { 

      // Log.d("HTMLG", "html: " + html); 

      // Log.d("HTMLG", "html: " + html); 
      // html_reader jssil = new html_reader(deviceId, sId, swAfter, swcity); 

      // webView2.addJavascriptInterface(jssil, "HTMLOUT"); 

      main_html = html; 

     } 

     @SuppressWarnings("unused") 
     @JavascriptInterface 
     public void ok() { 

      // Log.d("HTMLG", "html: " + html); 

      // Log.d("HTMLG", "html: " + html); 
      // html_reader jssil = new html_reader(deviceId, sId, swAfter, swcity); 

      // webView2.addJavascriptInterface(jssil, "HTMLOUT"); 

      second_action = 1; 

     } 


} 

Здравствуйте, друзья.Webview внутри AsyncTask

Мои коды выше. Я хочу запустить эту команду.

ndc = new taskResearch (userid, "1", "keyword", 5, 4, "orderid", 6, "title", "text");

Когда эта команда завершена. Я хочу, чтобы эта команда выполнялась.

Log.v ("htmlg", "taskResearch finished");

Но 2 из них начинаются вместе, а второй заканчивается первым. Я хочу, чтобы первая команда начала и закончилась, тогда должна начаться вторая команда. Как я могу это сделать ?

В чем моя ошибка?

+0

Возможный дубликат [Android-вызов AsyncTask сразу после завершения другого] (http://stackoverflow.com/questions/10048958/android-calling-asynctask-right-after-an-another-finished) – Talha

ответ

0

Кстати, если вы используете HTML-код с сайта, вы можете использовать разные структуры.

Вы можете использовать onPostExecute для определения конца процесса.

@Override 
protected void onPostExecute(String s) { 
    super.onPostExecute(s); 
    processFinished(); 
} 


void processFinished(){ 
    Log.v("htmlg", "task_research finished"); 
} 
+0

Я уже пробовал это , вы можете увидеть в нем мой код –

+0

@ HakanSarı в вашем коде у вас нет оператора журнала после super.onPostExecute (s). Добавьте это и повторите попытку. –

0

Один из способов сделать это переопределить метод onPostExecute, как уже упоминалось в другой должности. Другой способ сделать это состоит в следующем:

После вызова ndc.execute() вы можете ждать его, чтобы получить результат, как этот:

String output = ndc.get(); // i believe this is the api 

После того, как вы вернулись, что выход, вы можете сделать независимо от того, что вы хотите, и второй журнал будет печатать после.

+0

Я сделал это, он не работает –

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