After users upgrade their iOS devices to iOS 14.0, and use an app that integrates the Agora RTC SDK for iOS for the first time, users see a prompt for finding local network devices. The following picture shows the pop-up prompt:
iOS 14.0 adds a privacy setting relating to local network usage, and your app needs to obtain the Privacy - Local Network Usage Description permission from the user to access the user's local network device.
Agora RTC SDK for iOS with the version earlier than v3.1.2 detects the connection quality between the client and the user's local router, and reports the round-trip delay between the client and the user's local router by using the
gatewayRtt parameter of the
reportRtcStats callback. The iOS system determines the connectivity detection as a search for local network devices. Thus, although the app does not connect to any devices on the user's local network, the user sees a prompt to find local network devices when launching an iOS app for the first time.
As of v3.1.2, Agora RTC SDK for iOS disables the local network connection quality report. If your business does not rely on this function, Agora recommends this solution.
Integrate the SDK v3.1.2 and above, and users will not see the prompt to find local network devices. As of v3.1.2, the
gatewayRtt parameter in the
reportRtcStats callback is invalid (always reports
-1). Do not use
gatewayRtt to obtain the round-trip delay between the client and the user's local router.
If you need to obtain the round-trip delay between the client and the user's local router, Agora recommends using the SDK with the version earlier than v3.1.2 and modifying the privacy description in your project.
The default prompt shows as follows: This app will be able to discover and connect to devices on the networks you use. Agora recommends modifying the privacy description according to your business requirements. The steps to modify the privacy description are as follows:
Open your Xcode project, find the
info.plist file, and click + to add Privacy - Local Network Usage Description.
According to your business requirements, add the purpose of obtaining local network device permissions in the Value column of Privacy - Local Network Usage Description. For example, add This app will not connect to devices on your network, it only detects the connectivity with your local gateway.
After modification, users will see the following prompt when launching an iOS app for the first time:
gatewayRttparameter of the
gatewayRttparameter in the
reportRtcStatscallback is invalid (always reports
-1). The app cannot use
gatewayRttto obtain the round-trip delay between the client and the user's local router.
Users can also set the app permission in the Settings -> Privacy -> Local network interface on iOS devices.