I've got the classic problem of iTunes rejecting my .ipa because it's missing a bunch of .plist entries for 'privacy-senstive data' (in my case calendar, contacts, microphone, Apple Music and Siri!), despite my app having nothing to do with these frameworks.
I want to work out which 3rd party frameworks in my app are triggering this problem, rather than take the easy way out and just add the .plist entries.
Is there a way to analyse your .ipa or the files it contains to work out which 3rd party dependency is causing this issue?
Just to be clear, I understand I could just add the required .plist entries and this problem would go away - my question is specifically how to work out which dependencies are triggering this problem.
Is your
Link Behavior
in your release configuration set toDon't Link
?If so, the non-stripped
Xamarin.iOS.dll
references everything and will cause all kinds of privacy/entitlement issues just due to the fact that your app is linked to them but actually never uses them.The default Release configuration used to be
Link Framework SDKs Only
(-linksdk
) but in the recent releases that does not seem to be the case even though the documentation states that it is.Change the behavior to
Link Framework SDKs Only
, create another archive andipa
and see if Apple likes that version ;-)