OEM ডিজাইন টোকেন

OEM ডিজাইন টোকেন হল একটি Android Automotive OS (AAOS) মেটেরিয়াল ডিজাইন সিস্টেমের বাস্তবায়ন। মোবাইলে টোকেন মানগুলির জন্য অ্যালগরিদমিক বা ব্যবহারকারী নির্বাচন পদ্ধতির বিপরীতে, OEM ডিজাইন টোকেন মান নির্ধারণ করে। ডিজাইন টোকেনগুলি ছোট, পুনরাবৃত্ত নকশার সিদ্ধান্তগুলিকে উপস্থাপন করে যা একটি ডিজাইন সিস্টেমের ভিজ্যুয়াল শৈলী তৈরি করে এবং স্ব-ব্যাখ্যামূলক নাম দিয়ে স্ট্যাটিক মান প্রতিস্থাপন করে। টোকেনগুলি মেটেরিয়াল ডিজাইন সিস্টেম দ্বারা সংজ্ঞায়িত অনুরূপ।

OEM টোকেন লাইব্রেরি

OEM ডিজাইন টোকেনগুলি OEM টোকেন লাইব্রেরির মাধ্যমে উল্লেখ করা হয়, যা চিত্র 1-এ চিত্রিত তিনটি উপাদান নিয়ে গঠিত।

চিত্র 1. OEM টোকেন লাইব্রেরি উপাদান।

স্ট্যাটিক লাইব্রেরি

OEM টোকেন লাইব্রেরির স্ট্যাটিক লাইব্রেরি উপাদান নিম্নরূপ টোকেন মানগুলিতে অ্যাক্সেসের সুবিধা দেয়।

  • টোকেনের জন্য OEM মান অ্যাক্সেস করতে API প্রদান করে।
  • OEM মান সহ থিমে টোকেন রেফারেন্সের অপ্ট-ইন ওভাররাইডিং সক্ষম করে৷

শেয়ার্ড লাইব্রেরি

ভাগ করা লাইব্রেরি উপাদান নিম্নলিখিত সংজ্ঞায়িত করার জন্য দায়ী:

  • লাইব্রেরির নাম।
  • OEM টোকেন মানগুলির জন্য সক্ষম করার জন্য বুলিয়ান অপ্ট-ইন৷
  • স্টাইল যা OEM টোকেন মান প্রদান করে।

একটি OEM-সংজ্ঞায়িত প্যাকেজ নাম সহ এই ভাগ করা লাইব্রেরি উপাদানটির OEM মালিকানা মিটমাট করার জন্য, OEMগুলি ভাগ করা লাইব্রেরি বাস্তবায়নের একটি ওভাররাইড তৈরি করতে পারে৷

চিত্র 2. একটি শেয়ার্ড লাইব্রেরি বাস্তবায়ন ওভাররাইড করুন।

OEM শেয়ার করা লাইব্রেরি

শেয়ার্ড লাইব্রেরি কম্পোনেন্টের OEM ওভাররাইডগুলি OEM টোকেন লাইব্রেরির অন্যান্য উপাদানগুলির সাথে সামঞ্জস্য বজায় রেখে শেয়ার্ড লাইব্রেরির বাস্তবায়নকে অন্যথায় অপরিবর্তিত রেখে OEM দ্বারা সেট করা প্যাকেজ নাম এবং স্বাক্ষরের জন্য একটি উপায় প্রদান করে লাইব্রেরির OEM মালিকানার অনুমতি দেয়৷

একটি ভাগ করা লাইব্রেরির জন্য ওভাররাইডগুলি নীচে দেখানো হিসাবে সংজ্ঞায়িত করা যেতে পারে:

override_android_app {
    name: "[OEM]-token-shared-lib",
    base: "token-shared-lib",
    package_name: "com.[OEM].sharedlib",
    rename_resources_package: false,
    certificate: …
}

টোকেন মান সেট করতে, OEM টোকেন মান নির্দিষ্ট করুন দেখুন।

OEM শেয়ার করা লাইব্রেরি কাস্টমাইজেশন

টোকেন মানগুলির জন্য বিভিন্ন স্কিম সমর্থন করার জন্য (উদাহরণস্বরূপ, মডেল বা ড্রাইভ মোড পার্থক্য), OEMগুলি রানটাইম রিসোর্স ওভারলে (RROs) সহ OEM শেয়ার্ড লাইব্রেরি লক্ষ্য করে টোকেনের জন্য গতিশীল মান প্রদান করতে পারে। আরও জানতে, রানটাইমে অ্যাপের সম্পদের মান পরিবর্তন দেখুন।

টোকেন মান সেট করতে, OEM টোকেন মান নির্দিষ্ট করুন দেখুন।

OEM টোকেন মান নির্দিষ্ট করুন

টোকেন মান নির্দিষ্ট করতে, প্রয়োজনীয় মানের সাথে OemStyle শৈলীতে সংশ্লিষ্ট বৈশিষ্ট্য সেট করুন।

