iOS/iPadOS vs. Android: Batalha dos Sistemas Operacionais Móveis

Última atualização: Dezembro 19 2023
iOS/iPadOS vs Android

No mundo competitivo dos sistemas operacionais móveis, a batalha entre Apple iOS/iPadOS e Google Android tem sido uma fonte constante de debate e preferências entre os usuários, embora muitos dos As comparações têm se concentrado mais em sistemas operacionais de desktop.

Cada um desses sistemas oferece experiências únicas e recursos distintos, desde o design até a funcionalidade. Neste artigo, exploraremos uma comparação técnica detalhada entre iOS/iPadOS e Android, examinando aspectos mais técnicos deles, para conhecê-los por dentro e assim ajudar de alguma forma na seleção, ainda que sem depender de favoritismo...

O que é iOS?

iOS (antigo iPhone OS) É um sistema operacional móvel desenvolvido pela Apple Inc. exclusivamente para seus dispositivos. Está presente em dispositivos iPhone e iPod Touch (descontinuado em meados de 2022). É o segundo sistema operacional móvel mais utilizado no mundo, depois do Android.

Ele também serve como base para outros três sistemas operacionais criados pela Apple: iPadOS, tvOS e watchOS. E, embora seja um software proprietário, algumas partes são de código aberto sob a Apple Public Source License e outras licenças.

Foi lançado em 2007 para o primeiro iPhoneDesde então, o iOS foi expandido para oferecer suporte a outros dispositivos Apple, como o iPod Touch (setembro de 2007) e o iPad (lançado em janeiro de 2010, disponível em abril de 2010). Em março de 2018, a App Store da Apple continha mais de 2.1 milhões de aplicativos iOS, um milhão dos quais nativos para iPads. Esses aplicativos móveis foram baixados coletivamente mais de 130 bilhões de vezes. As principais versões do iOS são lançadas anualmente, e a versão estável atual, o iOS 17, foi lançada ao público em 18 de setembro de 2023.

No entanto, suas origens remontam a dois anos antes, já que em 2005, Steve Jobs começou a planejar o futuro iPhone, ele teve que organizar a equipe de desenvolvimento de um novo sistema operacional, para o qual ele reuniria tanto a equipe de desenvolvimento do macOS quanto do iPod, lideradas por Scott Forstall e Tony Fadell, respectivamente, em uma competição interna para tentar criar um macOS muito reduzido ou tentar expandir o sistema do iPod.

Forstall venceu ao criar iPhone OS, que possibilitou o sucesso do iPhone como plataforma para desenvolvedores terceirizados. O sistema operacional foi revelado junto com o iPhone na Macworld Conference & Expo em 9 de janeiro de 2007 e lançado em junho daquele ano.

Licenciamento e desenvolvimento

Embora iOS/iPadOS sejam sistemas operacionais fechado ou proprietário, licenciado pela Apple. Existem também algumas partes de código aberto relacionadas a este sistema, como o Darwin, que é licenciado sob a Apple Public Source License (APSL), uma licença livre e de código aberto, embora não seja compatível com a GNU GPL.

Apple tornou o kernel XNU de código aberto sob a licença BSD Cláusula 3 para as partes originais herdadas do sistema BSD, enquanto as partes adicionadas pela Apple são licenciadas sob a APSL. No entanto, as versões do kernel no iOS não estão disponíveis publicamente.

Quanto ao desenvolvimento, a linguagem assembly é usada para algumas coisas no kernel, assim como as linguagens de programação C, C++, Objective-C e Swift Para aplicativos, como você deve saber. Tudo relacionado ao sistema operacional é desenvolvido pela própria Apple; no entanto, aplicativos de terceiros são desenvolvidos por uma ampla variedade de indivíduos, grupos e empresas.

Para facilitar a vida dos desenvolvedores na criação de aplicativos compatíveis, a Apple tem um SDK iOS (Kit de Desenvolvimento de Software)Inicialmente, o CEO da Apple, Steve Jobs, não planejava permitir que desenvolvedores terceirizados criassem aplicativos nativos para iOS, mas após pressão dos desenvolvedores, ele anunciou em outubro de 2007 que um kit de desenvolvimento de software estaria disponível em fevereiro de 2008. Talvez essa decisão tenha salvado o sistema operacional, já que sem ele, o ecossistema de aplicativos para ele teria sido muito pobre, e o Android teria entrado em colapso.

O SDK está disponível para macOS. Ele fornece acesso a vários recursos e serviços de dispositivos iOS/iPadOS, bem como um simulador para esses dispositivos móveis para testar aplicativos durante o desenvolvimento. Assinatura do Programa para Desenvolvedores Apple Para testar, obter suporte técnico e distribuir aplicativos pela App Store, você deve pagar uma taxa muito mais alta do que a taxa paga para publicar no Google Play.

