ডায়ালার, মিডিয়া, কার UI লাইব্রেরি এবং এসএমএস অন্তর্ভুক্ত অ্যাপগুলিকে আনবান্ডেড অ্যাপ হিসাবে বিবেচনা করা হয় (অর্থাৎ, সেগুলি অ্যান্ড্রয়েড প্ল্যাটফর্ম থেকে আনবান্ডেড)। এই ধরনের অ্যাপের মধ্যে অ্যাসোসিয়েশন এবং ফিচার এনরোলমেন্টের সেটিংস সহ গাড়ির পাশে ফোন কম্প্যানিয়ন অ্যাপ এবং UX থেকে ডেটা পাওয়ার যুক্তি অন্তর্ভুক্ত। আনবান্ডেড কোড থেকে তৈরি APK প্ল্যাটফর্মের বিভিন্ন সংস্করণের সাথে কাজ করে।
কোড চেক আউট
আনবান্ডেড কোড চেক করতে, নিম্নলিখিত চালান:
repo init -u https://android.googlesource.com/platform/manifest -b ub-automotive-master
repo sync -cq -j4
AOSP সোর্স কোডের সাথে কাজ করার বিষয়ে আরও জানতে, রেপো ক্লায়েন্ট শুরু করুন দেখুন।
কোড তৈরি করুন
আপনি অ্যান্ড্রয়েড স্টুডিও ব্যবহার করে বা কমান্ড লাইন থেকে কোড তৈরি করতে পারেন।
অ্যান্ড্রয়েড স্টুডিও
অ্যান্ড্রয়েড স্টুডিওতে কোড তৈরি করতে:
অ্যান্ড্রয়েড স্টুডিওতে, নিম্নলিখিত বিল্ড ফাইলটি আমদানি করুন:
packages/apps/Car/libs/aaos-apps-gradle-project/build.gradle
Gradle JDK সংস্করণ 11 বা উচ্চতর সেট করা আছে তা নিশ্চিত করুন:
চিত্র 1. অ্যান্ড্রয়েড স্টুডিওতে গ্রেডল জেডিকে 11 সংস্করণে সেট করুন।
কমান্ড লাইন
কমান্ড লাইন থেকে কোড তৈরি করতে:
নিম্নলিখিত পদ্ধতিগুলির মধ্যে একটি ব্যবহার করে 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
পরিবেশ পরিবর্তনশীল সেট করুন।
একটি কমান্ড প্রম্পট বা একটি শেল উইন্ডো খুলুন।
packages/apps/Car/libs/aaos-apps-gradle-project
এ যান।নিম্নলিখিত কমান্ড চালান:
./gradlew assemble
ন্যূনতম প্রয়োজনীয় API স্তর
প্রতিটি আনবান্ডেড অ্যাপ অ্যান্ড্রয়েড প্ল্যাটফর্মে তার minSdkVersion
সমান বা তার চেয়ে বেশি সংস্করণ সহ কাজ করে। নিম্নলিখিত সারণীতে প্রতিটি অ্যাপ দ্বারা সমর্থিত ন্যূনতম API সংস্করণের তালিকা রয়েছে:
অ্যাপ | ন্যূনতম API স্তর |
---|---|
ক্যালেন্ডার | 29 |
গাড়ির UI লাইব্রেরি | 29 |
CompanionDevice | 29 |
ডায়ালার | 31 |
মিডিয়া | 30 |
মেসেঞ্জার (এসএমএস) | 30 |
AOSP হোস্ট | 29 |
একটি সিস্টেম ইমেজে একটি প্রিবিল্ড একত্রিত করুন
যদি অ্যান্ড্রয়েড প্ল্যাটফর্ম সংস্করণটি অ্যাপ দ্বারা সমর্থিত হয় (আগের বিভাগে টেবিলটি দেখুন), আপনি সিস্টেমের ছবিতে APK যোগ করতে পারেন। যাইহোক, অ্যান্ড্রয়েড প্ল্যাটফর্ম সংস্করণগুলির মধ্যে ইন্টিগ্রেশন পদক্ষেপগুলি আলাদা।
Android 13 এবং উচ্চতর
অ্যান্ড্রয়েড 13 এবং উচ্চতর আনবান্ডেড অ্যাপের জন্য সোর্স কোড অন্তর্ভুক্ত করে না, তবে আপনি সিডিডি কমপ্লায়েন্স টেস্টিং বা প্রভিলেজড অ্যাপের ব্যবস্থা করার মতো ব্যবহারের ক্ষেত্রে প্ল্যাটফর্ম বিল্ডে একটি প্রি-বিল্ট APK অন্তর্ভুক্ত করতে পারেন। APK নির্দিষ্ট করতে, 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 এবং তার নিচের
অ্যান্ড্রয়েড 12 এবং তার নিচের অ্যাপ্লিকেশানগুলি আনবান্ডেড অ্যাপ্লিকেশানগুলির জন্য সোর্স কোড অন্তর্ভুক্ত করে, তবে আপনি এখনও অন্তর্ভুক্ত করার জন্য একটি পূর্বনির্মাণ APK নির্দিষ্ট করতে পারেন। যেহেতু 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 সিস্টেম স্বাক্ষরিত | বিশেষ সুবিধাপ্রাপ্ত unbundled নন-সিস্টেম স্বাক্ষরিত | আনবান্ডেড সিস্টেম পার্টিশনে থাকার দরকার নেই |
---|---|---|---|
অ্যাপ - ক্যালেন্ডার | এক্স | ||
অ্যাপ - CompanionDeviceSupport | এক্স | ||
অ্যাপ - ডায়ালার | এক্স | ||
অ্যাপ - AOSP হোস্ট | এক্স | ||
অ্যাপ - মিডিয়া | এক্স | ||
অ্যাপ - মেসেঞ্জার (এসএমএস) | এক্স | ||
বিতরণ আপডেট করুন | ওটিএ | OTA বা Google Play | OTA বা Google Play |