1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-01-10 23:44:24 +00:00

Projucer: Allow setting the network multicast entitlement in the Xcode exporter

This commit is contained in:
reuk 2021-08-31 19:16:39 +01:00
parent c49e18cad4
commit 7525da867b
No known key found for this signature in database
GPG key ID: 9ADCD339CFC98A11
4 changed files with 15 additions and 1 deletions

View file

@ -100,6 +100,7 @@ public:
iosPushNotificationsValue (settings, Ids::iosPushNotifications, getUndoManager()),
iosAppGroupsValue (settings, Ids::iosAppGroups, getUndoManager()),
iCloudPermissionsValue (settings, Ids::iCloudPermissions, getUndoManager()),
networkingMulticastValue (settings, Ids::networkingMulticast, getUndoManager()),
iosDevelopmentTeamIDValue (settings, Ids::iosDevelopmentTeamID, getUndoManager()),
iosAppGroupsIDValue (settings, Ids::iosAppGroupsId, getUndoManager()),
keepCustomXcodeSchemesValue (settings, Ids::keepCustomXcodeSchemes, getUndoManager()),
@ -193,6 +194,7 @@ public:
bool isPushNotificationsEnabled() const { return iosPushNotificationsValue.get(); }
bool isAppGroupsEnabled() const { return iosAppGroupsValue.get(); }
bool isiCloudPermissionsEnabled() const { return iCloudPermissionsValue.get(); }
bool isNetworkingMulticastEnabled() const { return networkingMulticastValue.get(); }
bool isFileSharingEnabled() const { return uiFileSharingEnabledValue.get(); }
bool isDocumentBrowserEnabled() const { return uiSupportsDocumentBrowserValue.get(); }
bool isStatusBarHidden() const { return uiStatusBarHiddenValue.get(); }
@ -572,8 +574,13 @@ public:
props.add (new ChoicePropertyComponent (iCloudPermissionsValue, "iCloud Permissions"),
"Enable this to grant your app the capability to use native file load/save browser windows on iOS.");
}
props.add (new ChoicePropertyComponent (networkingMulticastValue, "Networking Multicast Capability"),
"Your app must have this entitlement to send or receive IP multicast or broadcast. "
"You will also need permission from Apple to use this entitlement.");
props.add (new ChoicePropertyComponent (iosPushNotificationsValue, "Push Notifications Capability"),
"Enable this to grant your app the capability to receive push notifications.");
@ -1345,6 +1352,7 @@ public:
|| owner.isAppGroupsEnabled()
|| owner.isAppSandboxEnabled()
|| owner.isHardenedRuntimeEnabled()
|| owner.isNetworkingMulticastEnabled()
|| (owner.isiOS() && owner.isiCloudPermissionsEnabled()))
return true;
@ -3061,6 +3069,7 @@ private:
options.isHardenedRuntimeEnabled = isHardenedRuntimeEnabled();
options.isAppSandboxEnabled = isAppSandboxEnabled();
options.isAppSandboxInhertianceEnabled = isAppSandboxInhertianceEnabled();
options.isNetworkingMulticastEnabled = isNetworkingMulticastEnabled();
options.appGroupIdString = getAppGroupIdString();
options.hardenedRuntimeOptions = getHardenedRuntimeOptions();
options.appSandboxOptions = getAppSandboxOptions();
@ -3552,7 +3561,7 @@ private:
sendAppleEventsPermissionNeededValue, sendAppleEventsPermissionTextValue,
uiFileSharingEnabledValue, uiSupportsDocumentBrowserValue, uiStatusBarHiddenValue, uiRequiresFullScreenValue, documentExtensionsValue, iosInAppPurchasesValue,
iosContentSharingValue, iosBackgroundAudioValue, iosBackgroundBleValue, iosPushNotificationsValue, iosAppGroupsValue, iCloudPermissionsValue,
iosDevelopmentTeamIDValue, iosAppGroupsIDValue, keepCustomXcodeSchemesValue, useHeaderMapValue, customLaunchStoryboardValue,
networkingMulticastValue, iosDevelopmentTeamIDValue, iosAppGroupsIDValue, keepCustomXcodeSchemesValue, useHeaderMapValue, customLaunchStoryboardValue,
exporterBundleIdentifierValue, suppressPlistResourceUsageValue, useLegacyBuildSystemValue, buildNumber;
JUCE_DECLARE_NON_COPYABLE (XcodeProjectExporter)