واژه نامه پلتفرم اندروید

برای یادگیری اصطلاحات اساسی پروژه متن‌باز اندروید (AOSP) به لیست زیر مراجعه کنید. در اینجا منابع دیگری برای تعاریف اصطلاحات کلیدی آمده است:

برای مثال‌هایی از اصطلاحاتی که باید برای یک اکوسیستم فراگیرتر استفاده شوند و از آنها اجتناب شود، به آیین‌نامه مراجعه کنید.

برنامه‌ها

فایل APK (.apk)
فایل بسته برنامه اندروید با پسوند .apk . هر برنامه اندروید در یک فایل واحد کامپایل و بسته‌بندی می‌شود که شامل تمام کد برنامه (فایل‌های DEX با پسوند .dex )، منابع، دارایی‌ها و فایل مانیفست است. فایل بسته برنامه می‌تواند هر نامی داشته باشد اما باید از پسوند .apk استفاده کند، به عنوان مثال، myExampleAppname.apk . برای راحتی، یک فایل بسته برنامه اغلب APK نامیده می‌شود.

مرتبط: اپلیکیشن

عمل
توضیحی از چیزی که فرستنده‌ی intent می‌خواهد انجام شود. یک action یک مقدار رشته‌ای است که به یک intent اختصاص داده می‌شود. رشته‌های action می‌توانند توسط اندروید یا توسط یک توسعه‌دهنده‌ی شخص ثالث تعریف شوند. به عنوان مثال، android.intent.action.VIEW برای یک URL وب، یا com.example.rumbler.SHAKE_PHONE برای یک برنامه‌ی سفارشی برای لرزش تلفن.

مرتبط: نیت

فعالیت
یک صفحه نمایش واحد در یک برنامه، با پشتیبانی از کد جاوا، مشتق شده از کلاس Activity . معمولاً، یک فعالیت به صورت قابل مشاهده توسط یک پنجره تمام صفحه نمایش داده می‌شود که می‌تواند رویدادهای رابط کاربری را دریافت و مدیریت کند و وظایف پیچیده‌ای را انجام دهد، به دلیل پنجره‌ای که برای رندر کردن پنجره خود استفاده می‌کند. یک فعالیت معمولاً تمام صفحه است، اما می‌تواند شناور یا شفاف نیز باشد.
برنامه
از دیدگاه کامپوننت، یک برنامه اندروید شامل یک یا چند اکتیویتی، سرویس، شنونده و گیرنده intent است. از دیدگاه فایل منبع، یک برنامه اندروید شامل کد، منابع، دارایی‌ها و یک مانیفست واحد است. در طول کامپایل، این فایل‌ها در یک فایل واحد به نام فایل بسته برنامه (APK) بسته‌بندی می‌شوند.

مرتبط: فایل APK (.apk) ، فعالیت

گیرنده پخش
یک شیء مبتنی بر کلاس BroadcastReceiver که به جای ارسال intent های broadcast شده به یک برنامه یا activity هدف واحد، به intent های broadcast شده گوش می‌دهد. سیستم یک intent broadcast را به تمام broadcast receiver های علاقه‌مند ارسال می‌کند که intent ها را به ترتیب مدیریت می‌کنند.

مرتبط: اینتنت ، فیلتر اینتنت

ارائه دهنده محتوا
یک لایه انتزاع داده که می‌توانید از آن برای نمایش ایمن داده‌های برنامه خود به برنامه‌های دیگر استفاده کنید. یک ارائه‌دهنده محتوا بر اساس کلاس ContentProvider ساخته شده است که رشته‌های پرس‌وجوی محتوا با فرمت خاص را برای بازگرداندن داده‌ها در یک فرمت خاص مدیریت می‌کند. برای اطلاعات بیشتر به ارائه‌دهندگان محتوا مراجعه کنید.

مرتبط: URI ها در اندروید

