1

UIWebView を使用して外部サーバーから Web ページを読み込んでいます。ページの読み込みが非常に遅い。Edge を使用すると、約 30 秒かかります。WiFi を使用すると、5 ~ 6 秒かかります。同じページを Safari から直接読み込むと、はるかに高速になります。

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

UIWebView のパフォーマンスを向上させた経験のある人はいますか? 私が考えていたことの 1 つは、静的な HTML ページと画像を使用し、JSON を使用してデータのユニットをロード/入力することでした。

4

3 に答える 3

2

UIWebView は、単純な静的 HTML を使用している場合でも、他の何よりも読み込みが遅いだけです。UILabel は常にはるかに高速です。

これは、必要のない HTML エンジンの一部 (Javascript インタープリターなど) の読み込みに時間がかかるためだと思います。しかし、既に作成された UIWebView のインスタンスを保持している場合でも、新しいコンテンツの読み込みが著しく遅くなります。

1 つの可能性は、UIWebView をバックグラウンドに保持し、そこから画像を取得して表示することです。そうすれば、表示の遅延を回避できます。ただし、それはカットアンドペーストを壊し、ディスプレイにない UIWebView がどのようにレンダリングされるかによっては機能しない可能性があります。

JSON をロードする静的 HTML は、おそらくあなたが得ようとしているのとほぼ同じ速さです。3G では、目立った遅延はあまりないかもしれません。

于 2009-06-22T06:13:05.820 に答える
0

いくつかのポイント。

  1. シミュレーターは純粋に API シミュレーターであり、エミュレーターではありません。これは、Mac の全機能を使用し、API が同じように動作することを確認していることを意味します。Mac のパフォーマンスは、モバイル デバイスとはまったく関係がありません。
  2. UIWebView コンポーネントは WebKit に基づいていますが、これは Safari に含まれているものよりも古い、より悪いバージョンです。UIWebView は常に Safari よりもパフォーマンスが低下します。
于 2013-05-31T21:27:53.990 に答える
-3

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

于 2009-06-22T04:51:18.133 に答える