Sencha Touchは実際にAndroidでどのように機能しますか?[閉まっている]


17

私はちょうどSencha Touchを使用してプロジェクトを開始しようとしています。HTCの欲求デバイスでいくつかのマイナーなテストを行いました。Vimeoのチュートリアルビデオはすべて、Mac上で実行されるiPhoneエミュレーターを使用しているようです。このエミュレーターが実際のiPhoneデバイスや実際のAndroidデバイスと比較してどれくらい速いかはわかりませんが、私が経験したことから、私のHTCの欲求はこのエミュレーターほどうまく動作していないようです。

すべてのアニメーション(スライド、フェードなど)が少し遅れているようです。FPSがVimeoビデオに比べてはるかに少ないことがすぐにわかります。

HTCの欲求は、比較的新しいハードウェアで動作する比較的新しいAndroid 2.2スマートフォンであるため、Sencha TouchがAndroidプラットフォームに「対応」できるかどうか疑問に思います。

AndroidとSencha Touchの実務経験がある人はいますか?

回答:


19

Phonegapを使用してAndroid向けの複数のSencha Touchアプリに取り組んでいますが、結果は期待外れです。iOSデバイスでのUIエクスペリエンスは、Androidよりもはるかに優れています。

iOSデバイスでは、すべてがスムーズです(カルーセル、スライダーがすべて)が、Androidでは、少し遅れて応答しません。

アップデート私はもう少し研究を行いましたが、iOSデバイスはCSSハードウェアアクセラレーションを使用してCSSの移行を行っているようです。Androidデバイスでは、これはすべて、すでに実行している他のすべてに加えてCPUによって実行されます。したがって、UIのルックアンドフィールが遅くなります。ため息.....ハードウェアのばらつきが大きい場合、ハードウェアアクセラレーションを実装するのははるかに難しいと思います。

興味深いことに、ネイティブAndroidアプリ(組み込みのメニュー画面でも)でもハードウェアアクセラレーションを使用しないことを読みました。OpenGLを利用するアプリのみが実際にGPUを使用します。


HTC Desire ZでSencha Touchをテストしたときも同じように感じましたが、Android風よりもiPhone風に感じられると感じました。もう1つは、これが当てはまる人の割合は低いかもしれませんが、Sencha TouchはFirefox Mobileを使用しているため、Sencha TouchはWebkit専用であるため、Androidで「動作」しなくなりました。
zenzelezz

2
2年が経過し、Sencha touchはまだがっかりしています。
クーゲル

それはまだ吸うsen煎茶タッチはがらくたの価値のない作品です!彼らがやると言っていることはたくさんありますが、正しくやっていることはありません...アンドロイドやiOSのアクセシビリティ機能をサポートしているかどうか聞いてみてください!
ナビゲーション

3

sencha.comから:

Sencha Touch、初のHTML5モバイルJavaScriptフレームワークで、iPhoneとAndroidでネイティブなルックアンドフィールのモバイルWebアプリを開発できます

遅い理由は、アプリケーションがHTML5 / javascriptを使用して記述されているためだと思います。これは、最初に考えたとき、プラットフォーム間を移動しやすくなるため、非常に優れています。欠点は、ネイティブアプリのように「ルックアンドフィール」しますが、実際にはそうではないことです。したがって、デバイスでネイティブコードをすばやく実行する代わりに、すべてのコードが単なるマークアップ/ jsであるブラウザーのラッパーである可能性が高くなります。iphone Webブラウザーでcnnアプリを使用する場合とcnn.comにアクセスする場合を考えてみてください。本質的に同じタイプの違いです。これはおそらくあなたが見ているものです、高速のMacとエミュレーターはデバイスよりもはるかに強くプッシュする可能性があります(エミュレーターがネイティブデバイスと同じくらい遅くなるように調整されていない限り...私を確認してください)。


1

Androidエミュレーターと電話で、実際のアプリにphonegapを使用して、Sencha、JQuery mobile、およびdojox.mobileの小規模なベンチマークを実行しました。結論として、dojoはSenchaとJQueryの両方よりも簡単に優れており、現在は強力なハードウェアでもまったく役に立たないほど低迷しています。

だから今のところ、私は個人的に道場に行くかネイティブに行きます。

さまざまなフレームワークから「ショーケース」のいずれかを取得し、独自のデバイスにchrome2phoneすることで、自分で簡単に試すことができます。


1
Dojo Mobileが他のどのフレームワークよりも優れていると言うのは初めてです。私が知っているすべてのモバイルアプリ開発者の中で、道場は...モバイルフレームワークなくなっ間違ったのランニングギャグです
ステファン・ミュラー

パフォーマンスについてのみ話している場合は、エミュレーターを使用しないでください。それらはハードウェア上で実行する場合と大きく異なります。
ムファサ

1

これは古い質問ですが、AndroidでSencha Touch 2.0を実行しているときにパフォーマンスの問題があることも確認できます。私たちは非常にシンプルなカードレイアウトでカスタムイメージやCSSをまったく使用しない非常にシンプルなプロトタイプを構築しましたが、テストしたすべてのAndroidデバイスで大きな遅れに気づきました。最初は、Senchaのいくつかのベストプラクティスに違反していると考えていましたが、コードを調べて問題を引き起こす可能性があると考えられるすべての領域を修正した後、期待したものに近い応答性と滑らかさを得ることができませんでした。

