Sencha Touch는 실제로 Android에서 어떻게 작동합니까? [닫은]


17

Sencha Touch를 사용하여 프로젝트를 시작하려고했고 HTC 욕망 장치에 대해 약간의 테스트를 수행했습니다. Vimeo의 모든 튜토리얼 비디오는 Mac에서 실행되는 iPhone 에뮬레이터를 사용하는 것 같습니다. 이 에뮬레이터가 실제 iPhone 장치 또는 실제 Android 장치와 얼마나 빨리 비교되는지 잘 모르겠지만, 내가 경험 한 바에 따르면, 내 HTC 욕구가이 에뮬레이터만큼 훌륭하게 수행되지 않는 것 같습니다.

모든 애니메이션 (슬라이딩, 페이딩 등)은 다소 게으른 것 같습니다. FPS가 Vimeo 비디오보다 훨씬 적다는 것을 쉽게 알 수 있습니다.

HTC 욕망은 괜찮은 하드웨어로 실행되는 비교적 새롭고 현대적인 Android 2.2 전화이므로 Sencha Touch가 Android 플랫폼에 "준비"되어 있는지 궁금합니다.

안드로이드와 Sencha Touch에 대한 실질적인 경험이 있습니까?

답변:


19

Phonegap을 사용하여 Android 용 Sencha Touch Apps를 개발 중이며 결과는 실망 스럽습니다. iOS 기기의 UI 경험은 Android보다 훨씬 뛰어납니다.

iOS 기기에서는 모든 것이 매끄럽고 (캐 러셀, 모든 슬라이더), Android에서는 약간 느리고 응답이 없습니다.

업데이트 좀 더 연구했으며 iOS 장치는 GPU 전환을 사용하여 CSS 전환을 수행하는 것으로 보입니다. 안드로이드 장치에서 이것은 이미 수행중인 다른 모든 것 외에도 CPU에 의해 수행되므로 UI에 게으른 모양과 느낌이 있습니다. 한숨 ..... 하드웨어가 너무 다양 할 때 하드웨어 가속을 구현하기가 훨씬 어렵다고 생각합니다.

흥미롭게도, 기본 안드로이드 앱 (내장 메뉴 화면조차도)이 하드웨어 가속을 사용하지 않는다는 것도 읽었습니다. OpenGL을 사용하는 앱만 실제로 GPU를 사용합니다.


HTC Desire Z에서 Sencha Touch를 테스트 할 때 비슷한 느낌이 들었지만 Android보다 iPhone과 같은 느낌이 들었습니다. 또 다른 것은-이것이 적용되는 사람들의 비율이 낮을 수는 있지만 Sencha Touch는 Firefox Mobile을 사용하기 때문에 Android에서 더 이상 "작동"하지 않으며 Sencha Touch는 웹킷 전용이라는 것입니다.
zenzelezz

2
2 년이 지났으며 Sencha touch는 여전히 실망 스럽습니다.
Kugel

그것은 여전히 ​​😡 sencha 터치는 쓸모없는 쓰레기 조각입니다! 그들이하는 말이 너무 많지만 정확하게 한 가지조차하지 않습니다 ... 안드로이드 나 iOS의 접근성 기능을 지원하는지 물어보고 squirm을보십시오!
Nav

3

에서 sencha.com :

iPhone 및 Android에서 기본적으로 보이고 느껴지는 모바일 웹 앱을 개발할 수있는 최초의 HTML5 모바일 JavaScript 프레임 워크 인 Sencha Touch

느린 이유는 응용 프로그램이 HTML5 / javascript를 사용하여 작성 되었기 때문입니다. 처음 생각할 때 플랫폼을 쉽게 이동할 수 있기 때문에 매우 좋습니다. 단점은 그들이 네이티브 앱처럼 "외관을 느끼고"있지만 실제로는 그렇지 않다는 것입니다. 따라서 장치에서 기본 코드가 빠르게 실행되는 대신 브라우저의 래퍼가 될 수 있습니다.이 코드는 모든 코드가 마크 업 / j이며 속도가 느립니다. 아이폰 웹 브라우저에서 cnn 앱을 사용하는 것과 cnn.com을 이용하는 것에 대해 생각해보십시오. 본질적으로 동일한 유형의 차이점입니다. 빠른 맥과 에뮬레이터가 장치보다 훨씬 더 강하게 밀어 넣을 수 있기 때문에 아마도 당신이보고있는 것일 것입니다 (에뮬레이터가 기본 장치보다 느리게 조절되지 않는 한 ... 확인하십시오).


1

실제 앱에 phonegap을 사용하여 Android 에뮬레이터 및 전화에서 Sencha, JQuery mobile 및 dojox.mobile의 작은 벤치 마크를 수행했습니다. 결론은 Dojo가 Sencha와 JQuery를 모두 능가하는 성능을 보여줍니다. Sencha와 JQuery는 현재 강력한 하드웨어에서도 완전히 쓸모가 없을 정도로 느립니다.

그래서 저는 개인적으로 dojo와 함께 가거나 네이티브로 갈 것입니다.

다양한 프레임 워크에서 '쇼케이스'중 하나를 가져 와서 자신의 기기로 chrome2phone하여 직접 사용해보세요.


