2010-12-26 4 views
0

私は一度にいくつかの異なるウェブ接続を行っている私の最初のアプリに取り組んでいます。アプリをブロックしないでダウンロードしています

私の最初の画面は私のメニューです。

MenuViewControllerのviewDidLoadの一番下に、私のWebサーバー上にある.xmlファイルを取得して解析するメソッドを呼び出します。

ものviewDidLoadの一番下に私は

FootballScores = [[FootBallScores alloc] init]; 

とFootballScoresを行うには、それが文字列にロードしたデータを解析し、HTMLページに接続します。

これらの両方がメインメニュー(アプリケーションの最初の画面)を担当しているクラスのviewDidLoadの下部で呼び出されているので、アプリの読み込みがちょっと遅くなることを意味します。

上記を行う正しい方法は何ですか?私は私のviewDidLoadからのコードの2枚を取り外して、多分

dataGetterOne = [NSTimer scheduledTimerWithTimeInterval:1.000 target:self 
selector:@selector(xmlParser) userInfo:nil repeats:NO]; 

dataGetterTwo = [NSTimer scheduledTimerWithTimeInterval:2.000 target:self 
selector:@selector(htmlParser) userInfo:nil repeats:NO]; 

に置き換える必要があります。これは、メソッドが後で呼び出されることを意味するとのviewDidLoadが終了するのを取得する前に、私は、Webサーバからデータを取得してみてください。

私たちのサーバーへの2つの接続を迅速にするには2分の1にしますか?一度に2つの接続を開くことができますか?

私は、接続に関して何か悪い/危険なことを本当に確信していません。

多くのおかげ -code

答えて

0

I wrote a brief tutorialに役立ちます。私はそれがそのようなアプリをどのように構造化するかについて考えるのに役立つことを願っています。

+0

こんにちはPhooze、それは非常に興味深いですね。そこにはたくさんのポインタがあります。あなたはどこのプロジェクトのためのソースをホストしましたか?それをすべて読むことができるようになりますか? –

+0

@コード - まだありません:)私はそれをたくさんリクエストしています。特定の質問があり、私が助けることができるなら、そのサイトにコメントを残す。 – makdad

+0

まだ具体的なものはありません!ちょうど今あなたのガイドに従ってコーディングを開始:)コードボックスの1つがあなたのサイトに正しく表示されていないようです。 –

3

ASIHTTPRequestを使用してみてください。使い方が簡単で、数行のコードでアプリケーションをブロックしない非同期要求を行うことができます。

希望これは、独自のXML/JSONデータ・解析するアプリケーションを書く上で、

エンダーまた

+0

+1独自の非同期呼び出しを書くことはできますが、ASIHTTPRequestははるかに簡単で、作成するよりも優れている可能性があります。 –

関連する問題