Episódio 28:por Mark Cogan em Paris, França (janeiro de 2022)
Episódios anteriores
Em 2022, o Chrome no iOS vai comemorar o 10o aniversário. O Google Chrome é um dos aplicativos para iOS mais utilizados. Atualmente é o segundo aplicativo de utilitários na App Store dos EUA.
O Chrome no iOS oferece todos os excelentes recursos do Chrome que nossos usuários adoram, incluindo sincronização, tradução, navegação anônima, Gerenciador de senhas, preenchimento automático e muito mais. O Chrome no iOS também se integra a recursos nativos do iOS, como o preenchimento automático de senhas em todo o dispositivo e várias janelas.
No entanto, uma coisa importante torna o Chrome no iOS muito diferente de todas as outras implementações da plataforma Chrome.
O Chrome no iOS não usa o Blink.
Por causa das regras da App Store da Apple, o Chrome no iOS precisa usar as APIs da plataforma iOS para buscar e renderizar conteúdo da Web. Por isso, o Chrome no iOS usa o WebKit, Nitro e CFNetwork quando outras plataformas do Chrome usam Blink, V8 e //net
. Por isso, e à API limitada disponível para apps iOS interagirem com o conteúdo de páginas da Web, muitos recursos do Chrome que usam as APIs //content
são implementados no Chrome no iOS usando a injeção de JavaScript.
Os recursos multiplataforma no //components
são estruturados para compartilhar o máximo de código possível em todas as plataformas, mantendo as dependências do //content
isoladas:
ls components/some_component
content/ # code with dependencies on //content.
core/ # cross-platform code with no //content dependencies.
ios/ # iOS implementation using JavaScript injection.
Outras diferenças importantes entre o Chrome no iOS e outras plataformas incluem:
- Como os apps iOS precisam ter processo único, o Chrome no iOS não pode
fork()
. - O Chrome no iOS é escrito em Objective-C++ (uma combinação de C++ e Objective-C) e um pouco de Swift.
- Embora seja possível compilar e executar o Chrome no iOS diretamente em um dispositivo iOS, você também pode desenvolver muitos recursos no simulador de dispositivos muito eficiente oferecido pela Apple.
Começar a usar o Chrome no iOS
Você precisará dos seguintes itens:
- Um computador macOS de 64 bits com o macOS 11.3 ou mais recente. O Apple Silicon é compatível.
- Xcode, o ambiente de desenvolvimento integrado para plataformas Apple, versão 13.0 ou mais recente.
- A versão atual do JDK.
Consulte as instruções de build para mais informações.
A busca da origem é muito parecida com outras plataformas:
mkdir ${HOME}/chromium-ios
cd ${HOME}/chromium-ios
fetch ios
Depois disso, você pode criar a partir da linha de comando (ou do Xcode):
autoninja -C out/Debug-iphonesimulator chrome
Saiba mais sobre o desenvolvimento de recursos do Chrome no iOS
Recomendamos que você consulte o Guia de estilo do Chromium. Leia a documentação do desenvolvedor da Apple para saber mais sobre Swift, xCode e outros recursos específicos do iOS.
Se você normalmente é um desenvolvedor iOS e não tem experiência com o Chromium, consulte a documentação sobre abstrações importantes e estruturas de dados.