PhoneGapではコード全体を実行時にネイティブアプリに解釈する必要があるため、PhoneGapで開発されたアプリはネイティブアプリよりも遅いことを知っています。
しかし、誰かがネイティブアプリがPhoneGapを備えたアプリよりも高速にWebリソースからデータ(画像またはテキスト)を取得する理由を説明する優れた詳細なWebサイトを誰かが説明したり、持っている可能性はありますか?両方のアプリがインターネット接続を別の方法で処理しますか、それともPhoneGapアプリによって取得されるデータが増えますか?
まったく異なるアプリケーションイベントプロセスです。
PhoneGapは、複数のデバイスで汎用的になるように設計されたJavaScriptイベントコールバックを使用しますが、Androidは、OSにネイティブのアクティビティベースです。 iOSには同じようなものがありますが、コメントはできません。
Androidは、アプリケーションが読み込まれたときに開始するアクティビティを認識しており、そのアクティビティの実行は、大規模なアプリケーションでも比較的迅速に行われます。一方、PhoneGapは読み込みを完了するためにHTML5ブラウザーを必要とし、すべてのHTML5 JavaScriptファイルをデバイスから読み込み、すべてのコードを初期化するためにJavaScriptを少なくとも1回実行する必要があります。その結果、PhoneGapアプリケーションの起動に目に見える遅延が生じます。これが、アプリのロード中にPhoneGapにスプラッシュスクリーン機能が含まれている理由です。
PhoneGapアプリケーションが起動すると、ユーザーインターフェイス全体がレンダリングされたHTMLページになり、それが搭載されているデバイスに関連するパフォーマンスの問題の影響を受けます。一方、ネイティブAndroidアプリケーションは、多くの場合、OSを使用してアクティビティビューをレンダリングします。したがって、OSの速度の向上は、より高速なアプリにつながります。ブラウザによってレンダリングされるHTMLは、プロセッサとGPUの速度に制限されます。
PhoneGapの開発者がパフォーマンスについて不満を言う正当な理由はありません。 PhoneGapを使用すると、ネイティブで実行される各デバイスのコードを開発でき、PhoneGapへのプラグインを介して実行できます。ネイティブプラグインは、JavaScript拡張機能としてPhoneGapアプリに公開されます。パフォーマンスが問題になるときはいつでも、開発者はそのコードをネイティブプラグインに移動することができます。
JavaScriptはネイティブコードよりも低速ですが。それがとても遅くなるコードは何をしているのですか?おそらくそれは悪いJavaScriptであり、それからPhoneGapの設計の誤りです。
PhoneGabはAndroid開発ではありません。これはHTML5であり、個人的にはAndroid SDKを使用すると、同じものをHTMLに実装するよりも速く結果を得ることができます。 HTML/Javascriptに強いスキルを持っている人は、非常に具体的なユーザーインターフェイスを期待しており、OSを課す標準のアイデアに反抗していると思います。