Ano novo, regras novas: a Apple publicou agora há pouco duas mudanças importantes para desenvolvedores que criam aplicativos para macOS — incluindo aqueles distribuídos fora da Mac App Store — e iOS. Vamos dar uma olhada nelas, portanto.
Notarização
A Maçã já tinha anunciado na última WWDC que, a partir do macOS Catalina, aplicativos distribuídos fora da Mac App Store precisariam passar por um processo chamado de notarização — que é, em termos básicos, uma “revisão” feita pela própria Apple para certificar que o software está de acordo com os termos e as normas de segurança do sistema.
Originalmente, a obrigação começaria a valer já com a chegada do Catalina em si; a Apple, entretanto, resolveu adiar a mudança para tornar a transição mais suave e não prejudicar usuários de softwares mais antigos. Agora, já temos uma data marcada para a mudança da chave: 3 de fevereiro de 2020.
A exigência pela notarização não é algo novo: a Apple já vem incentivando o processo desde o macOS Mojave. Você certamente já se deparou com ela, ao tentar instalar um app no seu Mac e receber um aviso afirmando que “este aplicativo foi baixado da internet” e perguntando se você realmente quer instalá-lo; a diferença é que, a partir de fevereiro do ano que vem, esses avisos se transformarão em erros e os apps em questão não mais poderão ser instalados. [Atualização: fizemos uma errata, abaixo.]
A Apple recomenda que desenvolvedores enviem seus aplicativos ao serviço de notarização o quanto antes e revisem os avisos no registro de desenvolvimento; são esses pontos que devem ser corrigidos até o dia 3/2 para que os apps sejam devidamente notariados e continuem rodando normalmente no macOS. Essa página contém mais informações sobre o processo de notarização.
Vale notar que os aplicativos distribuídos por meio de pacotes de instalação, que contém códigos executáveis, precisam ser notarizados. Aplicativos distribuídos em imagens de disco (como .dmg
) não necessariamente precisam das assinaturas, mas elas ainda assim são encorajadas para que os usuários possam verificar a confiabilidade dos arquivos sem dificuldades.
UIWebView
Além disso, a Apple deu um ultimato à API1Application programming interface, ou interface de programação de aplicações. UIWebView, utilizada por desenvolvedores para exibir conteúdo interativo da internet (como um navegador interno) em seus apps. A Maçã já desencorajava o uso dele desde o iOS 8, mas agora passará a de fato proibi-lo: a partir de abril de 2020, a App Store não mais aceitará novos apps que utilizem a API; em dezembro, não serão mais aceitas atualizações que o implementem.
A Apple orienta que desenvolvedores façam a troca do UIWebView para o novo padrão WKWebView, que traz doses muito maiores de confiabilidade e segurança — o novo padrão é suportado nas versões mais novas do iOS, do macOS e do Mac Catalyst, e garante que conteúdo inseguro da web não comprometerá o restante do app ao limitar a ação do browser.
Todos anotando?
Errata 30/12/2019 às 14:15
Como apontado por alguns leitores nos comentários, os apps “não-notarizados” continuarão podendo ser instalados, mas o usuário precisará alterar manualmente uma opção no macOS, na área “Segurança e Privacidade” das Preferências do Sistema, para que isso aconteça.
Notas de rodapé
- 1Application programming interface, ou interface de programação de aplicações.