Red de conocimiento informático - Conocimiento de la instalación - ¿Alguien sabe por qué una máquina Android no es tan fluida como una máquina Apple sin importar cuán alta sea la configuración? ¿Es fácil de usar?

¿Alguien sabe por qué una máquina Android no es tan fluida como una máquina Apple sin importar cuán alta sea la configuración? ¿Es fácil de usar?

Análisis: por qué Android no es tan fluido como iOS

Contenido oculto en esta publicación

(La siguiente es la traducción original que circula en Internet, que puede no estar disponible

completamente correcto)

Aunque muchos teléfonos Android tienen configuraciones superiores a las del iPhone

Por ejemplo, la mayoría de los teléfonos Android

tienen 1 GB de memoria, mientras que el iPhone 4S solo tiene

512 MB, pero cualquiera que haya usado un iPhone sabe

que los teléfonos Android no se sienten

tan suaves cuando se usan, entonces, ¿por qué aparece?

¿Qué pasa con esta situación? El ingeniero de software y ex pasante de Google, Andrew Munn, explica que esto se debe a un problema con el diseño del marco de la ineficiente interfaz de usuario de Android

.

Sin embargo, este pasante Andrew Munn

es un estudiante universitario con especialización en ingeniería de software.

Es miembro del equipo de Android y no está en el equipo framework. funciona

y no ha visto el código fuente representado por Android

por lo que su afirmación puede no ser 100% precisa.

Y solía trabajar en el equipo de Windows Phone

por lo que puede estar inconscientemente predispuesto contra

Android. Aquí está su opinión sobre

por qué la experiencia de Android no es tan fluida como la de iOS

.

La razón por la que Android no es tan fluido como iOS no es por

las pausas causadas por Java GC, ni porque

Android ejecuta código de bytes compilado en Java.

, mientras que iOS ejecuta código nativo; la razón fundamental

es que la representación de la UI de iOS usa prioridad en tiempo real, mientras que

la representación de la UI de Android sigue. prioridad normal del hilo principal en el modelo informático tradicional

.

Esto puede parecer abstracto y difícil de entender

pero inténtalo. Usando tu

iPad o iPhone, abre Safari y carga

una página web compleja, como la primera

página de Sina.com cuando se carga la página. A mitad de camino, coloca tu

dedo en la pantalla y muévelo hacia la izquierda o hacia la derecha,

verás que todo el renderizado se detendrá inmediatamente y

La página No se cargará nuevamente hasta que retires el dedo de la pantalla.

Repita los pasos anteriores en un dispositivo Android

y descubrirá que el navegador seguirá intentando cargar

la página y renderizar el HTML mientras lo intenta. para realizar múltiples tareas

Entonces, para Android, un procesador

doble núcleo eficiente es muy importante, razón por la cual

Galaxy S II puede funcionar sin problemas

En iOS, el proceso de renderizado de la UI tiene prioridad absoluta

Cuando el usuario toca la pantalla táctil del iPhone

, todos los procesos en iOS se detendrán y la UI

El hilo interceptará todos los eventos y el sistema utilizará todos los

recursos para el proceso de renderizado de la interfaz de usuario para garantizar la prioridad de renderizado en tiempo real de la

interfaz de usuario. En el sistema Android

, la prioridad del proceso de representación de la interfaz de usuario no es

tan alta, lo que significa que cuando tocas la pantalla del teléfono Android, el programa en segundo plano del sistema no

p>

p>

Detener, pero continuar ejecutándose, como

descargar y verificar mensajes de texto para que la interfaz de usuario del sistema pueda obtener

recursos

Presenta la interfaz de usuario.

Esta es la razón por la que Android no

funciona bien.

Debido a esto, el recién lanzado Galaxy

Nexus y la tableta EeePad Transformer Prime equipada con un procesador de cuatro núcleos

no prometen brindar una experiencia fluida. La experiencia de estos dispositivos es sólo equivalente a la del iPhone de hace tres años.

Entonces, ¿por qué el equipo de Android no resuelve fundamentalmente el problema

?

Además de la presentación de la interfaz de usuario, la falta de

aceleración de hardware efectiva de Android también es una razón. Existen grandes diferencias entre los diferentes

teléfonos Android, y Apple sí. la única empresa de dispositivos portátiles que fabrica hardware y

software, por lo que solo Apple tiene la capacidad de insertar optimizaciones de software en el hardware que fabrica

Los dispositivos basados ​​en chips de Apple no solo son energía eficiente, pero también

fluido.

De hecho, el desarrollo de Android comenzó mucho antes

del lanzamiento del primer iPhone,

y el prototipo original de Android estaba diseñado para utilizar botones

p>

Los dispositivos de telefonía móvil son los competidores de BlackBerry

