Notarização no macOS: alterações à estrutura de componentes

O processo de notarização macOS continua a evoluir. Infelizmente, a estrutura interna dos componentes 4D desenhados com 4D v11-intencionado para permitir compatibilidade entre plataformas-não mais cumpre com os requerimentos introduzidos pela Apple para Macs baseados em Silicon, fazendo com que notarizar componentes seja cada vez mais desafiador.

Para simplificar o processo de implementação, atualizamos a estrutura de componentes começando com 4D 20 R8. Essa nova estrutura de pastas faz com que a notarização e a implementação sejam tão simples quanto a implementação de uma aplicação. No entanto, há uma advertência importante: a estrutura atualizada não é compatível com versões mais antigas de 4D (por exemplo, 4D 20 R7 e anteriores), enquanto componentes mais antigos permanecerão compatíveis com versões mais recentes de 4D.

O componente Build4D também foi atualizado para refletir a nova estrutura. Ao construir componentes, seja cauteloso e assegure-se de que está a usar a versão correta de Build4D.

Lembrete importante: Componentes construídos com 4D 20 R7 ou anterior podem encontrar erros durante a notarização. A solução recomendada é atualizar para 4D 20 R8.

A lista detalhada das mudanças na estrutura do componente:

Todos os arquivos de componentes estão agora dentro de uma pasta Contents.
O arquivo info.plist é agora adicionado ao construir um componente.
Alguns campos são automaticamente definidos por 4D no momento da construção, pegando seu conteúdo do buildApp.4DSettings:

  • CFBundleDisplayName e CFBundleName serão definidos com o nome da aplicação
  • CFBundleShortVersionString e CFBundleVersion terão o valor de Versioning / Common / CommonVersion
  • NSHumanReadableCopyright assumirá o valor de Versioning / Common / CommonCopyright

 

Para os componentes construídos com o componente Build4D, estes arquivos assumirão estes valores:

  • CFBundleDisplayName e CFBundleName serão definidos com o nome da aplicação
  • Pode ser definido um copyright, que preencherá o campo NSHumanReadableCopyright
  • CFBundleShortVersionString e CFBundleVersion serão definidos com a versão da aplicação (no formato x.x.x)

 

Se quiser saber mais sobre a autenticação notarial, pode ler esta publicação do blogue que lhe explicará tudo.

Se tem alguma pergunta ou precisa de mais assistência, por favor pergunte no fórum 4D. Estamos aqui para ajudar a fazer esta transição o mais suave possível.

Nicolas Brachfogel
• Proprietário do produto e Desenvolvedor Senior -Nicolas Brachfogel entrou a 4D em 2017 como Senior Developer (4D Server e Networking). Como Product Owner para gerenciar o lançamento de Apple Silicon, está a cargo de escrever as histórias dos usuários e depois traduzi-las em especificações funcionais, além de garantir que as implementações de funcionalidade cumpram com as necessidades do cliente. Diplomado pelo Instituto Superior de Informática Aplicada (INSIA), Nicolas começou sua carreira como desenvolvedor de software em 2001. Depois de vários anos codificando em Java e C++, passou a especializar-se no desenvolvimento cliente-servidor para empresas de videogames. Como desenvolvedor/arquiteto de servidores, trabalhou com sucesso nas arquiteturas de servidores de muitos jogos (Dofus Arena, Drakerz, Trivial Pursuit Go!)