Trang này mô tả cách bạn có thể thiết lập người dùng để duy trì điểm phát sóng giữa các phiên lái xe, tương tự như trải nghiệm lái xe bằng Wi-Fi trong 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";
}
}
Để duy trì tính năng chia sẻ Internet, hãy sử dụng ENABLE_PERSISTENT_TETHERING
thông qua API Cài đặt. Bạn cũng có thể dùng API này để truy vấn.
Quyền
Việc sử dụng API CarWifiManager bị hạn chế. Quyền mới này được tạo để bảo vệ quyền truy cập.
public boolean canControlPersistApSettings() { ... }
Các cấp độ bảo vệ cho quyền này là:
Quyền mới | Quyền | Mức độ bảo vệ |
---|---|---|
Có | READ_PERSIST_TETHERING_SETTINGS |
Chữ ký | Đặc quyền |
Hành vi duy trì mặc định là không được hỗ trợ. Lớp phủ tài nguyên (config_enablePersistTetheringCapabilities
) được định cấu hình để chặn khả năng tiếp tục chia sẻ Internet. Để cố ý duy trì tính năng chia sẻ Internet, hãy đặt giá trị thành true
để bật tính năng này ngoài lựa chọn ưu tiên của người dùng vì các ứng dụng hệ thống khác có quyền WRITE_SECURE_SETTINGS
cũng có thể kiểm soát chế độ cài đặt này.
API sau đây xác định xem hành vi này có được bật hay không. Gọi API này trước khi bạn thay đổi ENABLE_PERSISTENT_TETHERING
.
/**
* 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() { ... }
}