使用仅限局域网的 Wi-Fi 热点

您可以使用仅限局域网的热点,使连接到 Wi-Fi 热点的设备上的应用程序能够相互通信。此方法创建的网络将无法访问互联网。每个应用程序可以发出一个热点请求,但多个应用程序可以同时请求热点。当多个应用程序成功同时注册时,它们共享底层热点。LocalOnlyHotspotCallback.onStarted(LocalOnlyHotspotReservation) 在热点可以使用时调用。

如果您的应用的目标平台是 Android 13(API 级别 33)或更高版本,则必须请求NEARBY_WIFI_DEVICES权限才能使用仅限局域网的热点,如下面的代码片段所示。面向早期 Android 版本的应用必须改为请求ACCESS_FINE_LOCATION权限。

<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>

有关使用仅限局域网热点的更多详细信息,请参阅startLocalOnlyHotspot()