En definido com XcodeO SDK do iOS ajuda desenvolvedores a criar aplicativos iOS usando linguagens de programação oficialmente suportadas, como Swift e Objective-C. Outras empresas também criaram ferramentas que permitem o desenvolvimento de aplicativos nativos para esses sistemas usando suas respectivas linguagens de programação.

Núcleo ou kernel

O kernel iOS/iPadOS é o kernel XNU (XNU não é Unix). As versões do XNU são baseadas em diferentes versões do Darwin, e o kernel é projetado sob ASLR (Address Space Layout Randomization), o que complica as possibilidades de exploração de vulnerabilidades por não conhecer os endereços de memória onde o kernel está localizado, algo que também temos no Linux, entre outros.

O iOS não possui extensões kernel (kexts) No sistema de arquivos, a imagem base do kernel é randomizada pelo bootloader (iBoot) e, com o tempo, as versões do kernel do iOS/iPadOS e do macOS convergiram, à medida que o iOS introduziu novos recursos que posteriormente foram incorporados ao macOS. A Apple parece estar gradualmente fundindo os kernels, em uma tentativa de alcançar a convergência que a Microsoft e até mesmo a Canonical, no mundo Linux, há muito desejam, ou de alcançar algo semelhante ao ChromeOS do Google.

O XNU é desenvolvido pela Apple Inc. desde dezembro de 1996 para uso no sistema operacional macOS e lançado como software livre e de código aberto como parte do Sistema operacional Darwin. E mais tarde também seria a base para o resto dos sistemas operacionais da empresa.

Para aqueles que ainda não sabem o que é Darwin, é o sistema operacional central do tipo Unix que existia originalmente como um sistema operacional independente de código aberto e é composto de código derivado de NeXTSTEP, BSD, Mach e outros projetos de software livre, bem como código desenvolvido pela própria Apple.

É uma kernel híbrido que utiliza o OSFMK 7.3 (Open Software Foundation Mach Kernel) da OSF, elementos do FreeBSD e uma interface de programação de driver orientada a objetos chamada I/O Kit. Este design híbrido combina a flexibilidade de um microkernel com o desempenho de um kernel monolítico.

O ambiente de desenvolvimento XCode, embora aparentemente proprietário da Apple, usa ferramentas de código aberto do GCC ou LLVM para a compilação real.

É preciso dizer que embora o XNU seja compatível com a arquitetura AMD64 e IA-32, ele foi finalmente portado para Apple Silicon (ARM), e agora o suporte para outras arquiteturas mais antigas foi removido para simplificá-las. Além disso, arquiteturas x86 não fariam sentido em dispositivos móveis, como é o caso aqui. Mas falaremos mais sobre isso depois...

A parte BSD do kernel fornece a interface de programação para Aplicações POSIX (APIs), o modelo de processo Unix para tarefas Mach, políticas básicas de segurança, sistemas de arquivos virtuais, sistemas de arquivos locais e protocolos de rede, entre outros. O I/O Kit é um framework de driver de dispositivo escrito em um subconjunto de C++ baseado em C++ embarcado. Ele oferece um design orientado a objetos que facilita a escrita de drivers em menos tempo e código, é multithread, simetricamente habilitado para multiprocessadores e permite a configuração automática de dispositivos.

Arquitetura suportada

O chamado Apple Silicon, tanto na série M para computadores quanto na Série A para dispositivos móveis, entre outras séries, são baseados na arquitetura ARM ou ISA, mas não é um ARM puro. A Apple também adicionou suas próprias instruções e extensões específicas para otimizar o desempenho de acordo com suas necessidades. E o XNU foi otimizado para este ISA, alcançando o melhor desempenho e eficiência.

Ou seja, a Apple personaliza suas CPUs, embora em essência seja uma BRAÇO ISA quase que totalmente. No entanto, essas pequenas diferenças, juntamente com o fato de ser um SoC complexo com outros componentes envolvidos, são os motivos pelos quais os binários compilados para um ARM puro não funcionam nesses dispositivos.

  Xiaomi 13 vs iPhone 14 vs Samsung Galaxy S23: relação preço-desempenho no segmento de ponta?

Basicamente, os chips da Apple são baseados no ARMv8 atualmente, embora ARMv7-A e ARMv6 também tenham sido usados ​​anteriormente.

Sistema de arquivos APFS

A Apple File System (APFS) É um sistema de arquivos proprietário desenvolvido e usado pela Apple Inc. no macOS, iOS, watchOS, tvOS e iPadOS. O APFS foi projetado para resolver problemas fundamentais do HFS+ e foi otimizado para unidades de armazenamento flash mais recentes.

