2012-04-28 10 views
7

jquery mobileとphonegapを使用してandroid用のアプリケーションを開発しました。 私はusb経由で自分のデバイスにアプリをデプロイしました。アプリのパフォーマンスは、特に長いリストをスクロールしている間は、本当に悪いことです。PhoneGap - Androidのブラウザと比較してパフォーマンスが悪い

奇妙なことです:携帯電話でブラウザを開いてindex.htmlに直接アクセスすれば、アプリ全体がスムーズに動作します。同じ技術、同じ内容。私はphonegapのネイティブapiや何かを使用しないでください。

アンドロイド4.0.2でphonegap 1.5.0および1.7.0rc1、jquery mobile 1.1.0でテスト済みです。

アイデア?

+0

システムを使用していると仮定すると、両方の1つの環境または別の環境で異なる設定の設定や追加があるように見えるかもしれません。 JavaScriptのベンチマークサイトで両方を指すのは興味深いかもしれません –

+0

私たちがここで話しているリストのどれだけ大きなものか不思議です。 – codaniel

+0

@ codaniel:約50個のサムネイルで表示されます – rbk

答えて

0

ブラウザが正常に動作していることを確認できれば、実際にブラウザで実行できるように、html5オフラインアプリケーションとして展開することを検討できます。

0

jquery mobileで同じ量のリスト項目をスクロールしながらパフォーマンスの問題にぶつかりました。私たちがiScrollライブラリを使ってアプリケーションを書き直したので、パフォーマンスはとても劣っていました(PhoneGap環境で試してみませんでした)...今、アプリは本当にスムーズにスクロールします。

開発の初期段階にある場合は、UIライブラリの変更を試みることができます。このような状況の後、我々は時間にパフォーマンスの問題を管理するために、かなり頻繁にデバイスをテストするために我々のアプリを展開

...これは、ハニカムの「ポリシー」:)

11

(3.0)、アイスクリーム(4.0)と後部になりましたデバイスは、あなたが...>タグ<アプリケーションに以下を加えることで、パフォーマンスを向上させることができます:

android:hardwareAccelerated="true" 

あなたは互換性のため8にminSdk(アンドロイド2.2)と15 targetSdk(アンドロイド4.0)を設定でき、ハードウェアアクセラレーションは、デバイス上でのみ使用可能になると機能します。

私は、このフラグを使用して、私のアプリケーションのパフォーマンスは、ブラウザでそれらを実行しているに等しいので、私はブラウザがハードウェアアクセラレーションを用いて符号化されたそのため、推測すると信じています:)

+0

ありがとうございました..うまくいきました。:D – justmyfreak

+0

これは私にとってもうまくいきました。 Phonegap + FastClick + Android 4.1.1以降を使用しているときのキーボード/タイピングのパフォーマンスに関して、特定の問題がありました。タイピングのパフォーマンスが極端に遅かったです(ブラウザやAndroid 2.3では問題なし)。このフラグを有効にすると問題が解決しました:-) – Maurice

+0

うわー!それは本当に私の恐ろしいサムスンの2.3 –

2

私は同様の問題だった:ページを"medium complex"というテーマのdivのリストが長くなりました。 HTC電話機のブラウザは表示に問題がなかった。しかし、phonegapのアプリのレンダリングは完全に失敗しました。私は一種のWSODを見ましたが、これはディスプレイに触れた後に消えました。タッチした後、ページが正しく表示されました。

divリストを1つまたは2つのdiv要素に短縮したときや、div内のサブ要素を減らしてCSSの複雑さに起因するレンダリングの労力を軽減したときに問題が発生していませんでした。

文書の背景色のみが表示されていたため、全画面が見えない場合は白い画面が表示されました(このためライトピンクが追加されました)。だから私は、レンダリングが読んだ後に問題だったと思いますthis thread

「WSOD」なしでアプリを動作させるためにin this threadというさまざまな提案を試しました。しかし何も働かなかった。一部のユーザーはアプリを本当に悪化させました。

最後に、検索の1日後、私はそれを作った。私はAndroidManifest

<application android:hardwareAccelerated="false" ... 

今のアプリは私のウェブブラウザと同じ高速のように動作し、私のタグ(タグではない)内で設定しました。ハードウェアアクセラレーションは、常に最高の機能ではない場合、のように思える...

マイバージョン: のPhoneGap 3.5.0、ア​​ンドロイド4.0.3、jQueryのバージョン2.1.0、HTCセンス3.6

関連する問題