نقاط داغ بین جلسات رانندگی را حفظ کنید

این صفحه توضیح می‌دهد که چگونه می‌توانید کاربران را برای حفظ نقاط اتصال بین جلسات رانندگی، مشابه تجربه رانندگی Wi-Fi در AAOS، تنظیم کنید.

public class CarSettings {
  ...

  @SystemApi
  public static final class Global {
    ...

    /**
     * Enables persistent tethering when set to {@code "true"}.
     *
     * <p>When enabled, tethering is started when the car is started given
     * that the hotspot was enabled at shutdown and all tethering sessions
     * will remain on even if no devices are connected to it.
     *
     * <p>When disabled, hotspot will turn off automatically if no devices
     * are connected and will no longer persist through drives.
     *
     * @hide
     */
    @SystemApi
    public static final String ENABLE_PERSISTENT_TETHERING =
           "android.car.ENABLE_PERSISTENT_TETHERING";
  }
}

برای تداوم اتصال به اینترنت، از ENABLE_PERSISTENT_TETHERING از طریق تنظیمات API استفاده کنید، که می تواند برای پرس و جو نیز استفاده شود.

مجوزها

استفاده از CarWifiManager API محدود شده است. این مجوز جدید برای محافظت از دسترسی ایجاد شده است.

public boolean canControlPersistApSettings() { ... }

سطوح حفاظتی برای این مجوز عبارتند از:

مجوز جدید اجازه سطح حفاظت
آره READ_PERSIST_TETHERING_SETTINGS امضا | ممتاز

پیش‌فرض رفتار persist روی عدم پشتیبانی قرار می‌گیرد. یک پوشش منبع ( config_enablePersistTetheringCapabilities ) برای مسدود کردن توانایی تداوم اتصال به اینترنت پیکربندی شده است. برای تداوم عمدی اتصال به اینترنت، مقدار را روی true تنظیم کنید تا این ویژگی در بالای انتخاب ترجیحی کاربر فعال شود زیرا سایر برنامه‌های سیستم با مجوز WRITE_SECURE_SETTINGS نیز می‌توانند این تنظیم را کنترل کنند.

API زیر تعیین می کند که آیا رفتار فعال است یا خیر. قبل از تغییر ENABLE_PERSISTENT_TETHERING با این API تماس بگیرید.

/**
 * CarWifiManager provides API to allow for applications to perform Wi-Fi specific
 * operations.
 *
 * @hide
 */
@SystemApi
public final class CarWifiManager extends CarManagerBase {
 /**
  * Returns {@code true} if the persist tethering settings are able to be
  * changed.
  *
  * @hide
  */
 @SystemApi
 @RequiresPermission(Car.PERMISSION_READ_PERSIST_TETHERING_SETTINGS)
 public boolean canControlPersistApSettings() { ... }
}