আপনার প্রকল্প সেট আপ করুন

এই পৃষ্ঠায় কার অ্যাপ লাইব্রেরি কীভাবে ইনস্টল করতে হয় এবং আপনার অ্যাপের জন্য ম্যানিফেস্ট ফাইলটি কীভাবে কনফিগার করতে হয়, তা বর্ণনা করা হয়েছে।

গাড়ির অ্যাপ লাইব্রেরি ইনস্টল করুন

আপনার অ্যাপে লাইব্রেরিটি যোগ করতে, জেটপ্যাক লাইব্রেরি রিলিজ পেজটি দেখুন।

আপনার অ্যাপের ম্যানিফেস্ট ফাইলগুলি কনফিগার করুন

আপনার গাড়ির অ্যাপ তৈরি করার আগে, আপনাকে অবশ্যই আপনার অ্যাপের ম্যানিফেস্ট ফাইলগুলো কনফিগার করতে হবে।

আপনার CarAppService ঘোষণা করুন

হোস্ট আপনার CarAppService ইমপ্লিমেন্টেশনের মাধ্যমে আপনার অ্যাপের সাথে সংযোগ স্থাপন করে। হোস্ট যাতে আপনার অ্যাপটি খুঁজে পেতে এবং এর সাথে সংযোগ স্থাপন করতে পারে, সেজন্য আপনি আপনার ম্যানিফেস্টে এই সার্ভিসটি ডিক্লেয়ার করেন।

আপনাকে আপনার অ্যাপের ইন্টেন্ট ফিল্টারের <category> এলিমেন্টে আপনার অ্যাপের ক্যাটাগরিটিও ঘোষণা করতে হবে। এই এলিমেন্টের জন্য অনুমোদিত ভ্যালুগুলো জানতে সমর্থিত অ্যাপ ক্যাটাগরির তালিকা দেখুন।

নিম্নলিখিত কোড স্নিপেটটি দেখায় কিভাবে আপনার ম্যানিফেস্টে একটি পয়েন্ট অফ ইন্টারেস্ট অ্যাপের জন্য একটি কার অ্যাপ সার্ভিস ডিক্লেয়ার করতে হয়:

<application>
    ...
   <service
       ...
        android:name=".MyCarAppService"
        android:exported="true">
      <intent-filter>
        <action android:name="androidx.car.app.CarAppService"/>
        <category android:name="androidx.car.app.category.POI"/>
      </intent-filter>
    </service>

    ...
<application>

সমর্থিত অ্যাপ বিভাগ

"আপনার CarAppService ঘোষণা করুন" অংশে বর্ণিত পদ্ধতি অনুযায়ী যখন আপনি আপনার CarAppService ঘোষণা করবেন, তখন আপনাকে অবশ্যই ইন্টেন্ট ফিল্টারে এই মানগুলির এক বা একাধিক যোগ করে আপনার অ্যাপের ক্যাটাগরিও ঘোষণা করতে হবে।

প্রতিটি বিভাগের বিস্তারিত বিবরণ এবং কোনো বিভাগে যোগ্যতা অর্জনের জন্য প্রয়োজনীয় মানদণ্ডের জন্য, গাড়ির জন্য অ্যান্ড্রয়েড অ্যাপের গুণমান দেখুন।

অ্যাপের নাম এবং আইকন নির্দিষ্ট করুন

সিস্টেম UI-তে আপনার অ্যাপকে উপস্থাপন করার জন্য, carPermissionActivityLayout অবশ্যই হোস্টের জন্য একটি অ্যাপের নাম এবং একটি আইকন নির্দিষ্ট করতে হবে। আপনার অ্যাপকে উপস্থাপন করার জন্য হোস্ট যে অ্যাপের নাম এবং আইকন ব্যবহার করবে, তা নির্দিষ্ট করতে আপনার CarAppService এর label এবং icon অ্যাট্রিবিউটগুলো ব্যবহার করুন:

...
<service
   android:name=".MyCarAppService"
   android:exported="true"
   android:label="@string/my_app_name"
   android:icon="@drawable/my_app_icon">
   ...
</service>
...

যদি আপনি <service> এলিমেন্টে কোনো লেবেল বা আইকন ঘোষণা না করেন, তাহলে হোস্ট <application> এলিমেন্ট দ্বারা নির্দিষ্ট মানগুলো ব্যবহার করবে।

একটি কাস্টম থিম সেট করুন

আপনার গাড়ির অ্যাপের জন্য একটি কাস্টম থিম সেট করতে:

  1. আপনার ম্যানিফেস্ট ফাইলে একটি <meta-data> এলিমেন্ট যোগ করুন:

    <meta-data
        android:name="androidx.car.app.theme"
        android:resource="@style/MyCarAppTheme />
    
  2. আপনার কাস্টম কার অ্যাপ থিমের অ্যাট্রিবিউটগুলো সেট করতে আপনার স্টাইল রিসোর্স ঘোষণা করুন:

    <resources>
      <style name="MyCarAppTheme">
        <item name="carColorPrimary">@color/my_primary_car_color</item>
        <item name="carColorPrimaryDark">@color/my_primary_dark_car_color</item>
        <item name="carColorSecondary">@color/my_secondary_car_color</item>
        <item name="carColorSecondaryDark">@color/my_secondary_dark_car_color</item>
        <item name="carPermissionActivityLayout">@layout/my_custom_background</item>
      </style>
    </resources>
    

গাড়ির অ্যাপ এপিআই স্তর

কার অ্যাপ লাইব্রেরি তার নিজস্ব এপিআই লেভেল নির্ধারণ করে, যাতে আপনি জানতে পারেন একটি গাড়ির টেমপ্লেট হোস্টে লাইব্রেরির কোন ফিচারগুলো সমর্থিত। কোনো হোস্ট দ্বারা সমর্থিত সর্বোচ্চ কার অ্যাপ এপিআই লেভেল জানতে, getCarAppApiLevel() মেথডটি ব্যবহার করুন।

আপনার AndroidManifest.xml ফাইলে আপনার অ্যাপ দ্বারা সমর্থিত সর্বনিম্ন কার অ্যাপ এপিআই লেভেল ঘোষণা করুন:

<manifest ...>
    <application ...>
        <meta-data
            android:name="androidx.car.app.minCarApiLevel"
            android:value="1"/>
    </application>
</manifest>

ব্যাকওয়ার্ড কম্প্যাটিবিলিটি বজায় রাখা এবং কোনো ফিচার ব্যবহারের জন্য প্রয়োজনীয় ন্যূনতম এপিআই লেভেল ঘোষণা করার বিষয়ে বিস্তারিত জানতে, RequiresCarApi অ্যানোটেশনের ডকুমেন্টেশন দেখুন। কার অ্যাপ লাইব্রেরির কোনো নির্দিষ্ট ফিচার ব্যবহারের জন্য কোন এপিআই লেভেল প্রয়োজন, তার সংজ্ঞার জন্য CarAppApiLevels এর রেফারেন্স ডকুমেন্টেশন দেখুন।