نمای کلی CameraX   بخشی از Android Jetpack.

‫CameraX یک کتابخانه Jetpack است که برای کمک به آسان‌تر کردن توسعه برنامه دوربین ساخته شده است. برای برنامه‌های جدید، توصیه می‌کنیم با CameraX شروع کنید. این کتابخانه یک میانای برنامه‌سازی کاربردی (API) سازگار و آسان برای استفاده ارائه می‌دهد که در اکثر دستگاه‌های Android کار می‌کند و با Android 5.0 (سطح API 21) سازگاری با نسخه قدیمی دارد. اگر برنامه‌ای را از Camera1 منتقل می‌کنید، راهنمای انتقال Camera1 به CameraX ما را ببینید.

مزایای اصلی

CameraX تجربه توسعه‌دهنده را از چند جهت کلیدی بهبود می‌بخشد.

سازگاری گسترده با دستگاه‌ها

CameraX از دستگاه‌های دارای Android 5.0 (سطح میانای برنامه‌سازی کاربردی ۲۱) و بالاتر پشتیبانی می‌کند، که بیش‌از ۹۸٪ دستگاه‌های Android موجود را تشکیل می‌دهند.

کاربری آسان

CameraX بر موارد استفاده تأکید می‌کند، که به شما امکان می‌دهد به‌جای مدیریت تفاوت‌های ظریف خاص دستگاه، بر وظیفه‌ای که باید انجام دهید تمرکز کنید. رایج‌ترین موارد استفاده از دوربین پشتیبانی می‌شود:

  • پیش‌نمایش: تصویری را در نمایشگر مشاهده کنید.
  • تحلیل تصویر: دسترسی یکپارچه به میان‌گیر برای استفاده در الگوریتم‌هایتان، مثلاً برای ارسال به ML Kit.
  • ضبط تصویر: ذخیره کردن تصاویر.
  • ضبط ویدیو: ویدیو و صدا را ذخیره کنید.

هماهنگی در همه دستگاه‌ها

شکل ۲. آزمایشگاه آزمایشی CameraX خودکارشده تجربه میانای برنامه‌سازی کاربردی ثابتی را در انواع مختلف دستگاه‌ها و سازندگان تضمین می‌کند.

حفظ رفتار ثابت دوربین دشوار است. باید نسبت ابعادی، جهت، چرخش، اندازه پیش‌نمایش، و اندازه تصویر را درنظر بگیرید. با CameraX، این رفتارهای پایه به‌راحتی کار می‌کنند.

ما یک آزمایشگاه آزمایشی CameraX خودکار داریم که انواع رفتارهای دوربین را در طیفی از دستگاه‌ها و همه نسخه‌های سیستم‌عامل از Android 5.0 آزمایش می‌کند. این آزمایش‌ها به‌طور مداوم اجرا می‌شوند تا طیف گسترده‌ای از مشکلات را شناسایی و برطرف کنند.

افزونه‌های دوربین

شکل ۳. تصویری که بااستفاده از CameraX با جلوه بوکه (چهره) گرفته شده است.

CameraX دارای یک میانای برنامه‌سازی کاربردی اختیاری افزونه‌ها است که به شما امکان می‌دهد با تنها دو خط کد به همان ویژگی‌ها و قابلیت‌های برنامه دوربین بومی دستگاه دسترسی داشته باشید.

افزونه‌ها شامل بوکه (چهره)، دامنه پویای بالا (HDR)، حالت شب، و رتوش چهره است که همه آن‌ها به پشتیبانی دستگاه نیاز دارند.

مطالعه موردی

برای دیدن اینکه CameraX چگونه توسعه را برای Monzo ساده کرده است، مطالعه موردی آن‌ها را ببینید.

اسناد

منابع بیشتر

برای کسب اطلاعات بیشتر درباره CameraX، به منابع اضافی زیر مراجعه کنید.

Codelab

  • شروع به کار کردن با CameraX
  • نمونه کد

  • برنامه‌های نمونه CameraX