Vai al contenuto


Foto

[technically explained] Perchè la GUI di android è meno fluida di iOS/WP7


Questa discussione e' stata archiviata Questo significa che non e' possibile rispondere
9 risposte a questa discussione

#1 eglio

eglio

    Schiavo

  • Membri
  • StellettaStellettaStellettaStellettaStellettaStellettaStelletta
  • 39.615 Messaggi:

Inviato 07 dicembre 2011 - 17:10

interesting

https://plus.google.... ... DkV9XaJRGS

Android UI will never be completely smooth because of the design constraints I discussed at the beginning:

- UI rendering occurs on the main thread of an app
- UI rendering has normal priority

Even with a Galaxy Nexus, or the quad-core EeePad Transformer Prime, there is no way to guarantee a smooth frame rate if these two design constraints remain true. It’s telling that it takes the power of a Galaxy Nexus to approach the smoothness of a three year old iPhone. So why did the Android team design the rendering framework like this?

Work on Android started before the release of the iPhone, and at the time Android was designed to be a competitor to the Blackberry. The original Android prototype wasn’t a touch screen device. Android’s rendering trade-offs make sense for a keyboard and trackball device. When the iPhone came out, the Android team rushed to release a competitor product, but unfortunately it was too late to rewrite the UI framework.

This is the same reason why Windows Mobile 6.5, Blackberry OS, and Symbian have terrible touch screen performance. Like Android, they were not designed to prioritise UI rendering. Since the iPhone’s release, RIM, Microsoft, and Nokia have abandoned their mobile OS’s and started from scratch. Android is the only mobile OS left that existed pre-iPhone.

So, why doesn’t the Android team rewrite the rendering framework? I’ll let Romain Guy explain:

“...a lot of the work we have to do today is because of certain choices made years ago... ...having the UI thread handle animations is the biggest problem. We are working on other solutions to try to improve this (schedule drawing on vsync instead of block on vsync after drawing, possible use a separate rendering thread, etc.) An easy solution would of course to create a new UI toolkit but there are many downsides to this also.”

Romain doesn’t elaborate on what the downsides are, but it’s not difficult to speculate:

- All Apps would have to be re-written to support the new framework
- Android would need a legacy support mode for old apps
- Work on other Android features would be stalled while the new framework is developed

However, I believe the rewrite must happen, despite the downsides. As an aspiring product manager, I find Android’s lagginess absolutely unacceptable. It should be priority #1 for the Android team.

When the topic of Android comes up with both technical and nontechnical friends, I hear over and over that Android is laggy and slow. The reality is that Android can open apps and render web pages as fast or faster than iOS, but perception is everything. Fixing the UI lag will go a long way to repairing Android’s image.

Beyond the perception issue, lag is a violation of one of Google’s core philosophies. Google believes that things should be fast. That’s a driving philosophy behind Google Search, Gmail, and Chrome. It’s why Google created SPDY to improve on HTTP. It’s why Google builds tools to help websites optimize their site. It’s why Google runs it’s own CDN. It’s why Google Maps is rendered in WebGL. It’s why buffering on Youtube is something most of us remember, but rarely see anymore.

But perhaps the most salient reason why UI lag in Android is unacceptable comes from the field of Human-Computer Interaction (HCI). Modern touch screens imply an affordance language of 1 to 1 mapping between your finger and animations on the screen. This is why the iOS over-scroll (elastic band) effect is so cool, fun, and intuitive. And this is why the touch screens on Virgin America Flights are so frustrating: they are incredibly laggy, unresponsive, and imprecise.

A laggy UI breaks the core affordance language of a touch screen. The device no longer feels natural. It loses the magic. The user is pulled out of their interaction and must implicitly acknowledge they are using an imperfect computer simulation. I often get “lost” in an iPad, but I cringe when a Xoom stutters between home screens. The 200 million users of Android deserve better.

And I know they will have it eventually. The Android team is one of the most dedicated and talented development teams in the world. With stars like +Dianne Hackborn and +Romain Guy around, the Android rendering framework is in good hands.

I hope this post has reduced confusion surrounding Android lag. With some luck, Android 5.0 will bring the buttery-smooth Android we’ve all dreamed about since we first held an HTC G1. In the mean time, I’ll be in Redmond working my butt off trying to get a beautiful and smooth mobile OS some of the recognition it deserves.


:patpat:

Dopo anni di guerra ancora non avete capito che i Russi non sparano di proposito sui civili?

ciò che afferma Putin, drammaticamente, corrisponde a una verità più imparentata con la realtà e la logica.


#2 Guest__*

Guest__*
  • Ospiti

Inviato 07 dicembre 2011 - 17:24

...Romain è un genio...l'interfaccia swing aerith era spettacolare per l'epoca...questo articolo lo possiamo definire l'ennesimo flop di google?...

