পারফরম্যান্স ক্লাস

পারফরম্যান্স ক্লাস একটি স্ট্যান্ডার্ড যা Android 12-এ প্রথম প্রবর্তিত হয়েছিল৷ একটি পারফরম্যান্স ক্লাস ডিভাইসের ক্ষমতাগুলির একটি সেটকে সংজ্ঞায়িত করে যা Android এর বেসলাইন প্রয়োজনীয়তার বাইরে যায়৷

অ্যান্ড্রয়েডের প্রতিটি সংস্করণের নিজস্ব সংশ্লিষ্ট কর্মক্ষমতা শ্রেণী রয়েছে, যা সেই সংস্করণের অ্যান্ড্রয়েড সামঞ্জস্যতা সংজ্ঞা নথিতে (CDD) সংজ্ঞায়িত করা হয়েছে। অ্যান্ড্রয়েড কম্প্যাটিবিলিটি টেস্ট স্যুট (সিটিএস) সিডিডি প্রয়োজনীয়তা যাচাই করে।

প্রতিটি অ্যান্ড্রয়েড-চালিত ডিভাইস এটি সমর্থন করে এমন কর্মক্ষমতা শ্রেণী ঘোষণা করে। ডেভেলপাররা রানটাইমে ডিভাইসের পারফরম্যান্স ক্লাস খুঁজে পেতে পারে এবং আপগ্রেড করা অভিজ্ঞতা প্রদান করতে পারে যা ডিভাইসের ক্ষমতার সম্পূর্ণ সুবিধা নেয়।

একটি ডিভাইসের পারফরম্যান্স ক্লাস লেভেল খুঁজে পেতে, জেটপ্যাক কোর পারফরম্যান্স লাইব্রেরি ব্যবহার করুন। এই লাইব্রেরিটি বিল্ড সংস্করণের তথ্যে বা Google Play পরিষেবার ডেটার উপর ভিত্তি করে ঘোষিত ডিভাইসের মিডিয়া পারফরম্যান্স ক্লাস রিপোর্ট করে৷

আপনার গ্রেডল ফাইলে প্রাসঙ্গিক মডিউলগুলির জন্য একটি নির্ভরতা যোগ করে শুরু করুন:

কোটলিন

// 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-beta02")
// Enable APIs to query Google Play Services for performance class.
implementation("androidx.core:core-performance-play-services:1.0.0-beta02")

গ্রোভি

// 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-beta02'
// Enable APIs to query Google Play Services for performance class.
implementation 'androidx.core:core-performance-play-services:1.0.0-beta02'

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 সমর্থন করে Android 13 তে আপগ্রেড করতে পারে এবং রিপোর্ট করা চালিয়ে যেতে পারে যদি এটি ক্লাস 13 এর প্রয়োজনীয়তা পূরণ না করে তবে এটি 12 শ্রেণীকে সমর্থন করে। এর মানে হল যে একটি পারফরম্যান্স ক্লাস একটি নির্দিষ্ট অ্যান্ড্রয়েড সংস্করণের উপর নির্ভর না করে ডিভাইসগুলিকে একত্রিত করার একটি উপায় প্রদান করে৷

চিত্র 1. ডিভাইসগুলি অ্যান্ড্রয়েড সংস্করণগুলি আপগ্রেড করতে পারে এবং রিপোর্ট করা চালিয়ে যেতে পারে যে তারা মূলত যে শ্রেণীটিকে সমর্থন করে তা সমর্থন করে৷

পারফরম্যান্স ক্লাস 14

পারফরম্যান্স ক্লাস 14 পারফরম্যান্স ক্লাস 13-এ প্রবর্তিত প্রয়োজনীয়তার উপর ভিত্তি করে তৈরি করে। নির্দিষ্ট পারফরম্যান্স ক্লাসের প্রয়োজনীয়তাগুলি Android CDD- এ প্রকাশিত হয়। পারফরম্যান্স ক্লাস 13 থেকে আইটেমগুলির জন্য বর্ধিত প্রয়োজনীয়তা ছাড়াও, CDD নিম্নলিখিত ক্ষেত্রে প্রয়োজনীয়তাগুলি নির্দিষ্ট করে:

