کلاس عملکرد استانداردی است که برای اولین بار در اندروید 12 معرفی شد. کلاس عملکرد مجموعه ای از قابلیت های دستگاه را تعریف می کند که فراتر از الزامات پایه اندروید است.
هر نسخه از اندروید کلاس عملکرد مربوط به خود را دارد که در سند تعریف سازگاری اندروید (CDD) آن نسخه تعریف شده است. مجموعه تست سازگاری اندروید (CTS) الزامات CDD را تأیید می کند.
هر دستگاه مجهز به اندروید کلاس عملکردی را که پشتیبانی می کند را اعلام می کند. توسعه دهندگان می توانند کلاس عملکرد دستگاه را در زمان اجرا پیدا کنند و تجربیات ارتقا یافته ای را ارائه دهند که از قابلیت های دستگاه نهایت استفاده را ببرد.
برای پیدا کردن سطح کلاس عملکرد دستگاه، از کتابخانه Jetpack Core Performance استفاده کنید. این کتابخانه کلاس عملکرد رسانه دستگاه را همانطور که در اطلاعات نسخه ساخت یا بر اساس دادههای سرویسهای Google Play اعلام شده گزارش میکند.
با افزودن یک وابستگی برای ماژول های مربوطه در فایل gradle خود شروع کنید:
کاتلین
// Implementation of Jetpack Core library. implementation("androidx.core:core-ktx:1.12.0") // Enable APIs to query for device-reported performance class. implementation("androidx.core:core-performance:1.0.0") // Enable APIs to query Google Play Services for performance class. implementation("androidx.core:core-performance-play-services:1.0.0")
شیار
// Implementation of Jetpack Core library. implementation 'androidx.core:core-ktx:1.12.0' // Enable APIs to query for device-reported performance class. implementation 'androidx.core:core-performance:1.0.0' // Enable APIs to query Google Play Services for performance class. implementation 'androidx.core:core-performance-play-services:1.0.0'
Then, create an instance of a
DevicePerformance
implementation, such as
PlayServicesDevicePerformance
,
in the onCreate()
lifecycle event of your Application
. This should only be
done once in your app.
Kotlin
import androidx.core.performance.play.services.PlayServicesDevicePerformance class MyApplication : Application() { lateinit var devicePerformance: DevicePerformance override fun onCreate() { // Use a class derived from the DevicePerformance interface devicePerformance = PlayServicesDevicePerformance(applicationContext) } }
جاوا
import androidx.core.performance.play.services.PlayServicesDevicePerformance; class MyApplication extends Application { DevicePerformance devicePerformance; @Override public void onCreate() { // Use a class derived from the DevicePerformance interface devicePerformance = new PlayServicesDevicePerformance(applicationContext); } }
سپس می توانید ویژگی mediaPerformanceClass
را بازیابی کنید تا تجربه برنامه خود را بر اساس قابلیت های دستگاه تنظیم کنید:
کاتلین
class MyActivity : Activity() { private lateinit var devicePerformance: DevicePerformance override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) // Note: Good app architecture is to use a dependency framework. See // https://developer.android.com/training/dependency-injection for more // information. devicePerformance = (application as MyApplication).devicePerformance } override fun onResume() { super.onResume() when { devicePerformance.mediaPerformanceClass >= Build.VERSION_CODES.TIRAMISU -> { // Performance class level 13 and later. // Provide the most premium experience for the highest performing devices. } devicePerformance.mediaPerformanceClass == Build.VERSION_CODES.S -> { // Performance class level 12. // Provide a high quality experience. } else -> { // Performance class level 11 or undefined. // Remove extras to keep experience functional. } } } }
جاوا
class MyActivity extends Activity { private DevicePerformance devicePerformance; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Note: Good app architecture is to use a dependency framework. See // https://developer.android.com/training/dependency-injection for more // information. devicePerformance = ((MyApplication) getApplication()).devicePerformance; } @Override public void onResume() { super.onResume(); if (devicePerformance.getMediaPerformanceClass() >= Build.VERSION_CODES.TIRAMISU) { // Performance class level 13 and later. // Provide the most premium experience for the highest performing devices. } else if (devicePerformance.getMediaPerformanceClass() == Build.VERSION_CODES.S) { // Performance class level 12. // Provide a high quality experience. } else { // Performance class level 11 or undefined. // Remove extras to keep experience functional. } } }
کلاس های عملکرد سازگار با جلو هستند. یک دستگاه می تواند بدون به روز رسانی کلاس عملکرد خود به نسخه پلتفرم جدیدتر ارتقا یابد. برای مثال، دستگاهی که در ابتدا از کلاس عملکرد 12 پشتیبانی میکند، میتواند به اندروید 13 ارتقا یابد و در صورتی که الزامات کلاس 13 را برآورده نکند، همچنان گزارش میدهد که از کلاس 12 پشتیبانی میکند. این بدان معنی است که یک کلاس عملکرد راهی برای گروه بندی دستگاه ها بدون اتکا به یک نسخه اندروید خاص ارائه می دهد.
کلاس عملکرد 14
کلاس عملکرد 14 مبتنی بر الزامات معرفی شده در کلاس عملکرد 13 است. الزامات کلاس عملکرد خاص در CDD Android منتشر شده است. علاوه بر افزایش الزامات برای اقلام از کلاس عملکرد 13، CDD الزامات را در زمینه های زیر مشخص می کند:
رسانه ها
- پشتیبانی از جلوه دانه فیلم در رمزگشاهای سخت افزاری AV1
- نمایه خط پایه AVIF
- عملکرد رمزگذار AV1
- کدک های ویدیویی HDR
- فرمت رنگی RGBA_1010102
- نمونه برداری بافت YUV
- کیفیت رمزگذاری ویدیو
- میکس صدا چند کاناله
دوربین
- پسوند حالت شب
- دوربین اصلی با قابلیت HDR
- حالت صحنه تشخیص چهره
عمومی
- پوشش های سخت افزاری
- نمایشگر HDR
کلاس عملکرد 13
کلاس عملکرد 13 مبتنی بر الزامات معرفی شده در کلاس عملکرد 12 است. الزامات کلاس عملکرد خاص در CDD Android منتشر شده است. علاوه بر افزایش الزامات برای اقلام از کلاس عملکرد 12، CDD الزامات را در زمینه های زیر مشخص می کند:
رسانه ها
- رسیور سخت افزاری AV1
- رمزگشاهای سخت افزاری ایمن
- تأخیر اولیه رسیور
- تأخیر صوتی رفت و برگشت
- هدست های سیمی و دستگاه های صوتی USB
- دستگاه های MIDI
- محیط اجرای قابل اعتماد با پشتوانه سخت افزار
دوربین
- پیش نمایش تثبیت
- ضبط آهسته
- حداقل نسبت زوم برای دوربین های فوق عریض
- دوربین همزمان
- چند دوربین منطقی
- مورد استفاده از جریان
کلاس عملکرد 12
کلاس عملکرد 12 بر موارد استفاده از رسانه متمرکز است. الزامات کلاس عملکرد خاص در CDD Android منتشر شده است. CDD الزامات را در زمینه های زیر مشخص می کند:
رسانه ها
- جلسات کدک ویدیویی همزمان
- تأخیر اولیه کدگذار
- افت فریم رسیور
- کیفیت رمزگذاری
دوربین
- وضوح و نرخ فریم
- راه اندازی و ثبت تاخیرها
- سطح سخت افزار
FULL
یا بهتر - منبع مهر زمانی بیدرنگ است
- قابلیت RAW
عمومی
- حافظه
- خواندن و نوشتن عملکرد
- وضوح صفحه نمایش
- تراکم صفحه نمایش
کلاس عملکرد 11
کلاس عملکرد 11 شامل زیرمجموعهای از الزامات کلاس عملکرد 12 است که به توسعهدهندگان اجازه میدهد تجربهای متناسب با دستگاههای قدیمیتر اما هنوز هم بسیار توانمند ارائه دهند. الزامات کلاس عملکرد خاص در CDD Android منتشر شده است.
{% کلمه به کلمه %}برای شما توصیه می شود
- توجه: وقتی جاوا اسکریپت خاموش است، متن پیوند نمایش داده می شود
- زمان راه اندازی اپلیکیشن