#3 Guest__*

Guest__*
  • Ospiti

Inviato 07 dicembre 2011 - 17:25

...Romain è un genio...l'interfaccia swing aerith era spettacolare per l'epoca...questo articolo lo possiamo definire l'ennesimo flop di google?...



...correggo...non flop ma approccio alla cazzum...prima o poi dovranno riscriverlo...

#4 SuperMario=ITA=

SuperMario=ITA=

    Lo scemo del forum

  • Moderatori
  • 96.852 Messaggi:

Inviato 07 dicembre 2011 - 17:31

c'è scritto che dal 3 in poi è corretto.

però le applicazioni devono supportare il metodo.
TghXItr.gif - Amare la Formattazione è la Soluzione al 90% dei Problemi della Vita

#5 Thefrank0

Thefrank0

    Schiavo

  • Membri
  • StellettaStellettaStellettaStellettaStelletta
  • 1.247 Messaggi:

Inviato 07 dicembre 2011 - 23:20

c'è scritto che dal 3 in poi è corretto.

però le applicazioni devono supportare il metodo.


No.
In Android 3.0 e 4.0 la UI può beneficiare dell'accelerazione hardware della gpu, che se non altro, dà una grossa mano.
Purtroppo rimangono questi punti:

- UI rendering occurs on the main thread of an app
- UI rendering has normal priority

Questo mentre sembrerebbe che l'approccio di iOS consiste nel rendering in un processo con priorità real time. Inoltre, quanto vi è il tracking del tocco alcuni task in background vengono automaticamente delayed, mentre per gli altri c'è la discrezionalità del programmatore che effettua il test finchè l'app è completamente fluida.

All that stuff you noticed—the way images aren't drawn into lists while you're scrolling, the way WebKit rendering stops when the system is tracking a touch—isn't inherently built-in by a mechanism that pauses the world when a finger is on the screen.* It's deliberate behavior painstakingly implemented by the developer of each individual app.

This is not a technical difference; it's a cultural difference. Good iOS developers don't ship software until it runs at something near 60 fps while scrolling and tracks touches almost perfectly; good Android developers do.

* This isn't strictly true: the main thread is put into a special mode during touch tracking, and by default, certain callbacks are delayed in that mode. However, a lot of other things, like loads from disk or network activity kept completely on a background thread, are not paused; nor is anything automatically paused during momentum scrolling. The developer has to explicitly delay those things."


MFW:
Immagine inserita

#6 mapomac

mapomac

    Schiavo

  • GRULLINO
  • 35.439 Messaggi:

Inviato 08 dicembre 2011 - 12:04


I was there is 1994 in Toronto. All I can say is that the concert was as close to a religious experience or being abducted by aliens. Out of the f n world. Best concert I have ever been to ( ͡° ʖ̯ ͡°)


#7 Cyrano

Cyrano

    Schiavo

  • GRULLINO
  • 24.498 Messaggi:

Inviato 08 dicembre 2011 - 12:17

Comunque Dio ha scelto : http://android.hdblo... ... -a-gubbio/

:oki:



Còsò,lsdm,lmkdnmkdnjdnjdnj
Immagine inseritaFINCHE' C'E' BIRRA C'E' SPERANZA !!!
Ma anche un po' di gnocca non guasterebbe ogni tanto ...

Immagine inserita

#8 Thefrank0

Thefrank0

    Schiavo

  • Membri
  • StellettaStellettaStellettaStellettaStelletta
  • 1.247 Messaggi:

Inviato 08 dicembre 2011 - 13:53

Comunque Dio ha scelto : http://android.hdblo... ... -a-gubbio/

:oki:



Còsò,lsdm,lmkdnmkdnjdnjdnj


Ma dio è per il closed source :oki:

http://doringega.com... ... ed-source/

#9 ilguercio

ilguercio

    Cerealguy

  • Donatori di sperma
  • StellettaStellettaStellettaStellettaStellettaStellettaStelletta
  • 15.594 Messaggi:

Inviato 08 dicembre 2011 - 13:59

@[/url]":i391oai3] Comunque Dio ha scelto : http://android.hdblo... ... -a-gubbio/

:asd:



Còsò,lsdm,lmkdnmkdnjdnjdnj


Ma dio è per il closed source :oki:

http://doringega.com... ... ed-source/

:oki:
Immagine inserita

#10 toyo

toyo

    sono triste

  • Donatori di sperma
  • StellettaStellettaStellettaStellettaStellettaStellettaStelletta
  • 44.144 Messaggi:

Inviato 08 dicembre 2011 - 14:22

interessante :oki:

FIRMA FOTTUTAMENTE EDITATA. IL FOTTUTO STAFF.
 

Mai più giorni felici