2016-12-28 16 views
0

我在我的程序中使用getConnection方法,並且想要在「String結果」這樣的變量中恢復響應,以便在另一個類中使用,但我不知道如何必須改變方法。有沒有人有想法?使用Volley的getConnection方法中的更改

public class Webservice { 
public static void getConnection(Context context, String url){ 

    RequestQueue queue = Volley.newRequestQueue(context); 
    StringRequest stringRequest = new StringRequest(Request.Method.GET, url, 
      new Response.Listener<String>() { 
       @Override 
       public void onResponse(String response) { 
        Log.i("TEST", "Response is: "+ response); 
       } 
      }, new Response.ErrorListener() { 
     @Override 
     public void onErrorResponse(VolleyError error) { 
      Log.i("TEST","That didn't work!"); 
     } 
    }); 
    queue.add(stringRequest); 

} 
} 
+0

嘗試更新回答 –

回答

0

您可以創建應用程序類的變量,並用它在你的應用程序是這樣

public class App extends android.app.Application { 


    private static App instance; 
    public static String resultResponse; 

    public static App getInstance() { 
    return instance; 
    } 



    @Override 
    public void onCreate() { 
    super.onCreate(); 

    instance = this; 
    } 
} 

然後,當你得到這樣

public class Webservice { 
    public static void getConnection(Context context, String url){ 

    RequestQueue queue = Volley.newRequestQueue(context); 
    StringRequest stringRequest = new StringRequest(Request.Method.GET,  
    url, 
     new Response.Listener<String>() { 
      @Override 
      public void onResponse(String response) { 
       Log.i("TEST", "Response is: "+ response); 
       App.getInstance().resultResponse = response; 
      } 
     }, new Response.ErrorListener() { 
    @Override 
    public void onErrorResponse(VolleyError error) { 
     Log.i("TEST","That didn't work!"); 
    } 
    }); 
    queue.add(stringRequest); 

} 
} 

保存它的迴應

android:name = ".App" 

in A在你的清單中應用。

現在使用

 App.getInstance().resultResponse 
在任何你想通過你的應用

+0

謝謝,考慮我想在MainActivity.java中使用該響應。我這樣寫:Webservice.readUrl(this,「http://192.168.1.36/note-server/」);.但是我的方法返回void,所以我不能將它存儲在任何變量中。你能告訴我我該怎麼做? @Abhishek Jaiswal – MarAnd

+0

這是否解決了您的問題? –

+0

sry,但答覆在哪裏? @Abhishek Jaiswal我想將它存儲在變量中,比如結果。 – MarAnd

0

您可以在onResponse方法中使用具有返回類型String的接口,並在您所需的類中實現此接口get String響應。

相關問題