. En los teléfonos móviles con botones, la prioridad de representación de la interfaz de usuario no es tan importante. Sin embargo, después del lanzamiento del iPhone, el Grupo Android rápidamente cambió Android a un sistema de telefonía móvil con pantalla táctil para lanzar rápidamente productos que podía competir con el iPhone, pero en ese momento

Reescribir el marco de la interfaz de usuario ya no era posible. Porque si

esto sucede, todos los programas en el Android App Market

no estarán disponibles y esta relación permanecerá en un círculo vicioso.

----------------------------------

-- --- --------------------

-------------- --- ---------------

--------- ---------------- -- --

(La pseudociencia de este pasante es realmente buena,

Me gustaría refutarla aquí)

Según este pasante, android

La razón por la que la interfaz de usuario no es fluida es porque la prioridad del procesamiento de la interfaz de usuario de respuesta no es suficiente

, y la razón por la que Google no mejora la interfaz de usuario es que

¿Tiene miedo de afectar a las aplicaciones ya publicadas?

Esta persona no comprende en absoluto el proceso de ios y Android

El mecanismo de control, y mucho menos la prioridad de la interfaz de usuario en ios, es la más alta

( risa, ios ¿Cuándo tuvo la interfaz de usuario la mayor prioridad?

Es la interrupción del sistema la que tiene la mayor prioridad. En realidad

Dijo que el proceso en segundo plano en Android siempre se está ejecutando. cuando se toca la interfaz de usuario

, mientras el proceso en segundo plano en ios siempre está ejecutándose.

¿Cómo se atreve a decir algo tan ridículo que Android sigue ejecutándose cuando toca la interfaz de usuario? Me pregunto

si alguna vez trabajó en Google. Incluso si lo que dijo sobre las prioridades de la interfaz de usuario tuviera sentido, es poco probable que cambiar las prioridades provoque que un programa caiga en un círculo vicioso. Si comprendes la arquitectura de Android, debes saber que

El procesamiento de gráficos (parte prioritaria) se encuentra en la penúltima capa de Android,

es decir, la capa del kernel, y la diseño de Android

p>

Tiene un bajo acoplamiento entre capas.

La dependencia de cada capa de

la siguiente capa solo se llama a través de la interfaz. y cada capa depende de la siguiente capa. Las dependencias de una capa solo se llaman a través de la interfaz, y las dependencias de la siguiente capa de la capa anterior solo se llaman a través de la interfaz.

La dependencia de cada capa de

la siguiente capa solo se llama a través de la interfaz.

Los cambios dentro de la capa no afectarán el comportamiento fuera de la capa en todos

p>

.

En pocas palabras, si vas al mostrador del banco

para hacer negocios, vas a la ventanilla de cambio de divisas para cambiar divisas y bonos

vas a la ventanilla de bonos. ¿Cómo se maneja dentro del banco?

Tu solicitud es asunto de ellos y todo lo que necesitas hacer es enviar

tus datos y recibir los resultados.

Si, como sugirió este pasante, era el marco de la interfaz de usuario

el que manejaba la priorización, entonces Google podría fácilmente

aumentar la prioridad directamente, y nunca lo hará. impactará

cualquier programa existente, ya que ningún

programa puede eludir el marco de trabajo de Android y llamar directamente

capas inferiores de la interfaz de usuario, por lo que se realizan mejoras de bajo nivel

Tampoco causará problemas de compatibilidad para usuarios de nivel superior.

Y esto no aumentará mucho los costes de producción.

Pero ¿por qué Android sigue pareciendo más dinámico que iOS

? Creo que es la sensación de estar "atascado" (muchas personas se sienten instigadas por la brecha conceptual de que "android está más atascado que ios, en lugar de como ios"), si escuchas este tipo de cosas también mucho, naturalmente no tendrás la sensación correcta), por lo que tienes una sensación de cautela: Android tiene más retraso que iOS. He escuchado esto tantas veces que existen innumerables explicaciones "científicas y privilegiadas" de por qué Android es inferior a iOS. Creo que además de analizar este tema dialécticamente

también debemos mirarlo desde una perspectiva de desarrollo.

Al principio, el sistema Android no estaba tan optimizado como el sistema iOS

Esto se debía al concepto de diseño y la antigüedad del producto

(Android se lanzó en 2007, la empresa acaba de ser adquirida. El sistema no se había verificado en la práctica antes y iOS siempre ha sido un producto de Apple desarrollado desde la era Mac), hasta la optimización del sistema. No tan bueno como

Sistema iOS. (p>

Comienza la era mac). Además, el hardware

es mucho menos potente que el iPhone. Además, es abierto y gratuito, por lo que han entrado todos los fabricantes mixtos. Los fabricantes de componentes se encuentran en una situación desesperada, lo que da lugar a productos desiguales.

.

La comprensión de muchas personas sobre la brecha entre Android e iOS

se estableció en ese momento.