Anunciado na conferência de desenvolvedores da Apple em junho de 2016. O sistema usa números i-node de 64 bits e oferece armazenamento mais seguroO APFS utiliza o comando TRIM para melhor gerenciamento de espaço e desempenho. Ele utiliza o esquema de particionamento GPT, com contêineres e volumes APFS dentro deles. Oferece clonagem eficiente, snapshots, criptografia nativa e suporte a diversas opções de criptografia. Também se concentra na integridade dos dados, proteção contra failover e compactação transparente. No entanto, algumas limitações incluem a falta de somas de verificação para dados do usuário, desempenho mais lento em discos rígidos e problemas ou vulnerabilidades conhecidos.

Interface gráfica

Embora não se saibam detalhes sobre o nome da interface gráfica do usuário (GUI) para telas sensíveis ao toque multitoque, como é conhecida no macOS, que se chama Aqua, o que sabemos é que a estrutura existe. UI Kit, que oferece diversas funções para desenvolvimento de aplicações, disponibilizando componentes que permitem construir a infraestrutura principal de apps para esses sistemas operacionais.

O UIKit também inclui suporte para animações, documentos, desenho e impressão, gerenciamento e exibição de texto, pesquisa, extensões de aplicativos, gerenciamento de recursos e obtenção de informações sobre o dispositivo atual. Ele permite personalizar o suporte de acessibilidade e localizar a interface do aplicativo para diferentes idiomas, países ou regiões culturais. Além disso, o UIKit funciona perfeitamente com a estrutura SwiftUI, permitindo que você implemente partes do seu aplicativo no SwiftUI ou misture elementos de interface entre as duas estruturas.

Serviços móveis da Apple

Não há muitos detalhes sobre isso «Serviços Móveis Apple», Na verdade, não há nenhuma referência ao nome, como acontece no Android e no GMS ou no Google Mobile Services. No entanto, o que sabemos é que ele inclui uma série de serviços e aplicativos básicos.

Além dos serviços essenciais para o telemóvel, temos também um kit de aplicações pré-instaladas, chamadas azulado, como Câmera, Fotos, Mensagens, Mail, Safari, Mapas, Siri, Calendário, App Store, Contatos, Catálogo de Endereços, Relógio, Calculadora, Buscar iPhone, Arquivos, etc.

Aplicativos e loja de aplicativos

Como mencionei, a loja de aplicativos da qual você pode baixar todos os programas e videogames disponíveis para esta plataforma é chamada Apple App Store, como você sabe.

Quanto às aplicações disponíveis, são muito numerosas e todas elas programadas em expressões idiomáticas:

  • Objective-C é uma das linguagens de programação mais populares para o desenvolvimento de aplicativos para iPhone. É uma linguagem orientada a objetos baseada em C, usada em conjunto com Xcode e Cocoa para criar aplicativos para iOS. Cocoa é uma interface de programação escrita em Objective-C que gerencia memória e segue o modelo MVC. Embora Objective-C seja o padrão há muito tempo, em 2010 a Apple permitiu o uso de código interpretado no SDK do iOS.
  • Swift, por outro lado, é uma linguagem mais recente, projetada para ser mais amigável ao usuário do que Objective-C. É considerada o futuro do desenvolvimento de aplicativos iOS e ganhou popularidade por sua facilidade de uso e sintaxe mais limpa. Grandes empresas, como Firefox e WordPress, adotaram Swift, e espera-se que mais empresas migrem de Objective-C para Swift nos próximos anos.

Além disso, enquanto no Android os pacotes são conhecidos como .apk, no sistema Apple temos o .ipaSeu nome vem do pacote da App Store do iOS e é tão simples quanto um arquivo ZIP compactado contendo o aplicativo. E, a menos que você faça o jailbreak, aplicativos baixados de terceiros não podem ser instalados em hipótese alguma por motivos de segurança.

fuga de presos

Como você deve saber, sistemas operacionais móveis como iOS/iPadOS e Android vêm com um "bloqueio" severo — você é um usuário sem privilégios — para evitar problemas de segurança. No entanto, isso também limita suas capacidades, e alguns realizam um "jailbreak" para obter privilégios, o que é conhecido como "desbloqueio". fuga de presos, o equivalente ao root do Android.

Desde o seu lançamento, o iOS está sujeito a vários hacks Projetado para adicionar funcionalidades não permitidas pela Apple. Antes do surgimento da App Store do iOS em 2008, o principal motivo para o jailbreak era contornar o mecanismo de compra da Apple para instalação de aplicativos nativos. Embora a Apple alegasse não lançar atualizações de software especificamente projetadas para quebrar essas ferramentas, cada atualização do iOS frequentemente corrigia exploits de jailbreak não corrigidos anteriormente.