دیالوگ
یک پنجره شناور که به عنوان یک فرم سبک عمل می‌کند. یک کادر محاوره‌ای می‌تواند فقط کنترل‌های دکمه داشته باشد و برای انجام یک عمل ساده (مانند انتخاب دکمه) و شاید برگرداندن یک مقدار در نظر گرفته شده است. یک کادر محاوره‌ای برای ماندگاری در پشته تاریخچه، شامل طرح‌بندی پیچیده یا انجام اقدامات پیچیده در نظر گرفته نشده است. اندروید یک کادر محاوره‌ای ساده پیش‌فرض با دکمه‌های اختیاری ارائه می‌دهد، یا می‌توانید طرح‌بندی کادر محاوره‌ای خود را تعریف کنید. کلاس پایه برای کادرهای محاوره‌ای، Dialog است.

مرتبط: فعالیت

قصد
یک شیء پیام که می‌توانید برای راه‌اندازی یا ارتباط با سایر برنامه‌ها یا فعالیت‌ها به صورت غیرهمزمان از آن استفاده کنید. یک شیء intent نمونه‌ای از کلاس Intent است. این شیء شامل چندین فیلد معیار است که می‌توانید برای تعیین اینکه کدام برنامه یا فعالیت intent را دریافت می‌کند و گیرنده هنگام مدیریت intent چه کاری انجام می‌دهد، ارائه دهید. معیارهای موجود شامل اقدام مورد نظر، یک دسته، یک رشته داده، نوع MIME داده و یک کلاس مدیریت است. یک برنامه intent را به سیستم اندروید ارسال می‌کند، نه اینکه آن را مستقیماً به برنامه یا فعالیت دیگری ارسال کند. برنامه می‌تواند intent را به یک برنامه هدف واحد ارسال کند یا می‌تواند آن را به صورت broadcast ارسال کند که به نوبه خود می‌تواند توسط چندین برنامه به صورت متوالی مدیریت شود. سیستم اندروید مسئول حل بهترین گیرنده موجود برای هر intent، بر اساس معیارهای ارائه شده در intent و فیلترهای intent تعریف شده توسط سایر برنامه‌ها است. برای اطلاعات بیشتر، به Intents و فیلترهای intent مراجعه کنید.

مرتبط: فیلتر هدف ، گیرنده پخش

فیلتر قصد
یک شیء فیلتر که یک برنامه در فایل مانیفست خود اعلام می‌کند، تا به سیستم بگوید هر یک از اجزای آن مایل به پذیرش چه نوع intentهایی و با چه معیارهایی هستند. از طریق یک فیلتر intent، یک برنامه می‌تواند علاقه خود را به انواع داده‌های خاص، اقدامات intent، قالب‌های URI و غیره ابراز کند. هنگام حل یک intent، سیستم تمام فیلترهای intent موجود در همه برنامه‌ها را ارزیابی می‌کند و intent را به برنامه یا فعالیتی که به بهترین وجه با intent و معیارها مطابقت دارد، ارسال می‌کند. برای اطلاعات بیشتر، به Intents و فیلترهای intent مراجعه کنید.

مرتبط: اینتنت ، گیرنده پخش

