Closed evilutioner closed 1 year ago
Hi @evilutioner
Oh, this is because I added dictation to the library. I didn't realize it would give this warning. I will try to redesign this so those keys aren't needed.
Hi again @evilutioner
This is strange. I tried removing the required Info.plist
keys before uploading the app I'm working with, and this still works:
However, I later received notifications that the binaries are invalid. Was this what happened to you too? In that case, I will try making the permission block configurable so that you have to provide the function yourself.
Ok, I have a solution now, where I have extracted the Speech
framework stuff from the dictation service, in a way that lets me take it out of the library and remove these invalid binary warnings.
Any ideas where I could best place this Speech-specific thing would be greatly appreciated.
I have tried using the updated design in my upcoming keyboard app, and can now submit to the App Store without the keys. 👍
I will publish this as a first 7.6 release candidate, which will let you try out the updated behavior. I will however add more stuff to this release before it goes live.
KeyboardKit Pro 7.6 is out now, and fixes this problem. Sorry for the inconvenience!
@danielsaidi Awesome, thanks for sorting it out so quickly! Cheers for getting on top of this.
@evilutioner Thank you for letting me know about this problem 🙏
I was unable to upload to Appstore my application with new version of KeyboardKitPro.
The affected versions: 7.4.1 and 7.5.0 No affected versions: 7.1.3 and 7.2.2
You can’t upload the application to Appstore/Testflight, I get a refusal with the following Appstore message:
We identified one or more issues with a recent delivery for your app, [App Name]. Please correct the following issues, then upload again.
ITMS-90683: Missing purpose string in Info.plist - Your app's code references one or more APIs that access sensitive user data, or the app has one or more entitlements that permit such access. The Info.plist file for the "[app name]" bundle should contain a NSSpeechRecognitionUsageDescription key with a user-facing purpose string explaining clearly and completely why your app needs the data. If you're using external libraries or SDKs, they may reference APIs that require a purpose string. While your app might not use these APIs, a purpose string is still required. For details, visit: https://developer.apple.com/documentation/uikit/protecting_the_user_s_privacy/requesting_access_to_protected_resources.
I am not using speech recognition in my app and not want to add to declare it.