سرویس دوربین اندروید

سرویس دوربین اندروید (ACS) شامل مجموعه دوربین‌های مورد استفاده در دستگاه‌های خودرو و همچنین در سایر فرم فاکتورها مانند تلفن‌های همراه، تبلت‌ها و تلویزیون‌ها می‌شود. برای مشاهده معماری کلی دوربین، به بخش دوربین مراجعه کنید. این صفحه بر موضوعات خاص دستگاه‌های خودرو و کار با API دوربین اندروید تمرکز دارد.

فعال کردن سرویس دوربین اندروید

برای فعال کردن سرویس دوربین اندروید در پلتفرم خودرو، فایل ساخت محصول باید ENABLE_CAMERA_SERVICE به صورت true مشخص کند.

ویژگی‌های دوربین مخصوص خودرو

در زمینه دستگاه‌های خودرو، دوربین HAL باید شامل دو ویژگی متمایز مختص به فرم فاکتور خودرو باشد:

مورد توضیحات
android.automotive.location موقعیت دوربین‌ها را نسبت به قاب بدنه خودرو مشخص می‌کند.
android.automotive.lens.facing جهت قرارگیری لنز دوربین نسبت به بدنه خودرو و صندلی‌های سرنشینان را نشان می‌دهد.

در شرایطی که دوربین‌ها دقیقاً با موقعیت مکانی یا جهت لنز خاص هم‌تراز نمی‌شوند (که با وجود *_OTHER در ویژگی‌های android.automotive.location یا android.automotive.lens.facing مشخص می‌شود)، یا وقتی چندین دوربین موقعیت مکانی و جهت یکسانی دارند، HAL دوربین باید ویژگی‌های اضافی را ارائه دهد تا برنامه‌ها بتوانند موقعیت مکانی دوربین را به طور دقیق تعیین کنند. این ویژگی‌ها عبارتند از:

اعطای دسترسی به کاربر سیستم بدون سر (Headless System User)

برخی از برنامه‌های سیستمی و شخص ثالث (1P) می‌توانند به عنوان کاربر سیستم بدون سر (Headless System User) که با نام کاربر 0 نیز شناخته می‌شود، به دوربین دسترسی داشته باشند. این امر به تأیید این امر کمک می‌کند که برنامه‌های حیاتی برای ایمنی، مانند دوربین دید عقب، می‌توانند بدون وقفه و صرف نظر از تغییر کاربر پیش‌زمینه، به پخش جریانی دوربین ادامه دهند. فقط برنامه‌هایی که توسط پلتفرم امضا شده‌اند و مجوز جدید android.permission.CAMERA_HEADLESS_SYSTEM_USER را دارند، می‌توانند به عنوان کاربر 0 به دوربین دسترسی داشته باشند.

برای برنامه‌هایی که به عنوان کاربر 0 به دوربین‌ها دسترسی دارند، داده‌های دوربین باید به صورت محلی مصرف شوند و نباید از دستگاه خارج شوند، از جمله هرگونه داده‌ای که از داده‌های دوربین مشتق شده است. این برنامه‌ها نیاز دارند که مجوز android.permission.CAMERA از قبل اعطا شده باشد و باید به سیاست مجوز پیش از اعطای مجوز که در الزامات داخلی Design for Driving for Google ذکر شده است، پایبند باشند.

پیکربندی لیست مجوزهای حریم خصوصی دوربین

تولیدکنندگان تجهیزات اصلی (OEMها) اکنون می‌توانند برنامه‌های دوربین خاصی را طوری پیکربندی کنند که در یک لیست مجاز قرار گیرند که صرف نظر از وضعیت دکمه‌ی حریم خصوصی دوربین، دسترسی به دوربین را مجاز می‌کند. این ویژگی به کاربران امکان می‌دهد دسترسی به دوربین را برای برنامه‌های سرگرمی، مانند رسانه‌های اجتماعی و کنفرانس ویدیویی، غیرفعال کنند، در حالی که همزمان دسترسی به دوربین را برای برنامه‌های خاصی در لیست مجاز مجاز می‌کنند.

فقط برنامه‌های سیستمی و ممتاز که مجوز android.permission.CAMERA_PRIVACY_ALLOWLIST به آنها اعطا شده است می‌توانند از این ویژگی استفاده کنند. شرکای خدمات خودروسازی گوگل (GAS) باید برنامه‌های خود را برای بررسی در فهرست مجاز قرار دهند و از خط‌مشی فهرست مجاز حریم خصوصی پیروی کنند. برای کسب اطلاعات بیشتر، به Android for Cars مراجعه کنید.

یک برنامه را به لیست مجاز اضافه کنید

در دایرکتوری etc/sysconfig :

  1. نام بسته برنامه را در یک فایل XML پیکربندی سیستم اضافه کنید:

    <!-- In an xml file under etc/sysconfig ->
    
    <!--
    Allowlisted packages for the camera privacy toggle. Users can't turn on
    privacy for these packages as OEM requires camera access for these packages
    to preserve user safety.
    -->
    
    <config>
        <camera-privacy-allowlisted-app package="package_name" />
    </config>
    
  2. آدرس اینترنتی (URL) برنامه مربوط به افشای سیاست حفظ حریم خصوصی را به AndroidManifest.xml اضافه کنید. نام meta-data باید privacy_policy باشد.

    <meta-data android:name="privacy_policy" android:value= privacy policy URL/>
    

به طور پیش‌فرض، ضامن حریم خصوصی دوربین برای برنامه‌های موجود در لیست مجاز یا برنامه‌های مورد نیاز، در رابط کاربری تنظیمات حریم خصوصی پنهان است. با این حال، تولیدکنندگان اصلی تجهیزات (OEM) می‌توانند با تنظیم پرچم زیر روی true ، این رفتار را نادیده بگیرند. این به تولیدکنندگان اصلی تجهیزات اجازه می‌دهد تا میزان نمایش ضامن حریم خصوصی دوربین را برای برنامه‌های مورد نیاز بر اساس تنظیمات برگزیده خود سفارشی کنند.

<!-- Whether to show the toggle to turn on the camera privacy for required apps -->

<bool name="config_show_camera_required_apps_toggle">false</bool>

دسترسی زودهنگام به دوربین

برنامه‌های خاص حساس به زمان و با محوریت ایمنی می‌توانند قبل از اتمام فرآیند بوت اندروید به دوربین دسترسی داشته باشند. با این حال، این دسترسی منحصراً به مشتریان ممتاز با UID AID_AUTOMOTIVE_EVS اعطا می‌شود. برای کسب اطلاعات بیشتر در مورد اختصاص یک شناسه کاربری خاص به یک برنامه سیستمی، به کنترل دسترسی اختیاری (DAC) مراجعه کنید. این دسترسی زودهنگام به دوربین محدود به دوربین‌های سیستمی است که در قسمت بیرونی بدنه خودرو قرار گرفته‌اند.