2009-06-22 15 views
1

UIWebViewを使用して外部サーバーからWebページをロードしています。ページは非常にゆっくりと読み込まれます。エッジを使用すると、約30秒かかります。 WiFiを使用すると、5〜6秒かかります。同じページは、Safariを使って直接ロードするときにはるかに高速です。iPhoneデバイスでUIWebviewが遅く、シミュレータが高速です

シミュレータでは、UIWebViewが非常に反応します。

誰でもUIWebViewのパフォーマンスを向上させた経験はありますか?私が考えていたのは、静的なHTMLページと画像を使用し、JSONでデータの単位を読み込み/読み込みすることでした。

答えて

-2

これは、Simulatorがブロードバンド接続を使用しているためです。

+0

Simulatorは私の携帯電話と同じWiFi接続を使用していたノートパソコンで動作していました。 –

+2

あなたのシミュレーターは、はるかに高速なCPUとRAMのゴブを持っています –

+0

シミュレータはあなたのラップトップのリソースを使用してロードするが、ipadデバイスはRAMやネットワーク接続のような独自のリソースを使用します。 – CKT

2

単純な静的HTMLを使用している場合でも、UIWebViewは他のものに比べて読み込みが遅くなります。 UILabelはいつもずっと高速です。

これは、HTMLエンジンのいくつかの側面(Javascriptインタプリタのような)が必要でないかもしれないので、ロードに時間がかかるからです。しかし、すでに作成されたUIWebViewのインスタンスを保持していても、新しいコンテンツを読み込むのがずっと遅いです。

1つの可能性は、UIWebViewをバックグラウンドで保持し、そこから画像を取得して表示することです。表示の遅れを避けることができます。その場合は、&のペーストが途切れてしまいます。ディスプレイに表示されていないUIWebViewがレンダリングにどのように感じられるかによって、動作しない可能性があります。

JSON読み込みを伴う静的HTMLはおそらく、取得しようとするほど高速です。 3G上では、それほど大きな遅延はほとんどないかもしれません。

0

いくつかの点があります。

  1. シミュレータは純粋にAPIシミュレータであり、エミュレータではありません。これは、Macの能力を最大限に活用し、APIが同じように動作することを確認することを意味します。 Macでのパフォーマンスは、モバイルデバイスとは決して相関しません。
  2. UIWebViewコンポーネントはWebKitに基づいていますが、Safariに含まれている古いバージョンのものです。 UIWebViewは常にSafariより悪い動作をします。
関連する問題