ইন্টিগ্রেশন গাইড

এই পৃষ্ঠাটি কীভাবে আনবান্ডেড অ্যাপগুলিকে সংহত করতে হয় তার রূপরেখা দেয়৷ ডায়ালার, মিডিয়া, কার UI লাইব্রেরি এবং এসএমএস অন্তর্ভুক্ত অ্যাপগুলিকে আনবান্ডেড অ্যাপ হিসাবে বিবেচনা করা হয়। এই অ্যাপগুলি অ্যান্ড্রয়েড প্ল্যাটফর্ম থেকে আনবান্ড করা হয়েছে এবং এতে অ্যাসোসিয়েশন এবং ফিচার এনরোলমেন্টের সেটিংস সহ গাড়ির পাশে ফোন কম্প্যানিয়ন অ্যাপ এবং UX থেকে ডেটা পাওয়ার যুক্তি অন্তর্ভুক্ত রয়েছে।

আনবান্ডেড কোড থেকে তৈরি APK প্ল্যাটফর্মের বিভিন্ন সংস্করণের সাথে কাজ করে।

কোড চেক আউট

আনবান্ডেড কোড চেক করতে:

  1. নিম্নলিখিত চালান:
    repo init -u https://android.googlesource.com/platform/manifest -b ub-automotive-master
    repo sync -cq -j4
    
  2. AOSP সোর্স কোডের সাথে কাজ করার বিষয়ে আরও জানতে, একটি রেপো ক্লায়েন্ট শুরু করা দেখুন।

কোড তৈরি করুন

অ্যান্ড্রয়েড স্টুডিও

অ্যান্ড্রয়েড স্টুডিওতে কোড তৈরি করতে:

  1. অ্যান্ড্রয়েড স্টুডিওতে, এই বিল্ড ফাইলটি আমদানি করুন:
    packages/apps/Car/libs/aaos-apps-gradle-project/build.gradle
  2. অ্যান্ড্রয়েড স্টুডিওতে গ্রেডল জেডিকে কমপক্ষে 11 সংস্করণে সেট করতে ভুলবেন না:


    চিত্র 1. সংস্করণ 11।
  3. পছন্দসই APK তৈরি করুন।

কমান্ড লাইন

কমান্ড লাইন থেকে কোড তৈরি করতে:

  1. এই দুটি উপায়ের একটিতে Android SDK অবস্থান সেট করুন:
    • packages/apps/Car/libs/aaos-apps-gradle-project/local.properties তৈরি করুন এবং তারপরে এতে থাকা sdk.dir প্রপার্টি সেট করুন। একটি প্রকল্প খোলার সময় Android স্টুডিও স্বয়ংক্রিয়ভাবে এটি করতে পারে। উদাহরণস্বরূপ, sdk.dir=/Users/MY-USERNAME/Library/Android/sdk ব্যবহার করুন।

      বা
    • Android SDK-এর পথের সাথে ANDROID_SDK_ROOT পরিবেশ পরিবর্তনশীল সেট করুন।
  2. একটি কমান্ড প্রম্পট বা একটি শেল উইন্ডো খুলুন।
  3. packages/apps/Car/libs/aaos-apps-gradle-project এ যান।
  4. নিম্নলিখিত কমান্ডটি চালান:
    ./gradlew assemble

ন্যূনতম প্রয়োজনীয় API স্তর

প্রতিটি আনবান্ডেড অ্যাপ অ্যান্ড্রয়েড প্ল্যাটফর্মে তার minSdkVersion এর সমান বা তার চেয়ে বেশি সংস্করণ সহ কাজ করে। নিম্নলিখিত সারণীতে প্রতিটি অ্যাপ দ্বারা সমর্থিত ন্যূনতম API সংস্করণের তালিকা রয়েছে:

অ্যাপ ন্যূনতম API স্তর
ক্যালেন্ডার 29
গাড়ির UI লাইব্রেরি 29
CompanionDevice 29
ডায়ালার 31
মিডিয়া 30
খুদেবার্তা 30
AOSP হোস্ট 29

একটি সিস্টেম ইমেজে একটি প্রিবিল্ড একীভূত করা

Android 13 এবং উচ্চতর ছবি

আনবান্ডেড কোডটি Android 13 প্ল্যাটফর্ম থেকে সরানো হয়েছে। অতএব, প্ল্যাটফর্ম বিল্ডগুলিতে পূর্বনির্মাণ APK যোগ করার প্রয়োজন হতে পারে:

  • CDD কমপ্লায়েন্স টেস্টিং
  • সুবিধাপ্রাপ্ত অ্যাপের ব্যবস্থা করা

এটি android_app_import Soong নিয়মের সাথে অর্জন করা হয়েছে:

android_app_import {
    name: "CarMediaApp",
    apk: "CarMediaApp.apk",
    privileged: true,
    certificate: "platform", // Media must be signed by the platform
    required: ["allowed_privapp_com.android.car.media"],
}

অ্যান্ড্রয়েড 12 এবং তার নিচের

যতক্ষণ পর্যন্ত অ্যান্ড্রয়েড প্ল্যাটফর্ম সংস্করণটি অ্যাপ দ্বারা সমর্থিত হয় (উপরের সারণীটি দেখুন), সেই সিস্টেমের ছবিতে APK যোগ করা যেতে পারে। যাইহোক, বেশিরভাগ আনবান্ডেড অ্যাপে সোর্স কোডের পূর্ববর্তী সংস্করণগুলি Android 13-এর চেয়ে কম প্ল্যাটফর্মে অন্তর্ভুক্ত রয়েছে। ডিফল্টরূপে, Soong একটি পূর্বনির্মাণের চেয়ে সোর্স কোডকে অগ্রাধিকার দেয়। অতএব, android_app_import নিয়মের মধ্যে prefer পতাকাটিকে true হিসাবে সেট করা প্রয়োজন:

android_app_import {
    name: "CarDialerApp",
    apk: "CarDialerApp.apk",
    privileged: true,
    presigned: true, // Dialer can have its own signature
    required: ["allowed_privapp_com.android.car.dialer"],
    overrides: ["Dialer"],
    prefer: true, // The prebuilt replaces a source target with the same name,
    }

আনবান্ডেড টাইপ অনুযায়ী তালিকাভুক্ত অ্যাপ

অ্যাপ বিশেষ সুবিধাপ্রাপ্ত unbundled আনবান্ডেড
(সিস্টেম পার্টিশনে থাকা দরকার নেই)
সিস্টেম স্বাক্ষরিত নন-সিস্টেম স্বাক্ষরিত
ক্যালেন্ডার এক্স
CompanionDevice এক্স
ডায়ালার এক্স
AOSP হোস্ট এক্স
মিডিয়া এক্স
খুদেবার্তা এক্স
বিতরণ আপডেট করুন ওটিএ OTA বা Google Play OTA বা Google Play