بخشهای زیر موضوعات استفاده پیشرفتهای را که برای عملکرد عادی کتابخانه مورد نیاز نیستند، تشریح میکند.
سایر ردیاب های پشتیبانی شده
Tuning Fork از چندین ردیاب پشتیبانی می کند. ردیاب هایی با کلیدهای ابزار زیر پشتیبانی می شوند:
- زمان بین شروع فریم (به نام
PACED_FRAME_TIME
) - زمان CPU: زمان بین شروع فریم و پایان کار CPU برای فریم (به نام
CPU_TIME
) - زمان GPU: زمان مدیریت فریم قبلی توسط GPU (به نام
GPU_TIME
) - زمان فریم خام، به عنوان حداکثر زمان CPU و GPU (به نام
RAW_FRAME_TIME
) تعریف شده است. تفاوت این گزینه باPACED_FRAME_TIME
در این است که این گزینه شامل هیچ زمان انتظاری که توسط Swappy یا VSync درج شده نیست.
شما می توانید این کلیدهای ابزار را در مستندات مرجع پیدا کنید. وقتی کتابخانه Android Frame Pacing را فعال می کنید، برخی از این کلیدها به طور خودکار استفاده می شوند، اما اگر این کتابخانه را فعال نمی کنید، باید به طور صریح از آنها استفاده کنید.
پارامترهای وفاداری را دریافت کنید
اگر در تنظیمات fidelity_params_callback
به TuningFork_init
ارسال کنید یا کتابخانه در حالت مقیاسبندی شده باشد، نیازی به فراخوانی این تابع نیست.
این تابع با یک سرور تماس می گیرد تا پارامترهای وفاداری را بازیابی کند. تا زمانی که یکی از موارد زیر رخ دهد مسدود می شود:
- پارامترهای Fidelity با مقدار بازگشتی
TFERROR_OK
بازیابی میشوند وreturnedParams
پارامترها را ذخیره میکند. در این مورد، تمام داده های تیک بعدی باreturnedParams
مرتبط می شود. - تعدادی میلی ثانیه برابر با
timeout_ms
پاس، با مقدار بازگشتیTFERROR_TIMEOUT
. در این مورد، تمام داده های تیک بعدی باdefaultFidelityParams
مرتبط می شوند.
قبل از این تابع باید TuningFork_init()
را فراخوانی کنید، و باید آن را در یک رشته مجزا از رشته اصلی فراخوانی کنید (برای تابعی که این کار را برای شما انجام می دهد به TuningFork_startFidelityParamDownloadThread()
مراجعه کنید). برای بازیابی مجدد پارامترهای وفاداری از سرور، می توانید این تابع را دوباره فراخوانی کنید، برای مثال در زمان بارگذاری سطح. این به شما این امکان را میدهد که بهجای نیاز به بارگیری مجدد پارامترها در هنگام راهاندازی، بهصورت پویا بهروزرسانی کنید. اگر پارامترهای وفاداری جدید دانلود شوند یا از یک پیشفرض جدید استفاده شود، تمام دادههای تیک قبلی ارسال میشوند.
بخشهای زیر موضوعات استفاده پیشرفتهای را که برای عملکرد عادی کتابخانه مورد نیاز نیستند، تشریح میکند.
سایر ردیاب های پشتیبانی شده
Tuning Fork از چندین ردیاب پشتیبانی می کند. ردیاب هایی با کلیدهای ابزار زیر پشتیبانی می شوند:
- زمان بین شروع فریم (به نام
PACED_FRAME_TIME
) - زمان CPU: زمان بین شروع فریم و پایان کار CPU برای فریم (به نام
CPU_TIME
) - زمان GPU: زمان مدیریت فریم قبلی توسط GPU (به نام
GPU_TIME
) - زمان فریم خام، به عنوان حداکثر زمان CPU و GPU (به نام
RAW_FRAME_TIME
) تعریف شده است. تفاوت این گزینه باPACED_FRAME_TIME
در این است که این گزینه شامل هیچ زمان انتظاری که توسط Swappy یا VSync درج شده نیست.
شما می توانید این کلیدهای ابزار را در مستندات مرجع پیدا کنید. وقتی کتابخانه Android Frame Pacing را فعال می کنید، برخی از این کلیدها به طور خودکار استفاده می شوند، اما اگر این کتابخانه را فعال نمی کنید، باید به طور صریح از آنها استفاده کنید.
پارامترهای وفاداری را دریافت کنید
اگر در تنظیمات fidelity_params_callback
به TuningFork_init
ارسال کنید یا کتابخانه در حالت مقیاسبندی شده باشد، نیازی به فراخوانی این تابع نیست.
این تابع با یک سرور تماس می گیرد تا پارامترهای وفاداری را بازیابی کند. تا زمانی که یکی از موارد زیر رخ دهد مسدود می شود:
- پارامترهای Fidelity با مقدار بازگشتی
TFERROR_OK
بازیابی میشوند وreturnedParams
پارامترها را ذخیره میکند. در این مورد، تمام داده های تیک بعدی باreturnedParams
مرتبط می شود. - تعدادی میلی ثانیه برابر با
timeout_ms
پاس، با مقدار بازگشتیTFERROR_TIMEOUT
. در این مورد، تمام داده های تیک بعدی باdefaultFidelityParams
مرتبط می شوند.
قبل از این تابع باید TuningFork_init()
را فراخوانی کنید، و باید آن را در یک رشته مجزا از رشته اصلی فراخوانی کنید (برای تابعی که این کار را برای شما انجام می دهد به TuningFork_startFidelityParamDownloadThread()
مراجعه کنید). برای بازیابی مجدد پارامترهای وفاداری از سرور، می توانید این تابع را دوباره فراخوانی کنید، برای مثال در زمان بارگذاری سطح. این به شما این امکان را میدهد که بهجای نیاز به بارگیری مجدد پارامترها در هنگام راهاندازی، بهصورت پویا بهروزرسانی کنید. اگر پارامترهای وفاداری جدید دانلود شوند یا از یک پیشفرض جدید استفاده شود، تمام دادههای تیک قبلی ارسال میشوند.