如果我将http://www.ebay.com传递给此。在某个地方,ebay改变了我的网址,也许是重定向。有些奇怪的是Android java无法打开页面。
u = new URL(txturl.getText().toString());
我收到以下错误,因为它显然打开了新的移动网站。我只是想知道我的网址在什么时候发生变化,如果我以某种方式阻止了这一点。如果我指向雅虎,谷歌,亚马逊或其他主要网站,似乎不会发生。我刚刚在测试中发现了这一点。
感谢。
09-07 16:08:08.739: INFO/System.out(360): >>>>>>>>>>>>>>>>>>>>> Unable to connect to **http://www.ebay.com - http://m.ebay.com?ebayref=http%3A%2F%2Fwww.ebay.com%3A80%2F%3Fredirect%3Dmobile**
09-07 16:08:08.739: WARN/System.err(360): **java.io.FileNotFoundException**: http://m.ebay.com?ebayref=http%3A%2F%2Fwww.ebay.com%3A80%2F%3Fredirect%3Dmobile
09-07 16:08:08.749: WARN/System.err(360): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:1162)
09-07 16:08:08.759: WARN/System.err(360): at parser.XXXXXX.com.parserActivity.process(parserActivity.java:106)
09-07 16:08:08.759: WARN/System.err(360): at parser.XXXXXX.com.parserActivity.access$0(parserActivity.java:68)
09-07 16:08:08.769: WARN/System.err(360): at parser.XXXXXX.com.parserActivity$1.onClick(parserActivity.java:61)
09-07 16:08:08.779: WARN/System.err(360): at android.view.View.performClick(View.java:2408)
09-07 16:08:08.779: WARN/System.err(360): at android.view.View$PerformClick.run(View.java:8816)
09-07 16:08:08.789: WARN/System.err(360): at android.os.Handler.handleCallback(Handler.java:587)
09-07 16:08:08.789: WARN/System.err(360): at android.os.Handler.dispatchMessage(Handler.java:92)
09-07 16:08:08.799: WARN/System.err(360): at android.os.Looper.loop(Looper.java:123)
09-07 16:08:08.809: WARN/System.err(360): at android.app.ActivityThread.main(ActivityThread.java:4627)
09-07 16:08:08.809: WARN/System.err(360): at java.lang.reflect.Method.invokeNative(Native Method)
09-07 16:08:08.819: WARN/System.err(360): at java.lang.reflect.Method.invoke(Method.java:521)
09-07 16:08:08.819: WARN/System.err(360): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
09-07 16:08:08.829: WARN/System.err(360): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
09-07 16:08:08.839: WARN/System.err(360): at dalvik.system.NativeStart.main(Native Method)
答案 0 :(得分:1)
有些网站会让你陷入破碎的移动版本 - 我在手机上保留了第二个浏览器,用户代理字符串声称是桌面浏览器而不是移动版。您可能需要为您的应用执行此操作,并在网站更改其实施时将其更改或进行更新。
答案 1 :(得分:0)
解决方案(在我的情况下)
如果服务器响应代码为> = HTTP_BAD_REQUEST(大于400) 方法getInputStream(),类HttpURLConnectionImpl抛出 FileNotFoundException(因此无法打开输入流)。
即使此文件存在,您的对象也不会为您提供输入流,因为服务器响应代码为> = 400 - 更改服务器上的响应代码或使用其他类强>连接。
09-07 16:08:08.749:WARN / System.err(360):at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:1162)
867 @Override
868 public InputStream getInputStream() throws IOException {
869 if (!doInput) {
870 throw new ProtocolException(Messages.getString("luni.28")); //$NON-NLS-1$
871 }
872
873 // connect before sending requests
874 connect();
875 doRequest();
876
...
883 if (responseCode >= HTTP_BAD_REQUEST) {
884 throw new FileNotFoundException(url.toString());
885 }
886
887 return uis;
888 }