2012-02-19 56 views
7

私はAndroidを初めて使用しているので、この質問には簡単な回答があるかもしれません。私は、Jerseyが動作していないため、GoogleからのRestingフレームワークの助けを借りてRESTクライアントを作成しようとしています。Androidホストを解決できません

W/System.err(728): java.net.UnknownHostException: Unable to resolve host "my.ip:8080": No address associated with hostname

をして、私はいくつかの例外を取得しますが、私は、これは根本的な原因であることを推測する:私はクライアントを実行しようとすると、私はこの警告が表示されます。

私はインターネットの許可を持っている:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="com.maze.client" 
android:versionCode="1" 
android:versionName="1.0" > 

<uses-sdk android:minSdkVersion="15" /> 
<uses-permission android:name="android.permission.INTERNET"/> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 


<application 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" > 
    <activity 
     android:name=".RestingClientActivity" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
</application> 

</manifest> 

あなたが任意の追加情報が必要な場合、私に知らせてください。

  • 私は自分のIPを「mi.ip」に置き換えました(これは意図的に行われていますが、元々は正常です)。
+1

に役立ちますそれはあなたがエミュレータを再起動しようとしている、私はこの例外を得ました何回も、エミュレータを再起動した後、問題が解決されます。試していないと試してみてください –

+0

@NixitPatelエミュレータを何度も再起動してからEclipseを再起動しましたが、このエラーが発生しています。 – Dragos

+0

デバイス上で実行してみてください。ときどきエミュレータがねじを締める。私はエミュレータ上で.mjpegファイルをストリーミングするのと同様の問題があることを知っています。エミュレータでクラッシュしますが、私のデバイスで完璧に動作します。 –

答えて

1

サーバーへの接続を行う場所にコードを投稿すると、より簡単に役立ちます。 しかし、おそらくあなたの問題は、呼び出されるURIの作成です。例:あなたが無効または間違ったURIでexecuteメソッドを呼び出すのであれば

URI uri = URIUtils.createURI("http", "your-ip", 8080, "/path/to/webservice", 
     URLEncodedUtils.format(params, "UTF-8"), null); 
HttpClient client = new DefaultHttpClient(); 
HttpGet get = new HttpGet(uri); 
response = client.execute(get); 

、あなたが問題を抱えている可能性があります。

AVDを開いたままにして、使用しているネットワークを変更すると、オフィスから出て家の無線LANを使い始めるなどの問題が発生することがあります。

1

私はOPと同じ問題があったと信じていますが、これは古い質問ですが、とにかく私の調査結果を投稿します。

問題は、get()のようなRestingフレームワークメソッドは、接続ヘルパーを介してURLを渡し、2番目のパラメータとしてポートを提供することが必要であるということです。

Resting.get('my.ip:8080'); 

あなたの呼び出しは次のようになります:だからOPの例を取っ​​て、代わりの

Resting.get('my.ip', 8080) 

希望は誰か:)

関連する問題