副次的な注意事項として、一般的にモバイルアプリを開発するための非ネイティブメソッド(ESP JS / HTML / CSSベース)には、常にパフォーマンスに関する少なくともいくつかの小さな問題があるようです。(技術的にはネイティブであるため)ネイティブにはるかに近いパフォーマンスの単一コードベースソリューションを提供するため、現在、Titaniumの使用を検討しています。


1
好奇心から、Android 4.0デバイスで試しましたか?GPUアクセラレーションを使用できるため、より適切に機能する場合があります。有効にする方法:developer.android.com/guide/topics/graphics/hardware-accel.html
ドレイククラリス

1
ヒントをありがとう。4.0デバイスではテストしていません。Dean Wildの答えから判断すると、GPUアクセラレーションの問題がおそらく主な原因であると考えました。現在の問題は、4.0デバイスでパフォーマンスを向上させることができたとしても、Androidマーケットのごく一部(〜10%)を構成するため、Sencha以外のソリューションを使用する可能性が高いことです。
パス

senchaで何をするにしても、常に遅くなります。理由は、ブラウザに適合しない深いネストされたdom構造であるため、モバイルブラウザはそのままです。
ナビゲーション

0

sencha touchアプリを立ち上げたばかりで、iOSに比べてAndroidのパフォーマンスに重大な問題がいくつかあります。デザイン重視のインターフェイスを実装しようとするときは注意してください。

3か月前に知っていたらよかったのは、モバイルでは大きな先行デザインが悪いことです。あなたは本当に設計/開発チームの間に反復的なアプローチが必要です。CSS3の移行はAndroidでは困難です。角の丸いもの、RGBA、グラデーション、テキストの影をたくさん避けてください。これにより、アプリが発作されます。

DOMはできるだけ小さくしてください。使用されなくなったパネルは破棄してください。

Androidでおかしなdraw()動作をいくつか見ましたが、それは単にCPUに多くを要求しているという事実に起因する可能性があります。知る唯一の方法は、ninyaのようなすべてのコードをプロファイルすることです


0

LinkedLNエンジニアリングチームがこの記事を参照し、DOM操作を手動でコーディングすることでHTML5アプリのパフォーマンスをどのように改善したかを確認してください。

http://engineering.linkedin.com/linkedin-ipad-5-techniques-smooth-infinite-scrolling-html5

この記事の文脈では、Sencha Touchに2つの問題があります。

  1. Sencha Touchは、JavascriptオブジェクトをDomノードに変換し、それらをDomツリーに追加することにより、UIを構築します。Chrome Toolsは、比較的多数のDIVやその他のDOM要素をDomツリーに追加することを示します。これはパフォーマンスに有害な影響を与えませんか?

  2. Sencha UIのほとんどのDomノードは、マークアップからではなく、Sencha APIコードによって生成されます。これらのDom要素を直接操作するコードを作成する場合、副作用が発生しないことを確認できますか?

今日、この質問を公式のSenchaフォーラムに投稿しました。この回答を応答で更新します。


1
2011/2012にこれを投稿したかどうかはわかりませんが、現在iPad / iPhoneはSencha Touchでは問題ではありません。完璧に動作します。問題は、Android 2,4などの現在のバージョンです。translate3dは非常に不安定で、ほとんど使用できません。
ドミニクワトソン

0

Sencha 2フレームワークを使用してiOS / Android向けのWebアプリを開発していますが、IOSと比較してAndroidのパフォーマンスはひどいものです。残念ながら、私は今、クライアントにAndroidのアプリが欲しいならネイティブかTitaniumに行くと言っています。彼らが改善できることを願っていますが、ターゲットプラットフォームがAndroidの場合、Senchaを再び使用することはありません。

参考までに(ターゲットデバイスはGalaxy S3)。


-1

Sencha Touch + PhonegapはAndroidデバイスで吸い込みます。特に2.2以降をターゲットにしている場合。この組み合わせは、AndroidデバイスのG3 / Noteカテゴリでは問題なく機能します。ネイティブのようなパフォーマンスとUIが必要な場合は、AndroidでSencha Touch + Phonegapを忘れてください。

Sencha Touch + Phonegapは、目を見張るような素晴らしいパフォーマンスを期待することなく、数千台のデバイスで市場に素早く参入するためにのみ適しています。

クライアントがUIとパフォーマンスについて非常に具体的であり、ハイブリッドソリューションを主張している場合は、免責事項と、Sencha Touch + Phonegapアプリが必要であることを署名した書類を提出してください。

Androidでこの致命的なコンボを使用して、指だけでなく全身を燃やしました。


-1

HTC Android 4.0では2013年11月とSencha 2キッチンシンクのデモがハングアップしますが、jqMobiを使用するintelのXDKなど、他のhtml5フレームワークはより良い応答を示します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.