私は Android アプリケーションを開発していますが、起動すると次のようになります。
1)サーバーに HTTP リクエストを送信して、小さな JSON ファイルを送信します。
2) webView を開いて URL を表示します。
サーバーが正常に稼働している場合、まったく問題はなく、すべてがスムーズに進みます。
ただし、何らかの理由でサーバーがダウンしている場合、HTTP 要求は文字通りハングし、URL の読み込みで webView が実際に表示されるまで約 30 秒の HTTP タイムアウトが発生するまで待つ必要があります。
UIスレッド内でネットワークを作成するべきではなく、そのために別のスレッドを使用する必要があることを読みました。
BlackBerry では、私はすでにアプリケーションを開発していますが、これはそれと同じくらい簡単です:
new Thread(){
public void run(){
HttpConnection hc =
(HttpConnection)Connector.open("http://www.stackoverflow.com");
}
}.start();
新しいスレッドを開始するだけで、内部でリクエストと必要なすべてのネットワークを作成します。そうすれば、サーバーに到達できない場合でも、ユーザーを待たせたり、アプリが実際にハングしていることを感じたりすることなく、webView がすぐに読み込まれます。
Android でまったく同じことを行うにはどうすればよいですか?