Usar um ponto de acesso Wi-Fi somente local

Você pode usar um ponto de acesso somente local para permitir que aplicativos em dispositivos conectados ao ponto de acesso Wi-Fi se comuniquem entre si. A rede criada por esse método não terá acesso à Internet. Cada aplicativo pode fazer uma única solicitação para o ponto de acesso, mas vários aplicativos podem solicitar o ponto de acesso ao mesmo tempo. Quando vários aplicativos são registrados simultaneamente, eles compartilham o hotspot subjacente. LocalOnlyHotspotCallback.onStarted(LocalOnlyHotspotReservation) é chamado quando o ponto de acesso está pronto para uso.

Se o app for direcionado ao Android 13 (nível 33 da API) ou versões mais recentes, é necessário solicitar a permissão NEARBY_WIFI_DEVICES para usar um ponto de acesso somente local, como mostrado no snippet de código a seguir. Os apps que segmentam uma versão anterior do Android precisam solicitar ACCESS_FINE_LOCATION em vez disso.

<manifest ...>
    <<!-- If your app targets Android 13 (API level 33)
          or higher, you must declare the NEARBY_WIFI_DEVICES permission. -->
    <uses-permission android:name="android.permission.NEARBY_WIFI_DEVICES"
                     <!-- If your app derives location information from
                          Wi-Fi APIs, don't include the "usesPermissionFlags"
                          attribute. -->
                     android:usesPermissionFlags="neverForLocation" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"
                     <!-- If any feature in your app relies on
                          precise location information, don't include the
                          "maxSdkVersion" attribute. -->
                     android:maxSdkVersion="32" />
    <application ...>
        ...
    </application>
</manifest>

Para mais detalhes sobre como usar pontos de acesso somente locais, consulte startLocalOnlyHotspot().