O jailbreak envolve explorar e corrigir o kernel de um dispositivo toda vez que ele inicializa, já que o iOS carrega inicialmente seu próprio kernel na inicialização. Existem diferentes tipos de jailbreak, sendo o jailbreak untethered o mais abrangente, permitindo que o dispositivo seja reiniciado sem um computador. Os jailbreaks tethered funcionam apenas temporariamente para uma única inicialização. Nos últimos anos, surgiram soluções semi-tethered e semi-untethered, oferecendo variações na persistência das modificações no dispositivo entre as reinicializações.

O que é iPadOS? Diferenças entre iOS e iPadOS

iPadOS Ainda é apenas um iOS modificado para tablets. Embora suporte aplicativos iOS e compartilhe grande parte de sua base de código com a família mais ampla de plataformas iOS, incluindo tvOS, watchOS e o iOS original para iPhone, o iPadOS apresenta algumas diferenças importantes em termos de recursos e funcionalidades.

Ao contrário do iOS para iPhone, o iPadOS foi otimizado para uso em tablets e oferece recursos específicos para tablets. multitarefa e extensibilidadePor exemplo, o iPadOS suporta o modo de tela dividida e pode funcionar com monitores externos, recursos não disponíveis no iOS para iPhone. Além disso, o iPadOS suporta o Apple Pencil e possui um modo de desktop web nativo, recursos não encontrados no iOS para iPhone.

Apesar dessas melhorias, o iPadOS apresenta algumas limitações em relação ao iOS para iPhone. Por exemplo, O iPadOS não é compatível com o Apple Watch e requer um iPhone conectado para recursos como chamadas telefônicas e iMessages/SMS. A compatibilidade de aplicativos também é diferente, já que o iPadOS pode executar a maioria dos aplicativos desenvolvidos para iOS em modo de compatibilidade, mas o iPhone não pode executar aplicativos desenvolvidos especificamente para o iPadOS.

Em termos de segurançaO iPadOS inclui recursos modernos como autenticação biométrica, armazenamento seguro de itens para senhas e pagamentos, suporte a VPN e IPv6, bloqueio de rastreamento de terceiros, criptografia de backup e armazenamento em nuvem criptografado, entre outros.

Quanto à sua história, ela remonta a seu lançamento em 2019, quando a Apple decidiu diferenciar a experiência do sistema operacional do iPad da do iPhone. Ao longo dos anos, melhorias significativas foram introduzidas, como o modo Sidecar para usar o iPad como monitor externo, otimizações de mouse e trackpad e novos recursos multitarefa, como o Gerenciador de Estágios no iPadOS 16, que permite a execução de até quatro aplicativos em uma única interface de desktop.

En Em termos de negócios, o iPadOS pode ser uma opção viável para casos de uso específicos, como substituição de laptops, quiosques de check-in, displays de informações no local de trabalho ou sistemas de ponto de venda (POS). No entanto, sua adequação depende do caso de uso específico, já que o iPadOS não pode executar aplicativos de desktop macOS e está limitado a aplicativos desenvolvidos para a plataforma iOS.

Em resumo, as diferenças entre iOS e iPadOS são os seguintes, o restante é compartilhado:

  Tudo o que você precisa saber antes de comprar um teclado para tablet
Sessões:iOS (iPhones)iPadOS (iPad)
Tela dividida para aplicativosNãosim
Suporte para monitor externoNãosim
Sidecar (entrada de tela)Nãosim
Compatível com aplicativos para iPadOSNãosim
Compatível com aplicativos iOSsimsim
Modo desktop livreNãosim
Suporte para Apple WatchsimNão
Telefoniasimsim
iMessage/SMSsimsim
Dock UI na tela inicialNãosim
Vídeo picture-in-picture (PiP)simsim
Safari no modo desktopNãosim
Conectividade 4G / 5GsimSim (algumas versões)
VoIP / videoconferênciasimsim
Segurança biométricasimsim
Banda ultralarga (UWB)simsim
Modo quiosque (modo de aplicativo único)simsim
Gerenciador de dispositivos móveissimsim
Suporte para Apple PencilNãosim

O que é Android?

Android É um sistema operacional móvel desenvolvido pelo Google (Alphabet) com base em uma versão modificada do kernel Linux e outros softwares de código aberto. Foi projetado principalmente para dispositivos touchscreen, como smartphones e tablets, embora também tenha sido instalado em muitos outros dispositivos, como decodificadores de TV, alguns laptops pequenos e assim por diante.

É desenvolvido pela Aliança de telefones abertos, um consórcio de desenvolvedores como o próprio Google, LG, SoftBank, Telefónica, HTC, Dell, Sony, Intel, Motorola, Qualcomm, Texas Instruments, Samsung Electronics, T-Mobile, NVIDIA, etc. Além disso, possui uma comunidade que também contribui ou cria seus próprios forks (Harmony OS da Huawei, Baidu, ColorOS, Replicant, /e/, Lineage OS, Fire OS da Amazon, OxygenOS da OnePlus, Remix OS, etc.). Foi lançado em novembro de 2007, e o primeiro dispositivo comercial, o HTC Dream, foi lançado em setembro de 2008.

