مایکروسافت لنز محصولی است که خواندن تصاویر اسناد و تختههای سفید را آسانتر میکند. تیم مایکروسافت لنز نگران بود که Camera1 API، یک API فریمورک اندروید که شامل پشتیبانی از دوربینها و ویژگیهای دوربین است، در دستگاههای اندرویدی مدرن برای آنها عملکرد ناسازگاری دارد. آنها به دنبال ساخت چیزی جدید بودند و مشخص کردند که سریعترین مسیر توسعه استفاده از CameraX برای دریافت ویژگیهای مدرن یک تلفن دوربیندار است.
کاری که آنها انجام دادند
مایکروسافت تصمیم گرفت از CameraX برای مجموعه برنامه های بهره وری خود که از Microsoft Lens استفاده می کنند استفاده کند. CameraX یک کتابخانه پشتیبانی از Android Jetpack منبع باز است که ساخت عملکرد دوربین در برنامه های اندروید را برای توسعه دهندگان ساده تر می کند. CameraX با تمام ابزارهای مایکروسافت لنز ادغام می شود تا از استفاده از تصاویر با کیفیت بالا در برنامه های منتخب اطمینان حاصل کند. CameraX همچنین با ارائه یک API سادهتر، تجربه توسعهدهنده را بهبود میبخشد و در ۹۴ درصد دستگاههای اندرویدی کار میکند. با تغییر به CameraX، تیم مایکروسافت لنز توانست مشکلات عملکرد خود را حل کند، بهره وری توسعه دهندگان را افزایش دهد و زمان ورود به بازار را کاهش دهد.
نتایج
تیم مایکروسافت لنز دریافت که پیادهسازی کتابخانه CameraX باعث صرفهجویی قابل توجهی در زمان توسعهدهندگان آنها میشود که نتیجه آن چرخههای تست و بهینهسازی کمتر است. آنها تخمین می زنند که CameraX برای تیم مهندسی آنها در مقایسه با Camera2 که حدود شش ماه طول می کشد، حدود چهار ماه تلاش کرده است.
با CameraX پیکربندی ویژگیهایی مانند وضوح، نسبت تصویر، چرخش تصویر، کیفیت عکسبرداری و غیره آسانتر است، در مقایسه با Camera1 API، که به تلاش و زمان ادغام کمک میکرد. Vishal Bhatnagar، مدیر مهندس نرم افزار اصلی، گفت: CameraX به صورت داخلی وضعیت را کنترل می کند (برای باز و بسته کردن دوربین) در حالی که کاربران بین برنامه ها سوئیچ می کنند، خطوط کد را برای یکپارچه سازی کاهش می دهد و همچنین به بهره وری توسعه دهندگان کمک می کند تا بر منطق تجاری به جای حالت بازنشانی برنامه تمرکز کنند. در مایکروسافت
استفاده از CameraX باعث شد تا مایکروسافت در مقایسه با Camera1 عملکرد بهتری در راه اندازی و عکس برداری داشته باشد. عملکرد آنها در دستگاههای اندرویدی مدرن در راهاندازی و ضبط 2 برابر افزایش یافت و برخی از دستگاهها حتی شاهد افزایش عملکرد 3 برابری بودند (اگرچه این میزان در دستگاهها متفاوت است). علاوه بر این، فعال کردن عملکرد اسکن هسته در مقایسه با تخمینها برای Camera2 آسانتر بود. از نظر تکه تکه شدن دستگاه، CameraX به طور موثر بسیاری از تغییرات Camera2 دستگاه ها را در اجرای بسیاری از دستگاه های OEM پنهان می کند.
تیم مایکروسافت در حال حاضر در حال ادغام CameraX در برخی از دیگر برنامه های اندرویدی خود مانند Office، Teams، OneDrive، Word، Excel، PowerPoint، Microsoft Lens و My Hub هستند. همه این برنامه ها از CameraX برای عملکرد ضبط تصویر در سناریوهایی مانند اسکن سند و استخراج تصویر به موجودیت (مانند تصویر به جدول، تصویر به متن) استفاده می کنند. تیم مایکروسافت همچنین قصد دارد به زودی CameraX را در Outlook پیاده سازی کند و پتانسیل آن را برای برنامه های دیگر مانند Kaizala بررسی کند.
شروع کنید
برای کسب اطلاعات بیشتر درباره نحوه پیاده سازی CameraX در برنامه خود، از اسناد ما دیدن کنید.