C++ SDK 설치
이 페이지의 내용
C++용 Atlas Device SDK를 사용하면 C++로 작성된 클라이언트 애플리케이션이 디바이스에 저장된 데이터에 액세스하고 데이터를 Atlas와 동기화할 수 있습니다. 이 페이지에서는 프로젝트에 C++ SDK를 설치하고 시작하는 방법을 자세히 설명합니다.
요구 사항:
최소 C++ 표준: C++17.
macOS에서 개발하는 경우: Xcode 11.x 이상.
Windows 개발: Microsoft Visual C++(MSVC).
그렇지 않은 경우에는 git 및 CMake 를 권장합니다. .
설치
팁
Atlas Device SDK 및 Realm
SDK는 기기 데이터 지속성을 위해 Realm Core 데이터베이스를 사용합니다. C++ SDK를 설치하면 패키지 이름에 Realm 이름이 반영됩니다.
Xcode로 개발할 때는 Swift 패키지 Manager(SPM)를 사용하여 영역-cpp를 설치할 수 있습니다.
FetchContent 모듈과 함께 CMake를 사용하여 C++ 프로젝트 에서 SDK 및 해당 종속성을 관리 있습니다.
프로젝트 의 루트 디렉토리 에서 CMakeLists.txt
를 만들거나 수정합니다.
프로젝트 빌드에 FetchContent 모듈을 포함하려면
Include(FetchContent)
를 추가합니다.FetchContent_Declare
를 사용하여 SDK 종속성을 찾고 사용하려는 버전 태그를 지정하다 를 지정합니다.FetchContent_MakeAvailable()
명령을 사용하여 명명된 종속성이 채워졌는지 확인하고, 그렇지 않은 경우에는 종속성을 채웁니다.마지막으로
target_link_libraries()
은 SDK 종속성을 대상 실행 파일에 연결합니다.
최신 버전 태그를 얻으려면 의 릴리스(Github realm/realm-cpp)를 참조하세요.
set(CMAKE_CXX_STANDARD 17)
을 사용하여 최소 C++ 표준을 17 로 설정합니다.
Windows 설치의 경우 아래 나열된 필수 컴파일러 플래그를 추가합니다.
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)
build
과 같이 gitignored 디렉토리 에서 CMake를 실행하여 앱 을 컴파일하는 데 사용할 수 있는 빌드 구성을 생성합니다.
# 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
CMake를 사용하면 -G
플래그를 사용하여 간단한 Makefile보다 더 많은 것을 생성할 수 있습니다. CMake 문서 참조 을(를) 참조하세요.
사용법
헤더 포함
사용하려는 번역 단위에 cpprealm/sdk.hpp
헤더를 포함하여 코드에서 C++ SDK를 사용할 수 있도록 합니다.
Android 앱 빌드
C++ SDK는 Android 앱 빌드를 지원합니다. Android 앱을 빌드하려면 다음을 수행합니다.
AndroidManifest.xml
에<uses-permission android:name="android.permission.INTERNET" />
추가네이티브 라이브러리의
CMakeLists.txt
에 C++ SDK의 하위 디렉토리를 추가하고 이를 대상 라이브러리로 연결합니다.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 ) 빌드하기 전에 git 하위 모듈이
realm-cpp
폴더 내에서 초기화되었는지 확인하세요.데이터베이스 또는 SDK 앱을 인스턴스화할 때 해당 생성자 또는 데이터베이스 열기 템플릿에서
filesDir.path
을path
매개 변수로 전달해야 합니다.
Android 앱에서 를 사용하는 방법의 예시 는 Android C++ SDK RealmExample 앱 앱 realm-cpp
Github 참조하세요. 리포지토리 에 있습니다.
특히 코드 예제는 Android 예제 앱의 MainActivity.kt
& native-lib.cpp
파일을 참조하세요.