Android-在http get方法之外调用时,String返回空。

时间:2018-08-07 21:17:05

标签: android android-studio

我有一个字符串ID,我在http client.OnSuccess方法内分配了字符串。

    public static void getInfo(String age, Info al){
    final String URL = "url";
    final AsyncHttpClient client2 = new AsyncHttpClient();

    client2.get(URL, null, new TextHttpResponseHandler() {
        @Override
        public void onFailure(int statusCode, Header[] headers, String responseString, Throwable throwable) {

        }

        @Override
        public void onSuccess(int statusCode, Header[] headers, String responseString) {

            parser();//where I parser the xml files
            age = Al.getAge();

        }
    });

Log.d("Age", age);//age become null here.

}

如何通过OnSuccess方法评估年龄值?

1 个答案:

答案 0 :(得分:1)

Log.d(“ Age”,age);在onSuccess执行之前执行。因此,在onSuccess之外使用年龄的最好方法是

在外部创建一个方法并在该方法中打印日志,然后从onsuccess调用该方法。

Log.d(“ Age”,age);不会等到成功执行后,我们才能将其清空