Auf dieser Seite wird beschrieben, wie Sie Nutzer so einrichten können, dass sie Hotspots zwischen den Fahrten beibehalten können, ähnlich wie bei der WLAN-Fahrt 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 Tethering 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 Schutzebenen für diese Berechtigung sind:
Neue Berechtigung | Berechtigung | Schutzniveau |
---|---|---|
Ja | READ_PERSIST_TETHERING_SETTINGS |
Signatur | Privileged |
Das Standardverhalten für „persist“ ist nicht unterstützt. Ein Ressourcen-Overlay (config_enablePersistTetheringCapabilities
) ist so konfiguriert, dass das Speichern von Tethering-Einstellungen verhindert wird. Wenn Sie das Tethering absichtlich beibehalten möchten, legen Sie den Wert auf true
fest, um die Funktion zusätzlich zur Einwilligung des Nutzers zu aktivieren, da auch andere System-Apps mit der Berechtigung WRITE_SECURE_SETTINGS
diese Einstellung steuern können.
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() { ... }
}