Instalar o C++ SDK
O Atlas Device SDK for C++ permite que aplicativos de clientes escritos em C++ acessem dados armazenados em dispositivos e sincronizem dados com o Atlas. Esta página detalha como instalar o C++ SDK no seu projeto e como começar.
Requisitos
Padrão mínimo C++: C++17.
Para desenvolvimento no macOS: Xcode 11.x ou posterior.
Para desenvolvimento no Windows: Microsoft Visual C++ (MSVC).
Caso contrário, recomendamos git e CMake.
Instalar
Dica
Atlas Device SDK e Realm
O SDK usa o reconhecimento de data center Realm Core para persistência de dados do dispositivo. Quando você instala o C++ SDK, os nomes dos pacotes refletem a nomenclatura do Realm.
Ao desenvolver com o Xcode, você pode usar o Swift pacote Manager (SPM) para instalar o Realm-cpp.
Você pode usar o CMake com o módulo FetchContent para gerenciar o SDK e suas dependências em seu projeto C++ .
Crie ou modifique seu CMakeLists.txt
no diretório raiz do seu projeto:
Adicione
Include(FetchContent)
para incluir o módulo FetchContent na compilação do seu projeto.Use
FetchContent_Declare
para localizar a dependência do SDK e especificar a marcação de versão que você deseja usar.Use o comando
FetchContent_MakeAvailable()
para verificar se as dependências nomeadas foram preenchidas e, se não forem, preencha-as.Por fim,
target_link_libraries()
vincula a dependência do SDK ao seu executável de destino.
Para obter a marcação de versão mais recente, consulte as versões no Github: realm/realm-cpp.
Defina o padrão mínimo de C++ para 17 com set(CMAKE_CXX_STANDARD 17)
.
Em uma instalação do Windows, adicione os sinalizadores de compilador necessários listados abaixo.
cmake_minimum_required(VERSION 3.15) project(MyDeviceSDKCppProject) # Minimum C++ standard set(CMAKE_CXX_STANDARD 17) # In a Windows install, set these compiler flags: if(MSVC) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Zc:preprocessor /bigobj") endif() # Include the FetchContent module so you can download the C++ SDK Include(FetchContent) # Declare the version of the C++ SDK you want to download FetchContent_Declare( cpprealm GIT_REPOSITORY https://github.com/realm/realm-cpp.git GIT_TAG v1.0.0 ) # The MakeAvailable command ensures the named dependencies have been populated FetchContent_MakeAvailable(cpprealm) # Create an executable target called myApp with the source file main.cpp add_executable(myApp main.cpp) target_link_libraries(myApp PRIVATE cpprealm)
Execute o CMake em um diretório gitignored, como build
, para gerar as configurações de compilação que você pode usar para compilar seu aplicativo:
# build/ is in .gitignore mkdir build cd build cmake .. # Create Makefile by reading the CMakeLists.txt in the parent directory (../) make # Actually build the app
Você pode usar o CMake para gerar mais do que simples arquivos Makefiles usando o sinalizador -G
. Consulte a documentação do CMake para mais informações.
Uso
Incluir o cabeçalho
Disponibilize o C++ SDK em seu código incluindo o cabeçalho cpprealm/sdk.hpp
na unidade de tradução onde você deseja usá-lo:
Construir um aplicativo Android
O C++ SDK oferece suporte à criação de aplicativos Android. Para construir um aplicativo Android:
Adicionar
<uses-permission android:name="android.permission.INTERNET" />
ao seuAndroidManifest.xml
Adicione o subdiretório do C++ SDK ao
CMakeLists.txt
da sua biblioteca nativa e vincule-a como uma biblioteca de destino:set(CMAKE_CXX_STANDARD 17) add_subdirectory("realm-cpp") ... target_link_libraries( # Specifies the target library. myapplication # make sure to link the C++ SDK. cpprealm ) Certifique-se de que os submódulos git sejam inicializados dentro da pasta
realm-cpp
antes de construir.Ao instanciar o reconhecimento de data center ou o aplicativo SDK, você deve passar o
filesDir.path
como o parâmetropath
no respectivo construtor ou modelo aberto do reconhecimento de data center.
Para obter um exemplo de como usar o C++ SDK em um aplicativo Android, consulte o Aplicativo RealmExemplo para Android no realm-cpp
Github repositório do .
Especificamente, consulte os arquivos MainActivity.kt
e native-lib.cpp
no aplicativo de exemplo do Android para obter exemplos de código.