This was the solution a couple of years ago for the microphone permission prompt appearing every time. It could still be relevant.
In the exported XCode project, you need to add a function to this source file: "CordovaLib\Classes\Private\Plugins\CDVWebViewEngine\CDVWebViewUIDelegate.m"
Function to add:
- (void)webView:(WKWebView )webView requestMediaCapturePermissionForOrigin:(WKSecurityOrigin)origin initiatedByFrame:(WKFrameInfo *)frame type:(WKMediaCaptureType)type decisionHandler:(void (^)(WKPermissionDecision))decisionHandler API_AVAILABLE(ios(15.0)) API_AVAILABLE(ios(15.0)){ decisionHandler(WKPermissionDecisionGrant);
}