2017-06-06 121 views
0

我在本地主機上有我自己的網站。 當我從NetBeans運行JSP文件時,JSP頁面正常工作。 也運行良好,當我從瀏覽器運行它。 我用一個WebView製作了一個簡單的Android應用程序。 當我嘗試加載CNN站點時,該應用程序也運行良好: 但是,當我用自己的URL替換URL時,出現了着名的 錯誤消息:HTTP狀態404 - 未找到。 我知道URL也很好,因爲我可以從瀏覽器運行它。 唯一的區別是我的URL位於本地主機上。 我使用Android模擬器Nexus_6_API_23 Google_API:5554 我在其他的人閱讀回答了這個模擬器使用IP 10.0.2.2, 所以我已經改變了的WebView網址如下本地主機交互: 來自:http://localhost:8080/MissionWS/myLogin.jsp 爲:http://10.0.2.2:8080/MissionsWS/myLogin.jsp無法加載WebView上的網址

這裏是web視圖android應用程序的代碼: 任何人都可以幫忙嗎?

public class MainActivity extends AppCompatActivity { 
private WebView mWebView; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    mWebView = (WebView) findViewById(R.id.mWebView); 
    mWebView.getSettings().setJavaScriptEnabled(true); 
    //mWebView.loadUrl("http://edition.cnn.com/"); 
    mWebView.loadUrl("http://10.0.2.2:8080/MissionsWS/myLogin.jsp"); 
    } 
} 
+0

您的本地網址無法從您的手機訪問。在手機的瀏覽器中檢查它是否會被加載。 –

+0

我該如何檢查? – Drovo

+0

在您的手機瀏覽器中鍵入'http://10.0.2.2:8080/MissionsWS/myLogin.jsp'。 –

回答

0

您不能像這樣訪問本地主機。 我想你應該看看:How can I access my localhost from my Android device?

+0

感謝您的幫助。這是我發現:然而有一個更好的解決方案。您可以通過IP地址「10.0.2.2」訪問主機。這是由Android團隊以這種方式設計的。所以你的web服務器可以完美運行在本地主機上,從你的Android應用程序你可以通過「http://10.0.2.2:8080」訪問它。 – Drovo

+0

我做了同樣的,但它不起作用。如果我從瀏覽器運行網址,它就可以運行!任何其他建議? – Drovo

-1

這可能是無關的,但你沒有webViewClient。添加myWebView.setWebViewClient(new MyWebViewClient());

+0

我做到了。仍然不起作用 – Drovo