Auf dieser Seite wird beschrieben, wie Sie Nutzer so einrichten können, dass sie Hotspots zwischen den Fahrsitzungen beibehalten können, ähnlich wie bei der WLAN-Nutzung in 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";
}
}
Wenn Sie die Tethering-Funktion beibehalten möchten, verwenden Sie ENABLE_PERSISTENT_TETHERING über die
Settings API,
die auch für Abfragen verwendet werden kann.
Berechtigungen
Die Verwendung der CarWifiManager API ist eingeschränkt. Diese neue Berechtigung wurde erstellt, um den Zugriff zu schützen.
public boolean canControlPersistApSettings() { ... }
Die Schutzstufen für diese Berechtigung sind:
| Neue Berechtigung | Berechtigung | Schutzniveau |
|---|---|---|
| Ja | READ_PERSIST_TETHERING_SETTINGS |
Signatur | Privilegiert |
Das Verhalten „Beibehalten“ ist standardmäßig nicht unterstützt. Ein Ressourcen-Overlay
(config_enablePersistTetheringCapabilities) ist so konfiguriert, dass die
Möglichkeit zum Beibehalten der Tethering-Funktion blockiert wird. Wenn Sie die Tethering-Funktion beibehalten möchten, setzen Sie den Wert auf true, um die Funktion zusätzlich zur Opt-in-Einstellung des Nutzers zu aktivieren. Andere System-Apps mit der Berechtigung WRITE_SECURE_SETTINGS können diese Einstellung ebenfalls steuern.
Mit der folgenden API wird ermittelt, ob das Verhalten aktiviert ist. Rufen Sie diese API auf, bevor Sie ENABLE_PERSISTENT_TETHERING ändern.
/**
* 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() { ... }
}