C++ SDK をインストールする
Atlas Device SDK for C++ を使用すると、C++ で記述されたクライアント アプリケーションがデバイスに保存されているデータにアクセスし、Atlas とデータを同期できるようになります。 このページでは、プロジェクトに C++ SDK をインストールし、開始する方法について詳しく説明します。
要件
最小 C++ 標準: C++17。
macOS での開発: Xcode 11.x 以降。
Windows での開発: Microsoft Visual C++(MSVC)。
それ以外の場合は、git と CMax を推奨します 。
インストール
Tip
Atlas Device SDK と Realm
SDKは、デバイス データの永続化に Realm Core データベースを使用します。 C++ SDK をインストールすると、パッケージ名には Realm の命名が反映されます。
Xcode で開発する場合、Swift パッケージ マネージャー(SPM)を使用して Realm-cpp をインストールできます。
FetchContent モジュールで Cake を使用すると、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
などの GitHub ディレクトリで Cake を実行し、アプリをコンパイルするために使用できるビルド構成を生成します。
# 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
-G
フラグを使用すると、CSpec で単純なビルド用ファイルを超える生成ファイルを生成できます。 CSpec のドキュメント を参照してください 詳しくは、 を参照してください。
使用法
ヘッダーを含める
C++ SDK を使用する変換ユニットにcpprealm/sdk.hpp
ヘッダーを含めて、コード内で C++ SDK を使用できるようにします。
Android アプリを作成する
C++ SDK は Android アプリの構築をサポートしています。 Android アプリを作成するには次の手順に従います。
<uses-permission android:name="android.permission.INTERNET" />
に追加するAndroidManifest.xml
C++ SDK のサブディレクトリをネイティブ ライブラリの
CMakeLists.txt
に追加し、ターゲット ライブラリとしてリンクします。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 アプリをインスタンス化する場合は、それぞれのコンストラクターまたはデータベース オープン テンプレートで
path
パラメーターとしてfilesDir.path
を渡す必要があります。
Android アプリで を使用する方法の例については、「C++ SDK Android Realm サンプルアプリ 」を参照してください (realm-cpp
Github リポジトリ内)。
MainActivity.kt
native-lib.cpp
具体的には、コード例については、Android サンプルアプリの ファイルと ファイルを参照してください。