মিডিয়া

  • AV1 হার্ডওয়্যার ডিকোডারে ফিল্ম গ্রেইন ইফেক্ট সাপোর্ট
  • AVIF বেসলাইন প্রোফাইল
  • AV1 এনকোডার কর্মক্ষমতা
  • HDR ভিডিও কোডেক
  • RGBA_1010102 রঙের বিন্যাস
  • YUV টেক্সচার স্যাম্পলিং
  • ভিডিও এনকোডিং গুণমান
  • মাল্টিচ্যানেল অডিও মিক্সিং

ক্যামেরা

  • নাইট মোড এক্সটেনশন
  • এইচডিআর-সক্ষম প্রাথমিক ক্যামেরা
  • মুখ সনাক্তকরণ দৃশ্য মোড

সাধারণ

  • হার্ডওয়্যার ওভারলে
  • এইচডিআর ডিসপ্লে

পারফরম্যান্স ক্লাস 13

পারফরম্যান্স ক্লাস 13 পারফরম্যান্স ক্লাস 12-এ প্রবর্তিত প্রয়োজনীয়তার উপর ভিত্তি করে তৈরি করে। নির্দিষ্ট পারফরম্যান্স ক্লাসের প্রয়োজনীয়তা Android CDD- এ প্রকাশিত হয়। পারফরম্যান্স ক্লাস 12 থেকে আইটেমগুলির জন্য বর্ধিত প্রয়োজনীয়তা ছাড়াও, CDD নিম্নলিখিত ক্ষেত্রে প্রয়োজনীয়তাগুলি নির্দিষ্ট করে:

মিডিয়া

  • AV1 হার্ডওয়্যার ডিকোডার
  • সুরক্ষিত হার্ডওয়্যার ডিকোডার
  • ডিকোডার ইনিশিয়ালাইজেশন লেটেন্সি
  • রাউন্ড-ট্রিপ অডিও লেটেন্সি
  • তারযুক্ত হেডসেট এবং USB অডিও ডিভাইস
  • MIDI ডিভাইস
  • হার্ডওয়্যার-সমর্থিত বিশ্বস্ত কার্যকরী পরিবেশ

ক্যামেরা

  • পূর্বরূপ স্থিরকরণ
  • স্লো-মো রেকর্ডিং
  • আল্ট্রাওয়াইড ক্যামেরার জন্য ন্যূনতম জুম অনুপাত
  • সমসাময়িক ক্যামেরা
  • লজিক্যাল মাল্টি ক্যামেরা
  • স্ট্রিম ব্যবহারের ক্ষেত্রে

পারফরম্যান্স ক্লাস 12

পারফরম্যান্স ক্লাস 12 মিডিয়া ব্যবহারের ক্ষেত্রে ফোকাস করে। নির্দিষ্ট পারফরম্যান্স ক্লাসের প্রয়োজনীয়তাগুলি অ্যান্ড্রয়েড সিডিডি -তে প্রকাশিত হয়। CDD নিম্নলিখিত ক্ষেত্রে প্রয়োজনীয়তা নির্দিষ্ট করে:

মিডিয়া

  • সমসাময়িক ভিডিও কোডেক সেশন
  • এনকোডার ইনিশিয়ালাইজেশন লেটেন্সি
  • ডিকোডার ফ্রেম ড্রপ
  • এনকোডিং গুণমান

ক্যামেরা

  • রেজোলিউশন এবং ফ্রেম রেট
  • স্টার্টআপ এবং ক্যাপচার লেটেন্সি
  • FULL বা আরও ভাল হার্ডওয়্যার স্তর
  • টাইমস্ট্যাম্প উৎস হল রিয়েলটাইম
  • RAW ক্ষমতা

সাধারণ

  • স্মৃতি
  • পড়া এবং কর্মক্ষমতা লিখুন
  • পর্দা রেজল্যুশন
  • পর্দার ঘনত্ব

পারফরম্যান্স ক্লাস 11

পারফরম্যান্স ক্লাস 11-এ পারফরম্যান্স ক্লাস 12-এর জন্য প্রয়োজনীয়তার একটি উপসেট অন্তর্ভুক্ত রয়েছে, যা ডেভেলপারদের পূর্বের কিন্তু এখনও অত্যন্ত সক্ষম ডিভাইসগুলিতে একটি উপযোগী অভিজ্ঞতা প্রদান করতে দেয়। নির্দিষ্ট পারফরম্যান্স ক্লাসের প্রয়োজনীয়তাগুলি অ্যান্ড্রয়েড সিডিডি -তে প্রকাশিত হয়।

{% শব্দার্থে %} {% endverbatim %} {% শব্দার্থে %} {% endverbatim %}