با مجموعهها، منظم بمانید
ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
بخشهای زیر نحوه ادغام کتابخانه Tuning Fork در زنجیره ابزار و نحوه استفاده از توابع ارائه شده توسط کتابخانه را توضیح میدهند. این کتابخانه به صورت یک کتابخانه ثابت یا اشتراکی در کتابخانه های AGDK موجود است.
پس از اینکه SDK را در دستگاه خود دانلود کردید و آن را در سیستم کنترل منبع خود بررسی کردید، تغییرات فهرست شده در بخش های زیر را در تنظیمات ساخت پروژه خود اعمال کنید.
قبل از شروع
قبل از ادغام کتابخانه Tuning Fork باید کتابخانه Android Frame Pacing را ادغام کنید. اگر این کار را انجام دهید، کتابخانه Tuning Fork می تواند به طور خودکار زمان فریم را ضبط کند. نیازی به فراخوانی صریح توابع تیک وجود ندارد.
برای اطلاعات بیشتر به راهنمای ادغام زیر مراجعه کنید:
به gamesdk/libs نگاه کنید و ابزاری را انتخاب کنید که مناسبتر با زنجیره ابزار شما باشد (به عنوان مثال gamesdk/libs/arm64-v8a_API24_NDK17_cpp_static_Release ).
-ltuningfork_static به دستور پیوند دهنده خود اضافه کنید (و -lswappy_static اگر کتابخانه Android Frame Pacing را یکپارچه کرده اید) اضافه کنید.
مجوز INTERNET را به فایل AndroidManifest.xml خود اضافه کنید:
مراحل در بخش کتابخانه ایستا به طور ایستا با نسخه ای از کتابخانه Tuning Fork که برای ترکیب ABI، سطح API، NDK و STL کامپایل شده است، پیوند دارند. اگر این ترکیب برای تنظیمات شما در دسترس نیست، میتوانید در عوض به کتابخانه مشترک پیوند دهید:
مسیرهای شامل gamesdk/include را به کامپایلر خود اضافه کنید.
مسیری از فرم زیر را در مسیرهای کتابخانه پیوند دهنده خود اضافه کنید:
پیوند استاتیک به شما ردپای کد بسیار کوچکتری می دهد زیرا نیازی به بسته بندی کتابخانه مشترک 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")
تابع add_gamesdk_target را با پوشه حاوی gamesdk فراخوانی کنید: add_gamesdk_target(PACKAGE_DIR path/to/gamesdk )
در target_link_libraries خود برای کتابخانه بومی خود، tuningfork به عنوان یک وابستگی اضافه کنید (و اگر کتابخانه Android Frame Pacing را ادغام کرده اید، swappy ): target_link_libraries(native-lib swappy tuningfork ...)
محتوا و نمونه کدها در این صفحه مشمول پروانههای توصیفشده در پروانه محتوا هستند. جاوا و OpenJDK علامتهای تجاری یا علامتهای تجاری ثبتشده Oracle و/یا وابستههای آن هستند.
تاریخ آخرین بهروزرسانی 2025-08-26 بهوقت ساعت هماهنگ جهانی.
[[["درک آسان","easyToUnderstand","thumb-up"],["مشکلم را برطرف کرد","solvedMyProblem","thumb-up"],["غیره","otherUp","thumb-up"]],[["اطلاعاتی که نیاز دارم وجود ندارد","missingTheInformationINeed","thumb-down"],["بیشازحد پیچیده/ مراحل بسیار زیاد","tooComplicatedTooManySteps","thumb-down"],["قدیمی","outOfDate","thumb-down"],["مشکل ترجمه","translationIssue","thumb-down"],["مشکل کد / نمونهها","samplesCodeIssue","thumb-down"],["غیره","otherDown","thumb-down"]],["تاریخ آخرین بهروزرسانی 2025-08-26 بهوقت ساعت هماهنگ جهانی."],[],[],null,["The following sections describe how to integrate the Tuning Fork library\ninto your toolchain and how to use the functions that the library provides. The\nlibrary is available as a static or shared library in the AGDK Libraries.\n\nAfter you've [downloaded the SDK](/games/sdk#download) to your machine and\nchecked it into your source control system, make the changes listed in the\nfollowing sections to your project's build settings.\n\nBefore you begin\n\nYou should integrate the [Android Frame Pacing library](/games/sdk/frame-pacing)\nbefore integrating the Tuning Fork library. If you do this, the\nTuning Fork library can automatically record frame time; there is no\nneed to explicitly call the tick functions yourself.\n\nSee the following integration guides for more information:\n\n- [Integrate Android Frame Pacing into your OpenGL renderer](/games/sdk/frame-pacing/opengl)\n- [Integrate Android Frame Pacing into your Vulkan renderer](/games/sdk/frame-pacing/vulkan)\n\nStatic library\n\nTo link your project to the static library, do the following:\n\n1. Add `gamesdk/include` to your compiler include paths.\n2. Add a path of the following form in your linker library paths:\n\n ```\n gamesdk/libs/architecture_APIapiLevel_NDKndkVersion_stlVersion_Release\n ```\n\n Look in `gamesdk/libs` and pick the one that best suits your toolchain (for\n example, `gamesdk/libs/arm64-v8a_API24_NDK17_cpp_static_Release`).\n3. Add `-ltuningfork_static` to your linker command (and `-lswappy_static` if\n you integrated the Android Frame Pacing library).\n\n4. Add the `INTERNET` permission to your `AndroidManifest.xml` file:\n\n \u003cuses-permission android:name=\"android.permission.INTERNET\" /\u003e\n\nShared library\n\nThe steps in the [static library](#static-library) section statically link\nagainst a version of the Tuning Fork library compiled for the given ABI,\nAPI level, NDK, and STL combination. If the combination is not available for\nyour settings, you can instead link against the shared library:\n\n1. Add `gamesdk/include` to your compiler include paths.\n2. Add a path of the following form in your linker library paths:\n\n ```\n gamesdk/libs/architecture_APIapiLevel_NDKndkVersion_stlVersion_Release/lib/tuningfork\n ```\n3. Add `-ltuningfork` to your linker command (and `-lswappy` if you integrated\n the Android Frame Pacing library).\n\n4. Add the `INTERNET` permission to your `AndroidManifest.xml` file:\n\n \u003cuses-permission android:name=\"android.permission.INTERNET\" /\u003e\n\nStatic linking gives you a much smaller code footprint as you don't need to\nbundle the `libtuningfork.so` shared library.\n\nUsing CMake (static library only)\n\nIf you are using CMake, see the\n`gamesdk/samples/tuningfork/insightsdemo/app/CMakeLists.txt` file for an example\nCMake configuration. It includes a utility file,\n`gamesdk/samples/gamesdk.cmake`, which performs final checks, adds the proper\ncompiler include paths, and generates a target that you can use to link the\nlibrary.\n\nTo use this utility, do the following:\n\n1. Include this file in your `CMakeLists.txt` file: `include(\"`\u003cvar translate=\"no\"\u003epath/to/gamesdk\u003c/var\u003e`/samples/gamesdk.cmake\")`\n2. Call the `add_gamesdk_target` function with the folder containing the gamesdk: `add_gamesdk_target(PACKAGE_DIR\n `\u003cvar translate=\"no\"\u003epath/to/gamesdk\u003c/var\u003e`)`\n3. In your `target_link_libraries` for your native library, add `tuningfork` as a dependency (and `swappy` if you integrated the Android Frame Pacing library): ` target_link_libraries(native-lib swappy tuningfork ...) `\n\n| **Note:** The path to the gamesdk used for `include` and `add_gamesdk_target` can either be absolute (for example, `/home/yourusername/gamesdk` or `C:\\Android\\gamesdk`) or relative to the `CMakeLists.txt` file.\n\nFor advanced usage of CMake, see the [`gamesdk.cmake` source file](https://android.googlesource.com/platform/frameworks/opt/gamesdk/+/refs/heads/master/samples/gamesdk.cmake)."]]