O núcleo do sistema operacional é conhecido como Projeto de código aberto do Android (AOSP), que é um software livre e de código aberto, principalmente sob a Licença Apache. No entanto, a maioria dos dispositivos usa a versão proprietária desenvolvida pelo Google, que inclui software de código fechado, como Google Mobile Services (GMS) e que detalharei mais tarde.

O Android tem sido o sistema operacional mais usado no mundo desde 2011. Superando em muito o iOS/iPadOS no espaço móvel e também superando o Windows no desktop em muitos milhões de usuários.

A história do Android remonta a sua fundação em 2003, Com a intenção inicial de desenvolver um sistema operacional avançado para câmeras digitais, o Google mudou de foco e adquiriu o Android em 2005. Desde então, o sistema passou por diversas atualizações, adotando nomes de sobremesas em ordem alfabética, como você já deve saber...

Além da concorrência com o sistema da Apple, ele também enfrentou outros problemas, como ações judiciais de patentes da Microsoft, por exemplo, pelo uso de Sistema de arquivos FATNa verdade, a Microsoft ganhou mais dinheiro com isso do que com seu próprio sistema operacional Windows Phone, que acabou sendo um fracasso total.

Licenciamento e desenvolvimento

O Android é desenvolvido pelo Google até que as últimas alterações e atualizações estejam prontas para serem lançadas, momento em que o código-fonte é disponibilizado ao público. Projeto de código aberto Android (AOSP), liderada pelo Google como uma iniciativa de código aberto. O código AOSP é encontrado em dispositivos selecionados com modificações mínimas, principalmente para funcionar em hardwares específicos.

El O código-fonte do Android não inclui drivers de dispositivo, eles são adicionados por cada fabricante de dispositivo, geralmente proprietários, necessários para determinados componentes de hardware.

Quanto às licenças, é preciso dizer que o Android é principalmente de código aberto, sob licença GNU GPLv2 para o kernel Linux e licença Apache 2.0 para software de espaço de usuário. Além disso, ele possui componentes proprietários e freeware, como blobs binários ou drivers adicionados pelos fabricantes de dispositivos para garantir compatibilidade, ou como o GMS.

Núcleo ou kernel

O kernel do Android é baseado nos ramos de suporte de longo prazo (LTS) do kernel do linuxAté 2023, o Android usará as versões 4.14, 4.19, 5.4, 5.10 ou 5.15 do kernel Linux, adaptadas e frequentemente chamadas de android13-5.15 ou android-4.19-stable, dependendo do dispositivo específico. O kernel do Android possui mudanças arquitetônicas adicionais implementadas pelo Google fora do ciclo típico de desenvolvimento do kernel Linux.

Essas mudanças incluem a introdução de componentes como árvores de dispositivos, Ashmem, ION e vários manipuladores de falta de memória (OOM). Embora o Google tenha contribuído com certos recursos para o kernel Linux, como o recurso de gerenciamento de energia "wakelocks", algumas contribuições foram inicialmente rejeitadas pelos desenvolvedores do kernel principal devido a preocupações com a manutenção a longo prazo.

Como você deve saber, o kernel Linux é do tipo monolítico, capaz de carregamento dinâmico de módulos para funcionar de forma semelhante a um microkernel. Portanto, não é puro como sugerido em alguns documentos, mas evoluiu para se adaptar às mudanças dos tempos.

Muitos se perguntarão por que o Android não é uma distribuição GNU/Linux, e o motivo é que ele não usa o ecossistema GNU, mas é baseado apenas no Linux e, como substituto do GNU, integrou o shell mksh, um sistema de utilitários de núcleo nativo inspirado no NetBSD, e as bibliotecas Bionic libc, em vez da biblioteca GNU C (glibc).

Para quem não sabe Biônico, que é uma bifurcação da biblioteca padrão BSD C desenvolvida pelo Google para Android, isolando-a das licenças GPL e LGPL. Seu foco é ser menor e mais eficiente em termos de memória do que a glibc e a uClibc, sendo recomendada para desenvolvimento Android com o Native Development Kit (NDK). O Bionic possui limitações, como a ausência de tratamento de exceções em C++, a necessidade de incluir manualmente a Standard Template Library (STL) e a falta de suporte para conjuntos de caracteres estendidos. Ele também inclui funções específicas do Android em algumas chamadas de sistema e, desde o Android Jelly Bean MR1 (4.2), oferece suporte ao FORTIFY_SOURCE da glibc para evitar estouros de buffer.

Arquitetura suportada

