I am in the midst of a debate with friends. My position is that 3rd party apps are unable to access an Apple device microphone or camera without the user knowing. Their response to this is that on iPhone, when you agree to give access to the app, they are able to use your audio/camera whenever. My response is that third party apps can only use the hardware when you open the camera feature within the app or start using the audio feature within the app. I think Apple achieves this by literally not accepting audio info unless the app requests it, same with the camera.
You can go to the settings menu and accept or deny camera/microphone access for each app.
Even if you give the app access, an orange dot will appear at the top of the screen when it uses it, and it will remain as a notification (or in privacy settings) if that app has used the camera/microphone/location within the past 24 hours.
@Alston
Could you provide a source for the orange dot only appearing when audio is being captured? Or better yet, that audio is only being captured when the dot appears? That would end the debate, thank you so much.
No app can access the microphone or camera without your permission. In iOS 14 and iPadOS 14 or later, when an app uses the microphone or camera, your device displays an indicator to let you know it is being used – whether you are in the app, in another app, or on the Home Screen. And Control Center shows you when an app has recently used the microphone or camera. In iOS and iPadOS, access to the camera is disabled for an app when it is in the background.
Additionally, you can enable application privacy reports which can tell you about the history of every single time an application uses your microphone or camera, among other things like clipboard data, other sensors on your device, network activity, what websites your apps interact with, etc.
Your friends are correct. When you give permission for an app to use the camera/microphone, it can access those APIs anytime the app is running (and in specific instances in the background). As others have pointed out, there will be an orange/green dot that lights up when they’re in use.
The part where you’re incorrect is thinking that the app only has access to the hardware when the user is using said feature within the app. That’s not well-defined. There’s no reasonable way for iOS to know whether or not the app is displaying some UI that humans interpret to be a camera/microphone feature. The app can literally show a blank screen and record by calling the APIs (with zero user input) if it has the appropriate permissions.
You have to specifically allow microphone access. Same with the camera. Just installing an app doesn’t allow it. It will ask, and you have to accept or deny. Keep in mind this information is only current for newer iOS versions. It wasn’t a requirement on older iPhones and iOS versions. Don’t ask me when it was introduced, as I can’t remember, but Google will answer.
@Jin
Right, the debate is about what happens after you accept. Does the app then have access to the audio/camera whenever the app is open? Or just when you use the camera/audio feature within the app?
Darby said: @Jin
Right, the debate is about what happens after you accept. Does the app then have access to the audio/camera whenever the app is open? Or just when you use the camera/audio feature within the app?
You’ll know when it’s using either of these features by the orange/green dot at the top of the screen. No dot - no camera/mic.
Darby said: @Jin
Right, the debate is about what happens after you accept. Does the app then have access to the audio/camera whenever the app is open? Or just when you use the camera/audio feature within the app?
Oh sorry, didn’t see that bit. If you accept, then the app should only use it when the feature is used. However, GPS location can be used in the background. The newest iOS versions also show you in the control center what used your microphone, camera, and GPS recently at the top. Just to make sure you know.
Darby said: @Jin
Do you have a source that says that as well? I can’t seem to find one.
Technically it is allowed, but the developer would specifically have to allow it and still have to ask for explicit consent. The app can’t be closed in the background while recording. If it is closed, then the app can’t record.
An app that plays or records audio continuously (even while the app is running in the background) can register to perform those tasks in the background. You enable audio support from the Background modes section of the Capabilities tab in your Xcode project. (You can also enable this support by including the UIBackgroundModes key with the audio value in your app’s Info.plist file.) Apps that play audio content in the background must play audible content and not silence.
Typical examples of background audio apps include:
Music player apps
Audio recording apps
Apps that support audio or video playback over AirPlay
VoIP apps
When the UIBackgroundModes key contains the audio value, the system’s media frameworks automatically prevent the corresponding app from being suspended when it moves to the background. As long as it is playing audio or video content or recording audio content, the app continues to run in the background. However, if recording or playback stops, the system suspends the app.
@Jin
One other note from a developer that pays through the roof for this particular permission to be registered in their app is that it will only record IF the recording is started when the phone is unlocked and the screen is on. Otherwise, it will fail to start recording. He doesn’t specify if it continues to record when the phone is locked, however, but does say the cost involved is prohibitive.
Any app, whether native or third-party, that has requested access to the microphone and/or camera can have its access revoked (if granted in the first place) by going to settings > privacy & security > scroll down to microphone and camera settings > toggle off those apps you don’t want to have access to the mic/camera.
@Zaren
Right, the debate is about what happens after you accept. Does the app then have access to the audio/camera whenever the app is open? Or just when you use the camera/audio feature within the app?