以下部分介绍了如何将 Tuning Fork 库集成到工具链中,以及如何使用该库提供的函数。该库作为 AGDK 库中的静态或共享库提供。
将 SDK 下载到您的机器并将其签入源代码控制系统后,请对项目的构建设置作出以下部分中列出的更改。
准备工作
在集成 Tuning Fork 库之前,您应该集成 Android Frame Pacing 库。由此,Tuning Fork 库可以自动记录帧时间;您无需显式调用 tick 函数。
请参阅以下集成指南以了解更多信息:
静态库
如需将您的项目与静态库关联,请执行以下操作:
- 将
gamesdk/include
添加到您的编译器包含路径。 在链接器库路径中添加以下形式的路径:
gamesdk/libs/architecture_APIapiLevel_NDKndkVersion_stlVersion_Release
在
gamesdk/libs
中查找并选择最适合工具链的那一个(例如,gamesdk/libs/arm64-v8a_API24_NDK17_cpp_static_Release
)。将
-ltuningfork_static
添加到链接器命令(如果您集成了 Android Frame Pacing 库,则添加-lswappy_static
)。将
INTERNET
权限添加到AndroidManifest.xml
文件:<uses-permission android:name="android.permission.INTERNET" />
共享库
使用静态库部分中的步骤静态链接到为给定 ABI、API 级别、NDK 和 STL 组合而编译的 Tuning Fork 库版本。如果设置不支持此类组合,您可以改为链接到共享库:
- 将
gamesdk/include
添加到您的编译器包含路径。 在链接器库路径中添加以下形式的路径:
gamesdk/libs/architecture_APIapiLevel_NDKndkVersion_stlVersion_Release/lib/tuningfork
将
-ltuningfork
添加到链接器命令(如果您集成了 Android Frame Pacing 库,则添加-lswappy
)。将
INTERNET
权限添加到AndroidManifest.xml
文件:<uses-permission android:name="android.permission.INTERNET" />
静态链接可以大大缩减代码占用空间,因为您无需捆绑 libtuningfork.so
共享库。
使用 CMake(仅限静态库)
如果您使用的是 CMake,请参阅 gamesdk/samples/tuningfork/insightsdemo/app/CMakeLists.txt
文件以获取 CMake 配置示例。它包含一个实用程序文件 gamesdk/samples/gamesdk.cmake
,用于执行最终检查、添加适当的编译器包含路径,以及生成可用于关联库的目标。
如需使用该实用程序,请执行以下操作:
- 将此文件添加至
CMakeLists.txt
文件:include("path/to/gamesdk/samples/gamesdk.cmake")
- 针对包含 gamesdk 的文件夹调用
add_gamesdk_target
函数:add_gamesdk_target(PACKAGE_DIR path/to/gamesdk)
- 在原生库的
target_link_libraries
中,添加tuningfork
作为依赖项(如果您集成了 Android Frame Pacing 库,则添加swappy
):target_link_libraries(native-lib swappy tuningfork ...)
如需查看 CMake 的高级用法,请参阅 gamesdk.cmake
源文件。