1
Dojo Mobile이 다른 프레임 워크보다 성능이 우수하다고 말한 것은 처음입니다. 내가 알고있는 모든 모바일 앱 개발자 중, 미꾸라지 ... 모바일 프레임 워크 사라 잘못의 실행 개그입니다
스테 펜 뮐러

성능에 대해서만 이야기하는 경우 에뮬레이터를 사용해서는 안됩니다. 하드웨어에서 실행되는 것과는 크게 다릅니다.
Mufasa

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
Drake Clarris

1
팁 고마워. 우리는 4.0 장치에서 테스트하지 않았습니다. Dean Wild의 답변을 바탕으로 GPU 가속 문제가 아마도 주범이라고 생각했습니다. 이제 문제는 4.0 기기에서 성능을 향상시킬 수 있어도 안드로이드 시장의 작은 부분 (~ 10 %)을 구성하여 Sencha와는 별개의 솔루션으로 이어질 수 있다는 것입니다.
paz

sencha로 무엇을 하든지 항상 느려질 것입니다 ... 왜냐하면 브라우저에 적합하지 않은 깊은 중첩 된 돔 구조이기 때문에 모바일 브라우저 만 남겨 두십시오.
Nav

0

우리는 sencha touch 앱을 출시했으며 iOS와 비교하여 Android에서 중요한 성능 문제가 있습니다. 디자인이 많은 인터페이스를 구현할 때는주의하십시오.

내가 3 개월 전에 알고 싶은 것 : 큰 선불 디자인은 모바일에서 나쁘다. 실제로 설계 / 개발 팀간에 반복적 인 접근 방식이 필요합니다. CSS3 전환은 Android에서 어렵습니다. 많은 둥근 모서리, RGBA, 그라디언트, 텍스트 그림자를 피하십시오. 앱이 발작을 일으킬 것입니다.

DOM을 가능한 작게 유지하십시오. 더 이상 사용되지 않는 패널을 파괴하십시오.

우리는 안드로이드에서 이상한 draw () 동작을 보았지만 너무 많은 CPU를 요구한다는 사실에서 비롯된 것일 수 있습니다. 알 수있는 유일한 방법은 ninya처럼 모든 코드를 프로파일 링하는 것입니다.


0

DOM 조작을 직접 코딩하여 HTML5 앱의 성능을 개선 한 방법에 대해서는 LinkedLN Engineering 팀의이 기사를 참조하십시오.

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

이 기사의 맥락에서 Sencha Touch와 관련된 두 가지 문제가 있습니다.

  1. Sencha Touch는 Javascript 객체를 Dom 노드로 변환하고 Dom 트리에 추가하여 UI를 빌드합니다. Chrome 도구는 Dom 트리에 비교적 많은 수의 DIV 및 기타 DOM 요소를 추가하는 것으로 나타났습니다. 이것이 성능에 해로운 영향을 미치지 않습니까?

  2. Sencha UI에있는 대부분의 Dom 노드는 마크 업이 아닌 Sencha API 코드로 생성됩니다. 이러한 Dom 요소를 직접 조작하는 코드를 작성하면 부작용이 발생하지 않을 것입니까?

오늘이 질문을 Sencha의 공식 포럼에 게시했습니다. 이 답변을 응답으로 업데이트합니다.


1
2011/2012에 이것을 게시했는지 확인할 수 없지만 현재 iPad / iPhone은 Sencha Touch에서 문제가되지 않습니다. 그것은 완벽하게 실행됩니다. 문제는 최신 버전의 Android 2,4 등입니다. translate3d는 너무 고르지 않아 거의 사용할 수 없습니다.
Dominic Watson

0

우리는 Sencha 2 프레임 워크를 사용하여 iOS / Android 용 웹 앱을 만들고 있으며 IOS와 비교하여 Android에서 성능이 끔찍합니다. 불행히도, 나는 이제 내 고객에게 Android에서 앱을 원한다면 기본 또는 티타늄으로 이동한다고 말합니다. 바라건대 그들은 개선을 할 수 있지만 대상 플랫폼이 Android 인 경우 Sencha를 다시 사용하지 않을 것입니다.

참고로 (대상 장치는 Galaxy S3).


-1

Sencha Touch + Phonegap은 Android 기기에서 짜증납니다. 특히 2.2 이상을 타겟팅하는 경우. 이 조합은 안드로이드 기기의 G3 / Note 카테고리에서 작동합니다. 네이티브와 같은 성능과 UI를 원한다면 Android에서 Sencha Touch + Phonegap을 잊어 버리십시오.

Sencha Touch + Phonegap은 눈에 띄는 성능과 놀라운 성능을 원치 않고 수천 개의 장치에서 빠르게 시장에 출시 할 수 있습니다.

고객이 UI 및 성능에 대해 매우 구체적이고 하이브리드 솔루션을 고집하는 경우 면책 조항과 Sencha Touch + Phonegap 앱을 원한다고 서명 한 문서를 제공하십시오.

나는 안드로이드 에서이 치명적인 콤보로 손가락뿐만 아니라 몸 전체를 태웠다.


-1

2013 년 11 월과 Sencha 2 키친 싱크 데모가 HTC Android 4.0에서 중단되고 다른 html5 프레임 워크는 jqMobi를 사용하는 인텔의 XDK와 같은 더 나은 응답을 보여줍니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.