Hotspots zwischen den Fahrsitzungen beibehalten

Auf dieser Seite wird beschrieben, wie Sie Nutzer so einrichten können, dass sie Hotspots zwischen wie beim Fahren mit dem WLAN bei 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";
  }
}

Um das Tethering beizubehalten, verwenden Sie ENABLE_PERSISTENT_TETHERING über die Settings API die auch für Abfragen verwendet werden können.

Berechtigungen

Die Verwendung der CarWifiManager API ist eingeschränkt. Diese neue Berechtigung wird erstellt, um und den Zugang bewachen.

public boolean canControlPersistApSettings() { ... }

Die Schutzstufen für diese Berechtigung sind:

Neue Berechtigung Berechtigung Schutzniveau
Ja READ_PERSIST_TETHERING_SETTINGS Signatur | Privilegiert

Das dauerhafte Verhalten lautet standardmäßig not supported (nicht unterstützt). Ein Ressourcen-Overlay (config_enablePersistTetheringCapabilities) ist so konfiguriert, dass Folgendes blockiert wird: Möglichkeit zum dauerhaften Tethering. Um das Tethering bewusst beizubehalten, legen Sie den Parameter Wert auf true setzen, um die Funktion zusätzlich zu den Nutzereinstellungen zu aktivieren da andere System-Apps mit der Berechtigung „WRITE_SECURE_SETTINGS“ auch diese Einstellung steuern.

Die folgende API bestimmt, ob das Verhalten aktiviert ist. Rufen Sie diese API vor dem ändern Sie 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() { ... }
}