منابع
اجزای غیربرنامه‌ای برنامه که خارج از کد کامپایل‌شده برنامه هستند، اما می‌توانند با استفاده از یک فرمت مرجع شناخته‌شده از کد برنامه بارگیری شوند. اندروید از انواع مختلفی از منابع پشتیبانی می‌کند، اما منابع یک برنامه معمولی شامل رشته‌های رابط کاربری، اجزای طرح‌بندی رابط کاربری، فایل‌های گرافیکی یا سایر فایل‌های رسانه‌ای و غیره است. یک برنامه از منابع برای پشتیبانی مؤثر از محلی‌سازی و پروفایل‌ها و حالت‌های مختلف دستگاه استفاده می‌کند. به عنوان مثال، یک برنامه شامل مجموعه‌ای جداگانه از منابع برای هر نوع محلی یا دستگاه پشتیبانی‌شده است و می‌تواند شامل منابع طرح‌بندی باشد که مختص جهت‌گیری فعلی صفحه نمایش (افقی یا عمودی) هستند. برای اطلاعات بیشتر در مورد منابع، به نمای کلی منابع برنامه مراجعه کنید. منابع یک برنامه همیشه در زیرپوشه‌های res/* پروژه ذخیره می‌شوند.
خدمات
یک شیء از کلاس Service که در پس‌زمینه (بدون هیچ گونه حضور رابط کاربری) اجرا می‌شود تا اقدامات مداوم مختلفی مانند پخش موسیقی یا نظارت بر فعالیت شبکه را انجام دهد.

مرتبط: فعالیت

URI ها در اندروید
اندروید از رشته‌های شناسه منبع یکنواخت (URI) به عنوان مبنایی برای درخواست داده در یک ارائه‌دهنده محتوا (مانند بازیابی لیستی از مخاطبین) و برای درخواست اقدامات در یک intent (مانند باز کردن یک صفحه وب در مرورگر) استفاده می‌کند. طرح و قالب URI بسته به نوع استفاده، تخصصی می‌شود و یک برنامه می‌تواند طرح‌ها و رشته‌های URI خاص را به هر روش ترجیحی مدیریت کند. برخی از طرح‌های URI توسط اجزای سیستم رزرو شده‌اند. به عنوان مثال، درخواست‌های داده از یک ارائه‌دهنده محتوا باید از content:// استفاده کنند. در یک intent، یک URI که از طرح http:// استفاده می‌کند توسط مرورگر مدیریت می‌شود.

ساختن

adb
Android Debug Bridge، یک برنامه اشکال‌زدایی خط فرمان که در SDK گنجانده شده است. adb ابزارهایی برای مرور دستگاه، کپی کردن ابزارها روی دستگاه و ارسال پورت‌ها برای اشکال‌زدایی فراهم می‌کند. اگر در اندروید استودیو در حال توسعه هستید، adb در محیط توسعه شما ادغام شده است. این مخفف با حروف کوچک و به صورت متن ساده نوشته شده است. هنگام اشاره خاص به دستور، به صورت adb نوشته می‌شود. برای اطلاعات بیشتر به بخش «تأیید کنید که fastboot و adb دارید» مراجعه کنید.
پروژه اندروید
یک مخزن گیت روی یک میزبان اندروید گریت. برای اطلاعات بیشتر در مورد نحوه کار گیت، به ویرایشگر منبع گیت مراجعه کنید.

مرتبط: مخزن گیت

ساخت اثر انگشت
یک رشته منحصر به فرد و قابل خواندن توسط انسان که حاوی اطلاعات سازنده است که برای هر نسخه صادر می‌شود. برای اطلاعات بیشتر به ساخت بسته‌های OTA مراجعه کنید.
شاخه گیت - متعارف
نسخه‌های متمایز برای هر مخزن گیت، مانند android-11.0.0_r1 ، که در cs.android.com/android/platform/superproject/+/android-11.0.0_r1 یافت می‌شود. برای اطلاعات بیشتر به بخش شاخه‌بندی گیت - شاخه‌ها به طور خلاصه مراجعه کنید.
شاخه گیت - محلی
یک شاخه موقت در کلاینت Repo فعلی برای ایجاد تغییرات کد، که با دستور repo start branch-name . آغاز شده است. این یک خط توسعه فعال است. جدیدترین کامیت روی یک شاخه، نوک آن شاخه نامیده می‌شود.
مخزن گیت
گاهی اوقات پروژه نامیده می‌شود، این بخشی از کدبیس است که نشان‌دهنده یک جزء یا نوع خاص از دستگاه است، مانند frameworks/base یا platform/packages/apps/Car/Media .

مرتبط با: پروژه اندروید

فایل مانیفست
یک فایل XML که گروه‌بندی مخازن Git را در هر شاخه، ویرایش‌های Git که باید در آن به آن مخازن مراجعه شود و طرح‌بندی آنها در یک سیستم فایل را شرح می‌دهد. این فایل XML که معمولاً default.xml نام دارد، با یک شاخه Repo مرتبط است و مخازن Git و شاخه‌های Git که هنگام مقداردهی اولیه و همگام‌سازی شاخه Repo بررسی می‌شوند را شرح می‌دهد. این فایل، مخازن Git مختلفی را که ابزار Repo باید برای ساخت یک محصول (مانند سیستم عامل Android Automotive) به یک پرداخت کلاینت Repo وارد کند، تعریف می‌کند. همه مانیفست‌ها را در android.googlesource.com/platform/manifest/+refs مشاهده کنید. مانیفست پیش‌فرض موجود در فایل‌های مانیفست را برای دریافت فایل‌های پلتفرم اندروید (AOSP) در android.googlesource.com/platform/manifest/+/refs/heads/android16-qpr1-release/default.xml مشاهده کنید. برای اطلاعات برنامه و قالب مانیفست مخزن برای توسعه پلتفرم، به نمای کلی مانیفست برنامه مراجعه کنید.
به‌روزرسانی از طریق هوا (OTA)
دستگاه‌های اندروید در محل می‌توانند به‌روزرسانی‌های سیستم، نرم‌افزار برنامه‌ها و قوانین منطقه زمانی را به‌صورت بی‌سیم (OTA) دریافت و نصب کنند. برای اطلاعات بیشتر به به‌روزرسانی‌های OTA مراجعه کنید.
شعبه‌ی رپو
مجموعه‌ای از مخازن گیت که در یک فایل مانیفست ذخیره شده‌اند و نشان‌دهنده‌ی نسخه‌ای (build) از کدبیس اندروید، مانند android11-gsi یا aosp-android-games-sdk هستند که با دستورات repo init و repo sync دانلود شده‌اند. برای مشاهده‌ی لینک‌های مربوط به تمام فایل‌های مانیفست و استفاده از جستجوی کد اندروید برای جستجوی نسخه‌های ساخته‌شده‌ی آن‌ها، به توضیحات فایل مانیفست مراجعه کنید.
آپروو
به طور کلی، uprev یک زیرپروژه تشکیل‌دهنده یک پروژه بزرگتر را به نسخه جدیدتر به‌روزرسانی می‌کند. uprev سطح ویرایش را یا به نسخه افزایشی بعدی یا به آخرین نسخه موجود تغییر می‌دهد. در مورد یک بسته HIDL، برای حفظ توسعه‌پذیری سازگار با نسخه‌های قبلی در سطح بسته ، uprev نسخه فرعی، بسته جدید را به یک نسخه فرعی بالاتر به‌روزرسانی می‌کند در حالی که همان نام و نسخه اصلی بسته قدیمی را حفظ می‌کند. در مورد پیکربندی Bootloader ، uprev پشتیبانی از نسخه سربرگ بوت را به آخرین نسخه به‌روزرسانی می‌کند.

پلتفرم

زمان اجرای اندروید (ART) و دالویک
زمان اجرای اندروید (ART) زمان اجرای مدیریت‌شده‌ای است که توسط برنامه‌ها و برخی سرویس‌های سیستمی در اندروید استفاده می‌شود. ART زمان اجرای پیش‌فرض برای دستگاه‌هایی است که اندروید ۵.۰ (سطح API ۲۱) و بالاتر را اجرا می‌کنند. ART و نسخه قبلی آن، Dalvik، در ابتدا به‌طور خاص برای پروژه متن‌باز اندروید ایجاد شدند. ART به‌عنوان زمان اجرای، فرمت اجرایی Dalvik و مشخصات بایت‌کد Dex را اجرا می‌کند. ART و Dalvik زمان‌های اجرای سازگار با بایت‌کد Dex هستند، بنابراین برنامه‌های توسعه‌یافته برای Dalvik باید هنگام اجرا با ART کار کنند.
فایل DEX (.dex)
فایل کد برنامه اندروید کامپایل شده. برنامه‌های اندروید در فایل‌های اجرایی Dalvik (DEX) با پسوند .dex کامپایل می‌شوند که به نوبه خود در یک فایل APK واحد در دستگاه فشرده می‌شوند. فایل‌های DEX را می‌توان با ترجمه خودکار برنامه‌های کامپایل شده نوشته شده به زبان برنامه‌نویسی جاوا ایجاد کرد.