Embora o kernel do Linux esteja disponível para uma infinidade de arquiteturas, o Android só foi portado até agora. para x86 e ARM. No entanto, também estão em curso trabalhos para trazer apoio para RISC-V.

Especificamente, desde que o Android foi lançado, o suporte foi dado para os primeiros dispositivos ARMv32 de 7 bits, bem como para versões mais modernas do ISA, como o novo ARMv8 ou ARMv9 de 64 bitsClaro, ele suporta IA-32 e AMD64 no lado x86. E, como eu disse, o suporte a RISC-V também está sendo adicionado, o que será muito interessante...

Sistema de arquivos FAT

O Android é compatível com vários sistemas de arquivos ou FS (Sistemas de Arquivos), como os seguintes:

  • FAT32 (Tabela de alocação de arquivos 32): É um sistema de arquivos compatível com uma ampla variedade de plataformas. Possui limitações quanto ao tamanho de arquivos e partições, tornando-o adequado para dispositivos com menor capacidade de armazenamento e necessidades básicas.
  • Ext3 (Terceiro Sistema de Arquivos Estendido): Um sistema de arquivos projetado para sistemas Linux. Ele oferece maior durabilidade e recuperação em comparação com seu antecessor, o Ext2, implementando o journaling.
  • Ext4 (Quarto Sistema de Arquivos Estendido): É a versão mais recente da série Ext para sistemas Linux. Oferece desempenho aprimorado e a capacidade de lidar com arquivos e partições maiores. Também mantém os recursos de journaling do Ext3.
  • exFAT (Tabela de alocação de arquivos estendida): Desenvolvido pela Microsoft, é um sistema de arquivos projetado para ser compatível com plataformas Windows e dispositivos de armazenamento removíveis. É comumente usado em cartões de memória e pen drives e supera as limitações de tamanho de arquivo do FAT32.

No entanto, a maioria dos dispositivos Android atuais usa FAT, especialmente exFAT. É por isso que a Microsoft está lucrando muito vendendo dispositivos Android usando essa tecnologia. Os demais sistemas de arquivos não são normalmente usados ​​em dispositivos móveis, mas são reservados especificamente para Androids x86.

Interface gráfica

projeto de material O Material Design é um conjunto de princípios e diretrizes de design desenvolvido pelo Google para criar interfaces visuais consistentes e envolventes em aplicativos e sites. Foi introduzido em 2014 e se concentra em criar uma experiência do usuário intuitiva e visualmente agradável. O Material Design se baseia na ideia de que a interface deve ter a mesma aparência e comportamento em todas as plataformas e dispositivos.

  Kobo Elipsa 2E vs Amazon Kindle Scribe: escolha o eReader que melhor combina com você.

A relação do Material Design com a GUI (Graphical User Interface) do Android é próxima, pois O Google adotou-o como abordagem de design padrão Para aplicativos no sistema operacional Android. O Material Design fornece diretrizes detalhadas sobre como estruturar a interface, como usar cores, tipografia, animações e elementos visuais para criar uma experiência coerente e envolvente para usuários do Android.

Serviços do Google Mobile

Google Mobile Services (GMS) Trata-se de uma coleção de aplicativos proprietários e serviços de interfaces de programação de aplicativos (APIs) do Google que normalmente vêm pré-instalados em dispositivos Android, incluindo smartphones, tablets, smartwatches e outros. É importante observar que o GMS não faz parte do Android Open Source Project (AOSP), o que significa que um fabricante Android deve obter uma licença do Google para instalar legalmente o GMS em um dispositivo Android.

Em relação a as aplicações fundamentais Os principais aplicativos que compõem o Google Mobile Services incluem a Pesquisa Google, o Google Chrome, o YouTube, o Google Play, o Google Drive, o Gmail, o Google Meet, o Google Maps, o Google Fotos, o Google TV e o YouTube Music. Esses aplicativos principais contribuem significativamente para a experiência do usuário em dispositivos Android e são parte integrante do ecossistema oferecido pelo Google em suas plataformas móveis.

Não fazendo parte do AOSP, Este MSG pode ser removido e substituí-lo por outros serviços similares de terceiros, é o que a Huawei fez com seu HMS após as sanções que impediram a marca chinesa de utilizá-los, ou também como tem sido feito em outros sistemas derivados, como o Amazon FireOS, que utiliza seu próprio sistema de serviços, ou como o sistema operacional /e/ que é baseado no LineageOS e utiliza os serviços de localização MicroG+Mozilla como substituto do GMS.

Aplicativos e loja de aplicativos

Para começar, a loja de aplicativos e videogames neste caso é Google Play, parte do Google Play Services integrado ao GMS. Nesta loja, você pode baixar e instalar todos os tipos de software disponíveis para a plataforma, além de verificar a segurança, atualizar e muito mais.