Si miramos el teléfono móvil de Apple, solo tomó un año. Para producir una máquina, ya sea software o hardware, hay suficiente tiempo de ciclo desde la selección de proveedores hasta la producción, y todo es un ajuste fino.

En otras palabras, el campo de Android abarca desde la gama baja hasta la gama alta

, pero la gama baja es numerosa y desordenada, mientras que la llamada gama alta es pocos

no refinados, y el iPhone es de muy alta gama, y ​​esto es como las carreras de caballos de Tianji, que siempre comparan los buenos con los basura

La palabra natural- La difusión boca a boca se ha convertido en Android

También es una razón importante por la que el iPhone no es tan bueno como iOS, pero si el iPhone no es tan bueno como iOS, se convierte en una razón importante para Android

, pero si el iPhone no es tan bueno como iOS, se convierte en uno de Android

Una razón importante, pero el iPhone no es tan bueno como iOS, que se ha convertido en una razón importante para Android

.

El rango de impresiones no es tan grande como el de ios. De hecho, en esta era, en comparación con los productos iOS, es cierto que los productos Android no son tan buenos como los iPhone.

Pero en los últimos años, el hardware de Android básicamente

superó al del iPhone, pero ¿por qué todavía

se siente más lento que iOS? Además de los factores psicológicos mencionados anteriormente

, personalmente creo que esto no tiene nada que ver con

Android en sí, ni es tan simple como la optimización del sistema operativo.

.

Es un problema de hardware, de hecho, a nadie

le importa este problema, pero lo que quiero decir es que

el mismo monitor tiene un tiempo de respuesta más rápido,

.

La reproducción es más fluida y sencilla, con menos manchas.

Las pantallas capacitivas también tienen un tiempo de respuesta y los requisitos de voltaje del entorno de trabajo son muy altos. Los propios paneles capacitivos

responden lentamente, solo 50 ~ 100 ms. >

La respuesta es más lenta cuando el voltaje es inestable y

el tiempo de respuesta de la placa capacitiva del iphone4 es

10~20 ms, una diferencia de casi 80 ms. 20 ms, una diferencia de casi 80 ms. Aunque es menos de una décima de segundo, esto afectará la intuición de las personas en la experiencia real

. Otro factor es el material de vidrio de la pantalla táctil. Cuanto mayor es la dureza, más suave es. Esto se puede medir en función del coeficiente de amortiguación y el coeficiente de fricción.

Tomemos como ejemplo un espejo.

Cuanto mayor sea la dureza del material, más suave se sentirá. El teléfono móvil de Apple

utiliza Gorilla, con una dureza de 7. Cuando está desnudo,

se siente muy suave y no se siente descuidado. Además,

. > es grande Algunas personas que compran protectores de pantalla para teléfonos móviles de Apple gastan mucho dinero (yo gasté 129) y la película también es suave. 129), la película también afecta la sensación al tacto. En lo que a teléfonos Android se refiere,

pocas personas usan Orangutan, y menos aún están dispuestas a poner una buena película

. También se siente peor que el iPhone

.

En lo que respecta a mi experiencia personal a largo plazo,

la interfaz de usuario de Android en realidad carece de demasiados efectos de animación, como

cambio delicado de interfaz (Si Observa con atención, cuando la interfaz de iOS

cambia, no solo la ventana se moverá, sino que la barra de título

y los controles encima de ella también se moverán a diferentes velocidades

<. p >, se siente muy dinámico y delicado, como una corriente

Al cambiar, la barra de título y los controles encima se moverán a diferentes velocidades (se siente muy dinámico y delicado, como agua que fluye

p>

), lo que lo hace muy rígido de manejar.

De hecho, desde una perspectiva táctil, no creo que haya una diferencia clara entre un conejo y un conejo.

. Obviamente, si el iPhone tiene programas en segundo plano o una gran cantidad de programas en ejecución, habrá un retraso significativo incluso en el cambio de interfaz normal.

Lo último que hay que agregar es iOS. es un desarrollo pseudo

multiproceso, Android se centra más en el modelo de programa

, mientras que iOS se centra más en la experiencia del usuario

. -El renderizado (control) de la aplicación (en proceso) y

el renderizado entre procesos (superficie) se colocan en un fluinger)

Diferentes módulos y espacios, lo que genera hilos de animación

p>

cambiar con demasiada frecuencia, lo que requiere un chip central

de mayor rendimiento para lograr el mismo efecto que iOS para igualar

el renderizado también se vuelve muy complejo y, por lo tanto, no tiene el mismo efecto de animación de rotación de pantalla que en iOS al cambiar entre pantallas horizontales y verticales

.

PD: A partir de la versión oficial 4.1, Android ha ido madurando gradualmente con el soporte de hardware

Creo en el sistema 5.0

Se convertirá en el pináculo de su historia de desarrollo!