2011-11-11 12 views
3

データを(データベースやフラットファイルなどから)収集し、リポジトリであるサーバーに接続してその中にデータを格納するアプリケーションを開発する必要があります。
機能要件は次のとおりです。ネットワークが利用可能になると自動的にインターネットに接続する

  • クライアントアプリケーションが利用可能なネットワークを検出しなければならない
  • は、認証用のユーザーを尋ねる自動的にネットワークに接続...などのために:インターネット

いずれか提案してください私はどんなAPIを使うべきですか?
javaを使用することは可能ですか?私はあなたがapache HttpClientを使用することをお勧めし、単に知られているURLからコンテンツを取得しようと、例えばwww.google.comまたはあなたの特定のタスクに関連してもURLたい「インターネットの利用」の問題に答えるために

答えて

1

。それが成功すれば、あなたはインターネットに接続していることが分かります。

接続がない場合にアプリケーションを完全にブロックしないために、接続タイムアウトを低く設定してください。

あなたはHttpClientを使用していないが、プレーンなJavaはその後、不可解なを使用してタイムアウトを設定した場合:十分にする必要がありますあなたが接続しているかどうかを判断するために

System.setProperty("sun.net.client.defaultConnectTimeout", "10000"); // 10 seconds connect timeout 
System.setProperty("sun.net.client.defaultReadTimeout", "60000"); // 60 seconds read timeout 

10秒かではありません。それ以外の場合は、永遠にブロックすることができます。

+0

okey私はそれを試して、それがうまくいけば、私のSRSのための良いアドオンになる答えを少し明快なthxを持っていた:thx –

2

あなたはインターネットに接続していて、とにかく接続しようとします。失敗した場合は少し待ってからもう一度お試しください。 ad nauseum。

つまり、インターネットが試用可能かどうかを知る必要はありません。

1

ネットワークやその他のリソースを知る最良の方法は、それを使用することです。あなたは実際に未来を予言することはできません;-)あなたが作る必要のある接続を作り、失敗を処理しようとします。

関連する問題