O Android é baseado no kernel Linux, como mencionei anteriormente, mas com middleware, bibliotecas e APIs escritas em C e aplicativos que rodam em uma estrutura de aplicativo que inclui Bibliotecas compatíveis com JavaA plataforma utiliza o Android Runtime (ART) como ambiente de execução, com compilação pré-instalação. Antes do ART, o Android utilizava Dalvik como uma máquina virtual compilada just-in-time (JIT). A biblioteca C padrão do Android, Bionic, foi projetada especificamente para Android, sendo mais leve que glibc e uClibc e otimizada para CPUs de baixa frequência.

O Google trocou a pilha Bluetooth do BlueZ para o BlueDroid em 2012 por questões de licenciamento. Além disso, o Android não possui o Sistema Operacional X Window nativamente nem oferece suporte ao conjunto completo de bibliotecas GNU. Nas versões atuais, ele usa Caixa de brinquedos, uma coleção de utilitários de linha de comando, e o Trusty OS, um sistema operacional dentro do Android, fornecem um ambiente de execução confiável para uma variedade de aplicativos, desde pagamentos móveis até detecção de malware.

Quanto a gerenciador de pacotesNeste caso, o próprio Google Play é usado como gerenciador de pacotes, embora você possa configurar as opções de segurança para aceitar pacotes de fontes de terceiros, por sua conta e risco. Além disso, outras lojas de aplicativos também podem ser instaladas com acesso root.

Os arquivos instaláveis ​​neste caso são .apk. Um arquivo APK (pacote Android) É o formato usado pelo sistema operacional Android, normalmente um arquivo do tipo JAR. Pode ser criado a partir de código-fonte Java ou Kotlin e contém todos os elementos de um programa, como código, recursos, certificados e o manifesto. Arquivos APK podem ser gerados e assinados a partir de Android App Bundles.

Raiz

Raiz Em dispositivos Android, refere-se à obtenção de acesso privilegiado ao sistema operacional e a partições sensíveis, como /system/, o equivalente a um jailbreak da Apple. Ao contrário das distribuições Linux típicas para desktop, os usuários de dispositivos Android não têm acesso root ao sistema operacional, e certas partições são parcialmente somente leitura.

No entanto, o acesso root pode ser obtido por explorar vulnerabilidades de segurança no Android ou desbloquear o bootloader. O desbloqueio do bootloader, disponível em muitos dispositivos Android, permite acesso root, mas apaga todos os dados do usuário no processo. Esse recurso é usado pela comunidade de código aberto para aprimorar os recursos e a personalização dos dispositivos, mas também pode ser explorado por agentes mal-intencionados para instalar vírus e malware.

Resumo das diferenças

ParâmetrosiOS / iPadOSAndroid
DesenvolvedorA Apple é a única responsável pelo desenvolvimento. A Open Handset Alliance (OHA) e o Google são responsáveis ​​pelo desenvolvimento.
lançamento inicial2007, especificamente em 29 de julho.2008, especificamente em 23 de setembro.
FamíliaSemelhante ao Unix (XNU – Darwin)Semelhante ao Unix (Linux)
Nome da primeira versãoiOS 1 / iPad OS 131.0 Android
Setores-alvoPara dispositivos móveis como o iPhone, os smartphones da Apple e os tablets iPad da empresa. Também estava disponível para tocadores iPod. Para uma ampla variedade de dispositivos, de celulares a smartphones e tablets, até caixas de TV, TVs inteligentes, pequenos laptops e muito mais.
DriversiOS e iPadOS são otimizados e drivers estão incluídos apenas para dispositivos Apple. O Android funciona em uma ampla gama de marcas e modelos, com hardware de diversas marcas, portanto, deve incluir estes drivers. É mais geral.
NúcleoiOS e iPadOS têm o núcleo XNU, como o macOS. Um núcleo híbridoO Android usa Linux e é monolítico com carregamento dinâmico de módulos.
licençaiOS/iPadOS usa licenças APSL e Proprietárias (EULA), dependendo da parte.O Android é licenciado sob a GNU GPLv2 e outras partes são licenciadas sob a Licença Apache.
Linguagens de programaçãoLinguagens como Objective-C, Swift, C e C++ são utilizadas para seu desenvolvimento.O Android usa Java, C e C++, embora outros componentes possam incluir outras linguagens também.
AtualizaçãoCom o gerenciador de atualizações OTACom o gerenciador de atualizações OTA
AplicativosOs aplicativos são desenvolvidos usando Swift.Os aplicativos são desenvolvidos em Kotlin e especialmente em Java.
Navegador da web padrãoSafáriChrome
Assistente de vozSiriAssistência do Google
SegurançaEle conta com um sistema de segurança próprio, e os aplicativos são filtrados antes de serem publicados na App Store para garantir que não sejam maliciosos. Além disso, possui um sistema de bloqueio de fontes de terceiros para segurança e um sistema de permissões. Ele é baseado no sistema de segurança SELinux, e os aplicativos são filtrados antes de serem publicados no Google Play para garantir que não sejam maliciosos. Além disso, possui um sistema de bloqueio de fontes de terceiros por questões de segurança e um sistema de permissões.
IdiomasDisponível em cerca de 24 idiomas diferentes.Disponível em mais de 100 idiomas diferentes.