<resources>
    <style name="OemStyle">
        <item name="colorPrimary">#B0C5FF</item>
        <item name="colorOnPrimary">#002B76</item>
        <item name="colorPrimaryContainer">#003FA4</item>
        <item name="colorOnPrimaryContainer">#D9E2FF</item>
        …
    </style>
</resources>

OEM মান নির্বাচন করুন

যাতে অ্যাপগুলি OEM-প্রদত্ত টোকেন মানগুলি অ্যাক্সেস করতে পারে, OEMগুলিকে প্রথমে enable_oem_tokens বুলিয়ানকে true বলে কনফিগার করে ডিফল্ট টোকেন মানগুলি ওভাররাইড করার জন্য নির্বাচন করতে হবে৷

RRO টোকেন মান

একইভাবে OemStyle এ টোকেন মান কীভাবে সেট করা হয়, বিকল্প টোকেন মান প্রদানের জন্য শৈলী পরিবর্তন করতে RRO ব্যবহার করা যেতে পারে।

<resources>
    <style name="OemStyle">
        <item name="com.android.oem.tokens:colorPrimary">#B0C5FF</item>
        <item name="com.android.oem.tokens:colorOnPrimary">#002B76</item>
        <item name="com.android.oem.tokens:colorPrimaryContainer">#003FA4</item>
        <item name="com.android.oem.tokens:colorOnPrimaryContainer">#D9E2FF</item>
        …
    </style>
</resources>

শেয়ার্ড লাইব্রেরি নাম উল্লেখ করে শৈলীতে শেয়ার্ড লাইব্রেরি অ্যাট্রিবিউট সেট করা উচিত।

শেষ লোড কনফিগার করুন

একটি টোকেন শেয়ার্ড লাইব্রেরির একটি OEM ইমপ্লিমেন্টেশন অন্তর্ভুক্ত সিস্টেমগুলিকে অ্যাপ ক্লাসের পরে শেয়ার্ড লাইব্রেরি লোড করার জন্য সিস্টেমটিকে কনফিগার করতে হবে। এটি করতে, সিস্টেমের config_sharedLibrariesLoadedAfterApp কনফিগারেশনে লাইব্রেরির নাম ( com.android.oem.tokens ) অন্তর্ভুক্ত করুন। আপনার যদি Google Automotive Services (GAS) অ্যাক্সেস থাকে তবে এটি একটি প্রয়োজনীয়তা হিসাবে প্রয়োগ করা হয়।

<!-- The OEM token shared library will be loaded after app classes -->
<string-array name="config_sharedLibrariesLoadedAfterApp" translatable="false">
    <item>com.android.oem.tokens</item>
</string-array>

সেরা অনুশীলন

OEM টোকেন লাইব্রেরির জন্য সর্বোত্তম অনুশীলনগুলি নীচে বর্ণনা করা হয়েছে।

একটি নমনীয় আপডেট কৌশল সক্ষম করুন

আপনি আপডেটের ক্ষেত্রে নমনীয়তা তৈরি করেছেন তা নিশ্চিত করতে নীচের কৌশলগুলি দেখুন।

OEM শেয়ার করা লাইব্রেরি

যেহেতু সিস্টেম-শেয়ারড লাইব্রেরিগুলিকে সিস্টেম ইমেজে আগে থেকে ইনস্টল করা প্রয়োজন, তাই ডিভাইসগুলিকে অবশ্যই লাইব্রেরির সাথে শিপ করতে হবে বা লাইব্রেরিটি অবশ্যই একটি ওভার-দ্য-এয়ার (OTA) আপডেটের অংশ হিসাবে যোগ করতে হবে (আরো জানতে, OTA আপডেটগুলি দেখুন)। যাইহোক, একটি সিস্টেম ইমেজে একটি OEM টোকেন শেয়ার্ড লাইব্রেরির একটি OEM ওভাররাইডের স্টাব ইমপ্লিমেন্টেশন সহ একটি সম্পূর্ণ কার্যকরী ইমপ্লিমেন্টেশনের আপডেটের জন্য একটি OTA প্রয়োজন ছাড়াই পরবর্তী তারিখে ডিভাইসে পুশ করার অনুমতি দেয়।

শেয়ার্ড লাইব্রেরি RROs

যদিও সিস্টেম অ্যাপস হিসেবে RRO গুলি ইনস্টল করার কোনো প্রয়োজন নেই, তবে তা করা কিছু আপডেট আচরণ প্রদান করে যা কাঙ্খিত হতে পারে।

  • ব্যবহারকারীরা সাইন ইন না করলে অ্যাপের স্বয়ংক্রিয় আপডেট।
  • ব্যবহারকারী দ্বারা আনইনস্টল করা যাবে না (ব্যবহারকারীরা শুধুমাত্র আপডেট আনইনস্টল করতে পারেন)।