Instale o SDK para iOS, macOS, tvOS e watchOS
Nesta página
Visão geral
O Atlas Device SDK para Swift permite que você crie aplicações para iOS, macOS, tvOS e watchOS usando linguagens de programação Swift ou Objective-C. Esta página detalha como instalar o SDK no seu projeto e como começar.
Pré-requisitos
Antes de começar, certifique-se de que seu ambiente de desenvolvimento atenda aos seguintes pré-requisitos:
Seu projeto usa uma versão do Xcode e uma versão mínima do sistema operacional listadas na seção Suporte do sistema operacional desta página.
A reflexão está habilitada no seu projeto. O Swift SDK usa reflexão para determinar as propriedades do modelo. Seu projeto não pode definir
SWIFT_REFLECTION_METADATA_LEVEL = none
, ou o SDK não pode visualizar propriedades em seu modelo. O reflexo será habilitado por padrão se o projeto não definir especificamente um nível para essa configuração.
Instalação
Você pode usar SwiftPM
, CocoaPods
ou Carthage
para adicionar o Swift SDK ao seu projeto.
Dica
Atlas Device SDK e Realm
O SDK usa o banco de dados do Realm Core para persistência de dados do dispositivo. Quando você instala o Swift SDK, os nomes dos pacotes refletem o nome do Realm.
Especifique as opções
Nas opções do realm-swift
pacote , recomendamos configurar Dependency Rule
Up to Next Major Version
como e inserir a versão atual do Realm Swift SDK . Em seguida, clique em Add Package
.
(Opcional) Crie o RealmSwift como uma estrutura dinâmica
Para usar o manifesto de privacidade fornecido pelo SDK, crie RealmSwift
como uma estrutura dinâmica. Se você construir o RealmSwift
como uma estrutura estática, você deverá fornecer seu próprio Manifesto de Privacidade.
Para construir o RealmSwift
como uma estrutura dinâmica:
Em seu projeto Targets, selecione seu destino de construção.
Acesse a aba General.
Expanda o elemento Frameworks and Libraries .
Para o framework
RealmSwift
, altere a opção Embed de "Não incorporar" para "Incorporar e assinar".
Agora, o Xcode compila RealmSwift
dinamicamente e pode fornecer o manifesto de privacidade fornecido pelo SDK.
Se você estiver instalando com CocoaPods, você precisa de CocoaPods 1.10.1 ou mais tarde.
Adicione o SDK como uma dependência em seu Podfile
Adicione a linha pod 'Realm', '~>10'
aos seus destinos principais e de teste.
Adicione a linha use_frameworks!
também, se ela ainda não estiver lá.
Quando terminar, seu Podfile deverá ter a seguinte aparência:
# Uncomment the next line to define a global platform for your project # platform :ios, '11.0' target 'MyDeviceSDKProject' do # Comment the next line if you don't want to use dynamic frameworks use_frameworks! # Pods for MyDeviceSDKProject pod 'Realm', '~>10' target 'MyRealmProjectTests' do inherit! :search_paths # Pods for testing pod 'Realm', '~>10' end end
Adicione a linha use_frameworks!
se ainda não estiver lá.
Adicione a linha pod 'RealmSwift', '~>10'
aos seus destinos principais e de teste.
Quando terminar, seu Podfile deverá ter a seguinte aparência:
platform :ios, '12.0' target 'MyDeviceSDKProject' do # Comment the next line if you don't want to use dynamic frameworks use_frameworks! # Pods for MyDeviceSDKProject pod 'RealmSwift', '~>10' end
Se você estiver instalando com o Carthage, você precisa de Cartago 0.33 ou posterior.
Adicione o SDK como uma dependência em seu Chartfile
Adicione o SDK como uma dependência anexando a linha github
"realm/realm-swift"
ao seu Chartfile.
Você pode criar um Chartfile ou anexar a um existente executando o seguinte comando no diretório do projeto :
echo 'github "realm/realm-swift"' >> Cartfile
Adicione as estruturas ao seu projeto
Carthage coloca as dependências construídas no diretório Carthage/Build
.
Abra o arquivo xcodeproj
do seu projeto no Xcode. Go até o painel Navegador de projeto e clique no nome do seu aplicativo para abrir o editor de configurações do projeto. Selecione a guia General .
No Finder, abra o diretório Carthage/Build/
. Arraste os arquivos RealmSwift.xcframework
e Realm.xcframework
encontrados neste diretório para a seção Frameworks,
Libraries, and Embedded Content das configurações do General do seu projeto.
Baixe e extraia a estrutura
Baixe a versão mais recente do Swift SDK e extraia o zip.
Dica
Se estiver usando a API do Objective-C em um projeto Swift, recomendamos que você inclua o Realm Swift e o Realm Objective-C em seu projeto. Dentro de seus arquivos Swift, você pode acessar a API Swift e todos os wrappers necessários. O uso da API RealmSwift em projetos mistos Swift/Objective-C é possível porque a grande maioria dos tipos RealmSwift é diretamente derivada de suas contrapartes Objective-C.
Importar o SDK
Dica
Atlas Device SDK e Realm
O SDK usa o banco de dados do Realm Core para persistência de dados do dispositivo. Ao importar o Swift SDK, os nomes dos pacotes refletem o nome do Realm.
Adicione a seguinte linha na parte superior dos seus arquivos de origem para usar o SDK:
import RealmSwift
Tamanho do arquivo de download do aplicativo
O SDK deve adicionar apenas cerca de 5 a 8 MB ao tamanho de download do seu aplicativo. Os lançamentos que distribuímos são significativamente maiores porque incluem suporte para os simuladores iOS, watchOS e tvOS, alguns símbolos de depuração e bitcode, todos os quais são removidos pela App Store automaticamente quando os aplicativos são baixados.
Solução de problemas
Se você tiver problemas de construção após usar um desses métodos para instalar o SDK, consulte nossas diretrizes de solução de problemas para saber mais sobre como resolver esses problemas.
Suporte ao sistema operacional
Importante
Há considerações especiais ao usar o SDK com tvOS. Consulte Construir para tvOS para obter mais informações.
Xcode 15
Alterado na versão 10.50.0: A versão mínima necessária do Xcode é 15.1
Sistema operacional compatível | Realm | Serviços Atlas App |
---|---|---|
iOS 12.0+ | X | X |
macOS 10.14+ | X | X |
tvOS 12.0+ | X | X |
watchOS 4,0+ | X | |
visionOS 1.0+ | X | X |
Xcode 14
Alterado na versão 10.50.0: Suporte removido para Xcode 14.
Swift SDK versão 10.50.0 elimina o suporte para o Xcode 14. Para10.49.3 e anterior, aplicam-se os seguintes requisitos do Xcode 14 :
Xcode versão 14.1 ou superior.
Ao usar o Xcode 14, um alvo de iOS 11.0 ou superior, macOS 10.13 ou superior, tvOS 11.0 ou superior ou watchOS 4.0 ou superior.
Suporte à simultaneidade do Swift
O Swift SDK oferece suporte às funcionalidades de linguagem relacionadas à simultaneidade do Swift. Para obter as melhores práticas sobre o uso das funcionalidades de simultaneidade do Swift SDK, consulte a documentação abaixo.
Suporte a Async/Await
A partir das versões 10.15.0 e 10.16.0 do SDK do Realm Swift, muitas das APIs do Realm suportam a sintaxe async/await do Swift. Os projetos devem atender a estes requisitos:
Versão do Swift SDK | Requisito de versão do Swift | Sistema operacional compatível |
---|---|---|
10.25.0 | Swift 5.6 | iOS 13.x |
10.15.0 ou 10.16.0 | Swift 5.5 | iOS 15.x |
Se a sua aplicação acessar Realm em um contexto do async/await
, marque o código com @MainActor
para evitar falhas relacionadas a threading.
Para obter mais informações sobre o suporte do async/await no Swift SDK, consulte Suift Concurrency: Async/Await APIs.
Apoio ao ator
O Swift SDK oferece suporte a instâncias de domínio isoladas por ator. Para obter mais informações, consulte Usar Realm com atores - Swift SDK.
Manifesto de privacidade da Apple
Alterado na versão 10.49.3: Crie o RealmSwift como uma estrutura dinâmica para incluir o manifesto de privacidade.
A Apple exige que os aplicativos que usam o RealmSwift
forneçam um manifesto de privacidade contendo detalhes sobre a coleta de dados e práticas de uso do SDK. O arquivo de manifesto agrupado deve ser incluído ao enviar novos aplicativos ou atualizações de aplicativos para a App Store. Para obter mais detalhes sobre os requisitos da Apple, consulte Próximos requisitos de SDK de terceiros no site da Apple Developer.
A partir da versão 10.46.0 do SDK Swift, o SDK é fornecido com manifestos de privacidade para Realm
e RealmSwift
. Cada pacote contém seu próprio manifesto de privacidade com as divulgações de API exigidas pela Apple e os motivos para o uso dessas API.
Você pode visualizar os manifestos de privacidade em cada pacote ou no repositório realm-swift
do Github :
Realm
: https://github.com/realm/realm-swift/blob/master/Realm/PrivacyInfo.xcprivacyRealmSwift
: https://github.com/realm/realm-swift/blob/master/RealmSwift/PrivacyInfo.xcprivacy
Para incluir estes manifestos em um destino de compilação que utiliza RealmSwift
, você deve construir RealmSwift
como uma estrutura dinâmica. Para obter detalhes, consulte a etapa de instruções de instalação do Swift Package Manager (Opcional) Construir RealmSwift como uma estrutura dinâmica.
O Swift SDK não inclui código analítico em compilações para a App Store. O SDK não faz login no Atlas em seu próprio nome.
Se você escrever uma aplicação que usa qualquer funcionalidade dos App Services, como inicializar um cliente de aplicação para:
Talvez seja necessário adicionar divulgações adicionais ao manifesto de privacidade da aplicação, detalhando sua collection de dados e práticas de uso ao usar essas APIs.
Para obter mais informações, consulte a Documentação dos arquivos de manifesto de privacidade da Apple.