I want to get the current Wifi signal strength from an iOS device. A Google search reveals only solutions for Android devices. From the literature I gather that Apple does not allow to access hardware and so nobody can retrieve the device's signal strength in dbm through their app.
Is this correct?
As you say, there is no way to do this as Apple doesn't allow apps access to the necessary hardware. (There seems to have been a way to do it in iOS 5 but only using private APIs.)
What you can do - and what, according to this article, some apps are doing - is measure network throughput instead. While that is in no way identical with Wi-Fi signal strength, it may be a reasonable workaround for your application, depending on what it is supposed to do.
Here are some Stack Overflow questions dealing with measuring network throughput:
- Determine the speed on internet programmatically
- Calculating Connection/Download Speed