1
我試圖從發展方式的AppEngine服務器獲取的圖像,使用該代碼here:如何從AppEngine上服務器圖像到Android的活動
HttpGet httpRequest = new HttpGet(URI.create(url));
HttpClient httpclient = new DefaultHttpClient();
HttpResponse resp = (HttpResponse) httpclient.execute(httpRequest);
HttpEntity entity = resp.getEntity();
BufferedHttpEntity bufHttpEntity = new BufferedHttpEntity(entity);
InputStream instream = bufHttpEntity.getContent();
bmp = BitmapFactory.decodeStream(instream);
執行3號線(HttpClient的當。執行(..))我得到的錯誤:
W/System.err(508): org.apache.http.conn.HttpHostConnectException: Connection to http://0.0.0.0:8888 refused
此URL http://0.0.0.0:8888是正確的,我相信,因爲在這個應用程序引擎連接的Android項目,我能夠與在瀏覽器客戶端這個地址來獲取圖像的項目。 (同樣,我處於本地開發模式)
爲什麼此連接被拒絕?謝謝。
如果我把http://0.0.0.0:8888/...直接放到我的瀏覽器中,它會顯示我想要在android應用程序中獲取的圖像。此外,該應用程序的GWT客戶端使用相同的地址用於獲取圖像相同的目的,它也在那裏工作,所以地址在某些方面至少是正確的。不知道爲什麼它不能在Android端工作。 – aez 2012-02-14 12:10:22
但是,當我在應用程序的Android端使用192.168 ....時,它實際上能夠獲取圖像。任何想法,爲什麼它在GWT方面,但不是Android方面? – aez 2012-02-14 12:20:59
'0.0.0.0'不是可以從另一臺機器連接的地址,它與127.0.0.1(localhost,loopback)地址類似。它意味着'本地機器上的所有地址'。這就是它在桌面上運行的原因。但是,如果你想從另一臺機器連接,在這種情況下你的Android設備,你需要使用一個真實的接口地址。使用上面的命令找出你的是什麼。 – 2012-02-14 12:24:04