ساخت مرورگر برای سیستم عامل Android Automotive

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

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

برنامه خود را به عنوان مرورگر علامت گذاری کنید

برای اینکه نشان دهید برنامه شما یک مرورگر است، باید یک فیلتر intent مانند زیر را در یک عنصر <activity> صادر شده قرار دهید:

<activity ...
    android:exported="true">
  ...
  <intent-filter>
    <action android:name="android.intent.action.VIEW"/>
    <category android:name="android.intent.category.DEFAULT"/>
    <category android:name="android.intent.category.BROWSABLE"/>
    <data android:scheme="http"/>
  </intent-filter>
</activity>

به کاربران اجازه دهید دسترسی به داده‌های حساس را مسدود کنند

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

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

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

این بخش راهنمایی‌هایی در مورد نحوه استفاده از APIهای اعتبارنامه دستگاه و احراز هویت سیستم برای برآورده کردن الزامات داده‌های حساس که قبلاً توضیح داده شد، ارائه می‌دهد.

بررسی کنید که آیا مجموعه اعتبارنامه دستگاه وجود دارد یا خیر

برای تعیین اینکه آیا کاربر دستگاه خود را با پین، الگو یا رمز عبور ایمن کرده است، می‌توانید از متد KeyguardManager::isDeviceSecure استفاده کنید.

کاتلین

val keyguardManager = context.getSystemService(KeyguardManager::class.java)
val isDeviceSecure = keyguardManager.isDeviceSecure()

جاوا

KeyguardManager keyguardManager = (KeyguardManager) context.getSystemService(Context.KEYGUARD_SERVICE);
boolean isDeviceSecure = keyguardManager.isDeviceSecure();

تنظیمات قفل صفحه را باز کنید

برای کاهش دردسر کاربر در صورتی که نیاز به تنظیم اعتبارنامه دستگاه داشته باشد، می‌توانید با استفاده از اکشن Settings.ACTION_SECURITY_SETTINGS صفحه امنیت را در برنامه تنظیمات باز کنید.

کاتلین

context.startActivity(Intent(Settings.ACTION_SECURITY_SETTINGS))

جاوا

context.startActivity(new Intent(Settings.ACTION_SECURITY_SETTINGS))

کاربر را وادار به احراز هویت کنید

برای وادار کردن کاربر به احراز هویت، می‌توانید از API BiometricPrompt همانطور که در بخش «نمایش یک پنجره احراز هویت بیومتریک» توضیح داده شده است، استفاده کنید.