iOS/iPadOS vs Android: vantagens e desvantagens de cada um

Com os detalhes técnicos mencionados acima, você agora deve ter uma ideia mais clara do vantagens e desvantagens de cada um. Mas para facilitar a escolha do sistema operacional certo, aqui estão alguns dos prós e contras mais notáveis ​​de cada um:

  • iOS / iPadOSProjetado para todos os tipos de usuários, é muito fácil de usar e intuitivo, além de seguro, estável e oferece um grande número de aplicativos. No entanto, mudar de uma plataforma para outra pode apresentar algumas dificuldades. Portanto, se você já usou o Android e não está insatisfeito com ele, migrar para o ecossistema da Apple exigirá alguns ajustes. Por outro lado, vale a pena observar o seguinte:
    • Vantagens:
      • Otimização: O iOS/iPadOS, projetado especificamente para dispositivos Apple, garante integração ideal entre software e hardware. Isso os torna dispositivos muito rápidos e eficientes.
      • Qualidade:Os aplicativos e hardware costumam ser de maior qualidade, além de terem um design mais exclusivo.
      • Segurança: A estrutura fechada e o controle rígido da App Store contribuem para um ambiente mais seguro em termos de malware e ameaças, possivelmente superando o Android, embora não seja invulnerável.
      • Ecossistema integrado: A integração perfeita com outros dispositivos Apple, como Mac, iPad, Apple Watch e serviços como o iCloud, permite uma experiência muito boa em comparação a ter um ecossistema heterogêneo, onde talvez nem tudo funcione tão bem.
    • Desvantagens:
      • Personalização limitada: A personalização do sistema e da interface do usuário é mais limitada em comparação com o Android. O jailbreak também é significativamente mais difícil.
      • Custo: Os dispositivos Apple costumam ser mais caros em comparação às opções equivalentes do Android.
      • Menor variedade de dispositivos: A Apple fabrica um número limitado de dispositivos, o que pode limitar as opções dos consumidores, enquanto o Android oferece mais opções.
  • AndroidProjetado para todos os tipos de usuários, muito fácil de usar e intuitivo, além de seguro, estável e com um grande número de aplicativos disponíveis, até mais que os da Apple. O mesmo se aplica se você já está acostumado com o ambiente Apple ou possui outros dispositivos Apple em casa; é melhor escolher iOS/iPadOS para maior facilidade e integração. Além disso, vale destacar os seguintes:
    • Vantagens:
      • Variedade de dispositivos: O Android está disponível em uma ampla variedade de dispositivos de diversos fabricantes, oferecendo opções para diferentes orçamentos e preferências.
      • Personalização avançada: Os usuários têm maior liberdade para personalizar a interface e ajustar as configurações de acordo com suas preferências. Além disso, você encontrará aplicativos como inicializadores e muitos outros recursos que não exigem root para funcionar corretamente.
      • Código aberto: Por ser de código aberto, ele pode transmitir mais confiança e você ainda tem ROMs com o kernel livre de blobs binários, versões com melhorias de segurança e privacidade, sem GMS, etc.
      • Serviços do Google: A Apple não oferece tanta variedade de serviços quanto o Google, e alguns foram derrotados, como o Maps em comparação ao Google Maps. Por exemplo, nesses dispositivos, você encontrará integração com Gmail, GDrive, YouTube, Maps, Chrome, GBoard, Lens, Play Música, Fotos, etc. por padrão.
    • Desvantagens:
      • Fragmentação: A fragmentação do sistema operacional pode levar a uma experiência inconsistente para o usuário, já que os fabricantes lançam atualizações em seu próprio ritmo. No entanto, grandes marcas de dispositivos móveis, como Google, Samsung e outras, não estão enfrentando problemas.
      • Segurança variável: Devido à diversidade de dispositivos e fabricantes, a segurança pode variar, especialmente em dispositivos mais antigos ou de baixo custo.
      • Otimização menor: Como ele precisa funcionar em uma variedade de dispositivos diferentes, ele não é otimizado para nenhum dispositivo específico, o que pode levar a uma dispersão de funções que não funcionam em todos eles.

Claro, você já sabe que a escolha entre iOS e Android dependerá das preferências individuais do usuário e de fatores como orçamento, personalização desejada e preferência por um ecossistema específico…