0

在我的 android 应用程序中,我调用了一种从 html 页面到 java 页面的 javascript 方法。

 this.start = function () 
 {       
     try 
     { 
          Mynamespace.myapi.getvalue("myvalue", { 
            onSuccess: function (data) 
            { 
               value= JSON.parse(data);
               alert("called"); 
             }, 
             onFailure: function (error) { } 
          }); 
      } 
      catch (err) { }
      if (value== null) { value= new Object(); 
    };

在上面,在我的 java 类中调用了getvalue方法并返回了一些值,但是在获取 OnSuccess/OnFailure 内部的值之前,调用了下面的行。How to wait the method up to the callback is called?

if (value== null) { value= new Object(); 
4

2 回答 2

0
private class LongOperation extends AsyncTask<String, Void, String> 
{
    protected void onPreExecute() 
    { 
        progressDialog = new ProgressDialog(activity.this); 
        progressDialog.setTitle("Processing...");
        progressDialog.setMessage("Please wait...");
        progressDialog.setCancelable(true);
        progressDialog.show();
    }

    protected String doInBackground(String... params) 
    {
        try 
        {
            //Getting data from server
        }
        catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }
    protected void onPostExecute(String result) 
    {
        progressDialog.dismiss();
    }
  }

这个怎么称呼

ProgressDialog progressDialog;
LongOperation mytask = null;
mytask = new LongOperation();
mytask.execute();
于 2013-01-19T07:19:14.563 回答
0

我已经对我的查询进行了更多分析。最后我得到了解决方案。String that i have loaded with webview was having more single quotes so unable to load with webview. 所以不是调用成功失败回调,而是调用下一行。

现在我在我的java类中用“\'”替换了单引号“\'”。工作正常。:-)

于 2013-02-11T04:00:03.120 回答