macOS Privacy and FileMaker
You may have seen the privacy panel for system preferences in macOS?
For every application, you may need to allow access to data and FileMaker may need permissions, too. Either a dialog may prompt you, or you may need to enable things manually. As a FileMaker developer using the MBS FileMaker Plugin, you should allow notifications for FileMaker to see MBS errors.
Let us check them all in order:
Location
The CoreLocation functions in MBS FileMaker Plugin as well as built-in FileMaker function to query location may trigger a dialog asking for permissions. You usually find FileMaker in the list of applications allowed for location if someone tried the location functions.
Check with CoreLocation.authorizationStatus function whether you are allowed and maybe use CoreLocation.requestLocation function to show the dialog to ask for permission.
Contacts
When using Contacts functions or the older Addressbook functions, a dialog may ask the user for consent for accessing the contacts of the current user.
See CNContactStore.AuthorizationStatus function to check status and CNContactStore.RequestAccesss function to ask for access.
Calendars & Reminders
When using Events functions or the older Calendar functions, a dialog may ask the user for consent for accessing the event database of the current user, which also contain reminders.
The Events.AuthorizationStatusForEntityType function can check status for either event or reminders. Use Events.requestAccessToEntityType to show the dialog and ask for permission for either event or reminders. If you use both, please call twice, once for each type.
Photos
To access the photos database, you may need permissions here. But in FileMaker we currently have no functions for that. And when you use ImagePicker functions, you don't need permissions as the dialog runs in a different process and you only get access for the selection the user made. Same for SharingService functions, which allow to export pictures to the Photos application without asking for permissions.
Camera
If you access the camera on a macOS or iOS device, please ask for permissions here. First you can check status with AVRecorder.AuthorizationStatusForMediaType function and then if needed use the AVRecorder.RequestAccessForMediaType function in our plugin to show the dialog when appropriate. Otherwise the user may face the dialog when your application starts the camera, e.g. via AVRecorder functions.
Using standard interace like ContinuityCamera functions or ImagePicker functions may not trigger a permission dialog.
If you use WebView.InstallUserMediaAccess, you may need this permission to record user video for video chat.
Microphone
Similar to camera, our AVRecorder functions may need microphone access to record something. See AVRecorder.RequestAccessForMediaType function to ask for permissions on setup.
If you use WebView.InstallUserMediaAccess, you may need this permission to record user video for audio chat.
Speech Recognition
If you use SpeechRecognition functions, the permissions may be needed, so check SpeechRecognition.AuthorizationStatus function for your status and use SpeechRecognition.RequestAuthorization to request permissions if needed.
Accessibility
If you use RemoteControl functions in our plugin, you may need to have the user grant permissions to generate mouse and keyboard events. The functions do nothing otherwise or always fail
Input Monitoring
The MBS FileMaker Plugin does not do global event monitoring for FileMaker, and no other application should need this.
Full Disk Access
You should not need this for FileMaker. Maybe for a backup application like e.g. Carbon Copy Cloner.
Files and Folders
FileMaker may be in the list here for desktop, documents or download folder.
Screen Recording
You can record the screen with AVRecorder functions if you use AVRecorder.SetScreenInput function to set the screen as video input. This may ask the user for consent.
If you use WebView.InstallUserMediaAccess, you may need this permission to record screen for your remote screen sharing session.
Automation
FileMaker may ask for automation access to Apple Mail, if you try to send an email via Mail using the send email script step in FileMaker.
If you use AppleScript functions in MBS FileMaker Plugin or another function realized via Apple Events internally, you may see a permissions dialog. See Applescript.DeterminePermissionToAutomateTarget function to ask for status or request dialog.
Health
Only for iOS and only for apps built with FileMaker iOS SDK using MBS FileMaker Plugin with HealthKit functions built-in. Use HealthKit.AuthorizationStatusForType function to check status.
Notifications
This is a separate panel in system preferences. Please allow FileMaker there to show notifications, e.g. from MBS FileMaker Plugin.
Please don't hesitate to contact us with questions.