2016-03-05 52 views
0

我試圖讓我的android應用程序執行代碼,它打開一個URL連接到本地php文件,該文件返回JSON格式的數據庫條目,但它沒有連接,註釋掉其他線路我可以看到,它拋出的線路異常:Android,未連接到本地php文件

connection = (HttpURLConnection) url.openConnection(); 
connection.connect(); 

繼承人的Android的代碼的屏幕截圖和錯誤日誌,在Windows返回預期的JSON文件和PHP文件: link

+0

爲您的代碼,我們不能複製它,請不要使用圖片,儘量複製你的問題,並鏈接加班,防止任何人知道你在問什麼 –

回答

0

你能改變你的

URL url = new URL(getListUrl); 

URL url = new URL("http://www.google.com"); 

並檢查傳入的數據。

以下是一個工作示例。

 try { 
    URL url = new URL("http://www.google.com"); 
    URLConnection urlConn = url.openConnection(); 

    if (!(urlConn instanceof HttpURLConnection)) { 
     throw new IOException("URL Exception"); 
    } 
    HttpURLConnection httpConn = (HttpURLConnection) urlConn; 
    httpConn.setAllowUserInteraction(false); 
    httpConn.setInstanceFollowRedirects(true); 
    httpConn.setRequestMethod("GET"); 
    httpConn.connect(); 
    resCode = httpConn.getResponseCode(); 

    if (resCode == HttpURLConnection.HTTP_OK) { 
     in = httpConn.getInputStream(); 
    } 
    } 

    catch (MalformedURLException e) { 
    e.printStackTrace(); 
    } 

我的觀點是如果這段代碼適用於遠程URL,它也應該與localhost一起工作。

+0

谷歌URL沒有任何異常。 –

+0

你可以用谷歌網址打印結果嗎? ? –

0

嗨它必須是你在Android的文件 使用錯誤的本地IP地址應該是10.0.2.2不127.0.0.1

先告訴我你在模擬器或設備測試

如果模擬器那麼在此定義文件的路徑應該是 http://10.0.2.2/request_entries.php

就像在代碼

httpclient=new DefaultHttpClient(); 
       httppost= new HttpPost("http://10.0.2.2/request_entries.php"); 
+0

這是比解答更多的評論 –

+0

對不起我的意見被阻止 –

+0

我在模擬器上測試 –

0

管理使用URL來獲取輸入流:

URL url = new URL("http://10.0.2.2/request_entries.php"); 

result

多謝你們:)