این صفحه نحوه تنظیم کاربران برای حفظ هاتاسپات بین جلسات رانندگی، مشابه تجربه رانندگی با وایفای در 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 محدود شده است. این مجوز جدید برای محافظت از دسترسی ایجاد شده است.
public boolean canControlPersistApSettings() { ... }
سطوح حفاظت برای این مجوز عبارتند از:
| اجازه جدید | اجازه | سطح حفاظت |
|---|---|---|
| بله | READ_PERSIST_TETHERING_SETTINGS | امضا | ممتاز |
رفتار persist به صورت پیشفرض روی « پشتیبانی نمیشود» تنظیم شده است. یک پوشش منبع ( config_enablePersistTetheringCapabilities ) پیکربندی شده است تا قابلیت persistent tethering را مسدود کند. برای persistent tethering عمدی، مقدار را روی 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() { ... }
}