Właśnie zaczynam projekt przy użyciu Sencha Touch i właśnie wykonałem kilka drobnych testów na moim urządzeniu HTC Desire. Wszystkie filmy instruktażowe w Vimeo wydają się korzystać z emulatora iPhone'a uruchomionego na komputerze Mac. Nie jestem pewien, jak szybko ten emulator jest porównywany z prawdziwym urządzeniem iPhone, a nawet prawdziwym urządzeniem z Androidem, ale z tego, co doświadczyłem, wydaje się, że moje pragnienie HTC nie działa tak ładnie jak ten emulator.
Wszystkie animacje (przesuwane, zanikające itp.) Wydają się być trochę opóźnione. Możesz łatwo zauważyć, że liczba klatek na sekundę jest znacznie mniejsza niż w przypadku filmów Vimeo.
HTC Desire to stosunkowo nowy i nowoczesny telefon z Androidem 2.2, działający z przyzwoitym sprzętem, więc zastanawiam się, czy Sencha Touch jest „gotowy” na platformę Android.
Czy ktoś ma praktyczne doświadczenie z Androidem i Sencha Touch?
Od sencha.com :
Myślę, że powodem, dla którego jest tak wolny, jest to, że aplikacja jest napisana przy użyciu HTML5 / javascript. Co, gdy pomyślisz o tym, jest całkiem świetne, ponieważ ułatwia poruszanie się po platformach. Minusem jest to, że „wyglądają i czują” jak aplikacje natywne, ale tak naprawdę nie są. Tak więc zamiast natywnego kodu wykonującego się szybko na twoim urządzeniu, masz prawdopodobnie opakowanie dla przeglądarki, w której cały kod to tylko znaczniki / js, co jest wolniejsze. Pomyśl o korzystaniu z aplikacji cnn w porównaniu z przejściem do cnn.com w przeglądarce internetowej iPhone'a, to zasadniczo ten sam rodzaj różnicy. Jest to prawdopodobnie to, co widzisz, ponieważ szybki komputer Mac i emulator mogą pchać o wiele mocniej niż urządzenie (chyba że emulator jest dławiony, aby być tak powolny jak urządzenie rodzime, co może być ... ktoś podwójny Sprawdź mnie).
źródło
Zrobiłem niewielki test porównawczy Sencha, JQuery mobile i dojox.mobile na emulatorze i telefonie z Androidem, używając telefonu do prawdziwej aplikacji. Najważniejsze jest to, że dojo z łatwością przewyższa zarówno Sencha, jak i JQuery, które są obecnie tak powolne, że są całkowicie bezużyteczne, nawet na silnym sprzęcie.
Więc na razie osobiście pójdę z dojo lub pójdę natywnie.
Łatwo to wypróbować samemu, biorąc jedną z „gablot” z różnych platform i chrome2phone je na własne urządzenie.
źródło
Wiem, że to starsze pytanie, ale mogę potwierdzić, że mamy również problemy z wydajnością Sencha Touch 2.0 na Androidzie. Zbudowaliśmy dość prosty prototyp z bardzo prostymi układami kart i bez niestandardowych obrazów lub css i wciąż zauważamy duże opóźnienie na każdym testowanym urządzeniu z Androidem. Na początku myśleliśmy, że naruszamy niektóre najlepsze praktyki Sencha, jednak po przejrzeniu kodu i przejrzeniu wszystkich obszarów, w których naszym zdaniem mogą powodować problemy, nadal nie byliśmy w stanie uzyskać odpowiedzi i płynności w pobliżu tego, na co liczyliśmy.
Na marginesie, wydaje się, że ogólnie rzecz biorąc, każda nienatywna metoda (szczególnie oparta na JS / HTML / CSS) do opracowania aplikacji mobilnej zawsze będzie miała co najmniej kilka drobnych problemów z wydajnością. Zastanawiamy się teraz nad wykorzystaniem Titanium, ponieważ oferuje on rozwiązanie oparte na jednym kodzie, którego wydajność jest znacznie bliższa natywnemu (ponieważ technicznie jest natywny).
źródło
Właśnie uruchomiliśmy aplikację Sencha Touch i istnieją pewne poważne problemy z wydajnością w Androidzie w porównaniu do iOS. Zachowaj ostrożność, próbując wdrożyć rozbudowane interfejsy.
Coś, co chciałbym wiedzieć 3 miesiące temu: duże projekty z góry są złe w urządzeniach mobilnych. Naprawdę potrzebujesz iteracyjnego podejścia między zespołem projektowym / deweloperskim. Przejścia CSS3 są trudne na Androidzie: unikaj wielu zaokrąglonych rogów, RGBA, gradientów, cieni tekstu. Sprawi to, że Twoja aplikacja będzie miała zajęcie.
Utrzymuj DOM tak mały, jak to możliwe; zniszcz panele, ponieważ nie są już używane.
Widzieliśmy dziwne zachowania draw () na Androidzie, ale może to wynikać z faktu, że wymagamy zbyt wiele procesora. Jedynym sposobem, aby wiedzieć, jest profilowanie całego kodu jak ninya
źródło
Zapoznaj się z tym artykułem zespołu inżynierów LinkedLN na temat poprawy wydajności aplikacji HTML5 poprzez ręczne kodowanie manipulacji DOM:
http://engineering.linkedin.com/linkedin-ipad-5-techniques-smooth-infinite-scrolling-html5
W kontekście tego artykułu widzę dwa problemy z Sencha Touch:
Sencha Touch buduje interfejs użytkownika, konwertując obiekty JavaScript w Dom Nodes i dodając je do drzewa Dom. Narzędzia Chrome pokażą, że w końcu dodaje do drzewa Dom stosunkowo dużą liczbę DIV i innych elementów DOM. Czy nie miałoby to negatywnego wpływu na wydajność?
Większość węzłów Dom w interfejsie Sencha jest generowana przez kod API Sencha, a nie ze znaczników. Jeśli piszemy kod, aby bezpośrednio manipulować tymi elementami Dom, czy możemy być pewni, że nie spowoduje to żadnych skutków ubocznych?
Dzisiaj opublikowałem to zapytanie na oficjalnym forum Sencha. Zaktualizuje tę odpowiedź wraz z odpowiedzią.
źródło
Robimy aplikację internetową dla systemu iOS / Android, używając frameworku Sencha 2, a wydajność jest po prostu okropna na Androidzie w porównaniu do IOS. Niestety mówię teraz moim klientom, że jeśli chcą aplikacji na Androida, wybierz wersję natywną lub Titanium. Mam nadzieję, że mogą wprowadzić ulepszenia, ale nigdy więcej nie użyję Sencha, jeśli platformą docelową jest Android.
FYI (urządzeniem docelowym była Galaxy S3).
źródło
Sencha Touch + Phonegap Sucks na urządzeniach z Androidem. Zwłaszcza jeśli celujesz w wersję 2.2 lub nowszą. Ta kombinacja działa dobrze dla kategorii urządzeń z Androidem G3 / Note. Zapomnij Sencha Touch + Phonegap na Androidzie, jeśli chcesz wydajności i interfejsu użytkownika jak natywny.
Sencha Touch + Phonegap jest dobry tylko do szybkiego zdobywania rynków na tysiącach urządzeń, bez żądzy przyciągania wzroku i niesamowitej wydajności.
JEŻELI twój klient jest bardzo konkretny w kwestii interfejsu użytkownika i wydajności i nalega na rozwiązanie hybrydowe, po prostu daj mu zrzeczenie się odpowiedzialności i podpisany przez niego dokument, że chce aplikacji Sencha Touch + Phonegap.
Spaliłem nie tylko palce, ale całe ciało tą śmiertelną kombinacją na Androidzie.
źródło
Demo zlewozmywaka kuchennego z listopada 2013 i Sencha 2 zawiesza się na moim HTC Android 4.0, inne frameworki HTML5 wykazują lepszą reakcję, na przykład XDK firmy Intel, który korzysta z jqMobi.
źródło