簡體   English   中英

使用Java for Android獲取響應剩余Web服務

[英]Get response rest web services Using Java for Android

下面的代碼是我按照Web服務教程制作的,盡管沒有給出錯誤,但是什么也沒發生。 誰能幫我嗎? 因為我無法繼續。 我需要連接到Web服務,但無法正常工作。

使用調試器,我發現它正在此特定行的第一種方法中停止:HttpResponse response = client.execute(request);

private String result = "";

 public void getResponse()
    {
        HttpClient client = new DefaultHttpClient();    
        String query ="working url";

        try
        {
            URL url = new URL(query);
            URI uri = new URI(url.getProtocol(), url.getHost(),url.getPath(), url.getQuery(),null);
            HttpGet request = new HttpGet(uri);
            HttpResponse response = client.execute(request);
            result=Userrequest(response); 

        }
        catch(Exception ex)
        {

        }




    }
    public String Userrequest(HttpResponse response)
    {
        try     
        {
            InputStream in = response.getEntity().getContent();
            BufferedReader reader = new BufferedReader(new InputStreamReader(in));
            StringBuilder str = new StringBuilder();
            String line = null;
            while((line = reader.readLine()) != null)
                    {
                        str.append(line + "\n");
                    }
            in.close();
            result = str.toString();
            updateData(result);         
        }
        catch(Exception ex)
        {
            //responsetxt.setText(ex.getMessage());
        }
        return result;
    }
    public void updateData(String result)
    {
        try     
        {
            JSONObject json = new JSONObject(result);
            JSONArray ja;
            json = json.getJSONObject("responseData");
            ja = json.getJSONArray("results");

            int resultCount = ja.length();

            for (int i =0; i<resultCount; i++)
            {
                JSONObject resultObject = ja.getJSONObject(i);
                result = resultObject.toString();

            }

        }
        catch(Exception ex)
        {
            //responsetxt.setText(ex.getMessage());
        }
    }

添加字符串

<uses-permission android:name="android.permission.INTERNET"></uses-permission>

在您的AndroidManifest.xml中,

<uses-sdk android:minSdkVersion="#" />

其中#代表您minSdkVersion

編輯:嘗試更改此:

        URL url = new URL(query);
        URI uri = new URI(url.getProtocol(), url.getHost(),url.getPath(), url.getQuery(),null);
        HttpGet request = new HttpGet(uri);

有了這個:

        URI uri = new URI(query);
        HttpGet request = new HttpGet();
        request.setUri(uri);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM