protected override ISN_XcodeRequirements GenerateRequirements() { var requirements = new ISN_XcodeRequirements(); requirements.AddFramework(new ISD_Framework(ISD_iOSFramework.Accounts)); requirements.AddFramework(new ISD_Framework(ISD_iOSFramework.Social)); requirements.AddFramework(new ISD_Framework(ISD_iOSFramework.MessageUI)); ISD_PlistKey LSApplicationQueriesSchemes = new ISD_PlistKey(); LSApplicationQueriesSchemes.Name = "LSApplicationQueriesSchemes"; LSApplicationQueriesSchemes.Type = ISD_PlistKeyType.Array; requirements.AddInfoPlistKey(LSApplicationQueriesSchemes); ISD_PlistKey instagram = new ISD_PlistKey(); instagram.StringValue = "instagram"; instagram.Type = ISD_PlistKeyType.String; LSApplicationQueriesSchemes.AddChild(instagram); ISD_PlistKey whatsapp = new ISD_PlistKey(); whatsapp.StringValue = "whatsapp"; whatsapp.Type = ISD_PlistKeyType.String; LSApplicationQueriesSchemes.AddChild(whatsapp); return(requirements); }
protected override ISN_XcodeRequirements GenerateRequirements() { var requirements = new ISN_XcodeRequirements(); requirements.AddFramework(new ISD_Framework(ISD_iOSFramework.Photos)); return(requirements); }
protected override ISN_XcodeRequirements GenerateRequirements() { var requirements = new ISN_XcodeRequirements(); requirements.AddFramework(new ISD_Framework(ISD_iOSFramework.AuthenticationServices, true)); return(requirements); }
protected override ISN_XcodeRequirements GenerateRequirements() { var requirements = new ISN_XcodeRequirements(); requirements.AddFramework(new ISD_Framework(ISD_iOSFramework.GameKit)); requirements.Capabilities.Add("Game Center"); return(requirements); }
protected override ISN_XcodeRequirements GenerateRequirements() { var requirements = new ISN_XcodeRequirements(); requirements.AddFramework(new ISD_Framework(ISD_iOSFramework.StoreKit)); requirements.Capabilities.Add("In-App Purchase"); return(requirements); }
public static void DrawRequirementsUI(ISN_XcodeRequirements xcodeRequirements) { if (xcodeRequirements.Frameworks.Count > 0) { using (new SA_H2WindowBlockWithSpace(new GUIContent("FRAMEWORKS"))) { foreach (var freamwork in xcodeRequirements.Frameworks) { SA_EditorGUILayout.SelectableLabel(new GUIContent(freamwork.Type.ToString() + ".framework", ISD_Skin.GetIcon("frameworks.png"))); } } } if (xcodeRequirements.Libraries.Count > 0) { using (new SA_H2WindowBlockWithSpace(new GUIContent("LIBRARIES"))) { foreach (var freamwork in xcodeRequirements.Libraries) { SA_EditorGUILayout.SelectableLabel(new GUIContent(freamwork.Type.ToString() + ".framework", ISD_Skin.GetIcon("frameworks.png"))); } } } if (xcodeRequirements.Capabilities.Count > 0) { using (new SA_H2WindowBlockWithSpace(new GUIContent("CAPABILITIES"))) { foreach (var capability in xcodeRequirements.Capabilities) { SA_EditorGUILayout.SelectableLabel(new GUIContent(capability + " Capability", ISD_Skin.GetIcon("capability.png"))); } } } if (xcodeRequirements.PlistKeys.Count > 0) { using (new SA_H2WindowBlockWithSpace(new GUIContent("PLIST KEYS"))) { foreach (var key in xcodeRequirements.PlistKeys) { SA_EditorGUILayout.SelectableLabel(new GUIContent(key.Name, ISD_Skin.GetIcon("plistVariables.png"))); } } } if (xcodeRequirements.Properties.Count > 0) { using (new SA_H2WindowBlockWithSpace(new GUIContent("BUILD PROPERTIES"))) { foreach (var property in xcodeRequirements.Properties) { SA_EditorGUILayout.SelectableLabel(new GUIContent(property.Name + " | " + property.Value, ISD_Skin.GetIcon("buildSettings.png"))); } } } }
protected override ISN_XcodeRequirements GenerateRequirements() { var requirements = new ISN_XcodeRequirements(); requirements.AddFramework(new ISD_Framework(ISD_iOSFramework.UserNotifications)); if (ISD_API.Capability.PushNotifications.Enabled) { requirements.Capabilities.Add("Push Notifications"); } return(requirements); }
protected override ISN_XcodeRequirements GenerateRequirements() { var requirements = new ISN_XcodeRequirements(); var property = new ISD_BuildProperty("GCC_ENABLE_OBJC_EXCEPTIONS", "YES"); requirements.AddBuildProperty(property); if (ISD_API.Capability.iCloud.Enabled && ISD_API.Capability.iCloud.keyValueStorage) { requirements.Capabilities.Add("iCloud"); } return(requirements); }
private void ResolvePlistKey(bool isEnabled, string name, string value, ISN_XcodeRequirements requirements) { if (isEnabled) { var plistKey = new ISD_PlistKey(); plistKey.Name = name; plistKey.StringValue = value; plistKey.Type = ISD_PlistKeyType.String; requirements.AddInfoPlistKey(plistKey); } else { ISD_API.RemoveInfoPlistKey(name); } }
protected override ISN_XcodeRequirements GenerateRequirements() { var requirements = new ISN_XcodeRequirements(); requirements.AddFramework(new ISD_Framework(ISD_iOSFramework.GameKit)); if (ISN_Settings.Instance.SavingAGame) { requirements.Capabilities.Add("iCloud"); } requirements.Capabilities.Add("Game Center"); return(requirements); }
protected override ISN_XcodeRequirements GenerateRequirements() { var requirements = new ISN_XcodeRequirements(); requirements.AddFramework(new ISD_Framework(ISD_iOSFramework.Contacts)); requirements.AddFramework(new ISD_Framework(ISD_iOSFramework.ContactsUI)); var NSContactsUsageDescription = new ISD_PlistKey(); NSContactsUsageDescription.Name = "NSContactsUsageDescription"; NSContactsUsageDescription.StringValue = ISN_Settings.Instance.ContactsUsageDescription; NSContactsUsageDescription.Type = ISD_PlistKeyType.String; requirements.AddInfoPlistKey(NSContactsUsageDescription); return(requirements); }
protected override ISN_XcodeRequirements GenerateRequirements() { var requirements = new ISN_XcodeRequirements(); var property = new ISD_BuildProperty("GCC_ENABLE_OBJC_EXCEPTIONS", "YES"); requirements.AddBuildProperty(property); if (ISN_Settings.Instance.ApplicationQueriesSchemes.Count > 0) { var LSApplicationQueriesSchemes = new ISD_PlistKey(); LSApplicationQueriesSchemes.Name = "LSApplicationQueriesSchemes"; LSApplicationQueriesSchemes.Type = ISD_PlistKeyType.Array; requirements.AddInfoPlistKey(LSApplicationQueriesSchemes); foreach (var scheme in ISN_Settings.Instance.ApplicationQueriesSchemes) { var schemeName = new ISD_PlistKey(); schemeName.StringValue = scheme.Identifier; schemeName.Type = ISD_PlistKeyType.String; LSApplicationQueriesSchemes.AddChild(schemeName); } } var settings = ISN_Settings.Instance; ResolvePlistKey(settings.CameraUsageDescriptionEnabled, "NSCameraUsageDescription", settings.CameraUsageDescription, requirements); ResolvePlistKey(settings.PhotoLibraryUsageDescriptionEnabled, "NSPhotoLibraryUsageDescription", settings.PhotoLibraryUsageDescription, requirements); ResolvePlistKey(settings.PhotoLibraryAddUsageDescriptionEnabled, "NSPhotoLibraryAddUsageDescription", settings.PhotoLibraryAddUsageDescription, requirements); ResolvePlistKey(settings.MicrophoneUsageDescriptionEnabled, "NSMicrophoneUsageDescription", settings.MicrophoneUsageDescription, requirements); return requirements; }
protected override ISN_XcodeRequirements GenerateRequirements() { var requirements = new ISN_XcodeRequirements(); requirements.AddFramework(new ISD_Framework(ISD_iOSFramework.CoreLocation)); var nsLocationWhenInUseUsageDescription = new ISD_PlistKey(); nsLocationWhenInUseUsageDescription.Name = "NSLocationWhenInUseUsageDescription"; nsLocationWhenInUseUsageDescription.StringValue = ISN_Settings.Instance.LocationWhenInUseUsageDescription; nsLocationWhenInUseUsageDescription.Type = ISD_PlistKeyType.String; requirements.AddInfoPlistKey(nsLocationWhenInUseUsageDescription); var nsLocationAlwaysAndWhenInUseUsageDescription = new ISD_PlistKey(); nsLocationAlwaysAndWhenInUseUsageDescription.Name = "NSLocationAlwaysAndWhenInUseUsageDescription"; nsLocationAlwaysAndWhenInUseUsageDescription.StringValue = ISN_Settings.Instance.LocationAlwaysAndWhenInUseUsageDescription; nsLocationAlwaysAndWhenInUseUsageDescription.Type = ISD_PlistKeyType.String; requirements.AddInfoPlistKey(nsLocationAlwaysAndWhenInUseUsageDescription); return(requirements); }
protected override ISN_XcodeRequirements GenerateRequirements() { var requirements = new ISN_XcodeRequirements(); if (ISN_Settings.Instance.ShortcutItems.Count > 0) { ISD_PlistKey UIApplicationShortcutItems = new ISD_PlistKey(); UIApplicationShortcutItems.Name = "UIApplicationShortcutItems"; UIApplicationShortcutItems.Type = ISD_PlistKeyType.Array; requirements.AddInfoPlistKey(UIApplicationShortcutItems); foreach (var shortcut in ISN_Settings.Instance.ShortcutItems) { var ShortcutItem = new ISD_PlistKey(); ShortcutItem.Type = ISD_PlistKeyType.Dictionary; UIApplicationShortcutItems.AddChild(ShortcutItem); var ShortcutItemTitle = new ISD_PlistKey(); ShortcutItemTitle.Name = "UIApplicationShortcutItemTitle"; ShortcutItemTitle.StringValue = shortcut.Title; ShortcutItem.AddChild(ShortcutItemTitle); var ShortcutItemSubtitle = new ISD_PlistKey(); ShortcutItemSubtitle.Name = "UIApplicationShortcutItemSubtitle"; ShortcutItemSubtitle.StringValue = shortcut.Subtitle; ShortcutItem.AddChild(ShortcutItemSubtitle); var ShortcutItemType = new ISD_PlistKey(); ShortcutItemType.Name = "UIApplicationShortcutItemType"; ShortcutItemType.StringValue = shortcut.Type; ShortcutItem.AddChild(ShortcutItemType); } } if (ISN_Settings.Instance.UrlTypes.Count > 0) { ISD_PlistKey CFBundleURLTypes = new ISD_PlistKey(); CFBundleURLTypes.Name = "CFBundleURLTypes"; CFBundleURLTypes.Type = ISD_PlistKeyType.Array; requirements.AddInfoPlistKey(CFBundleURLTypes); foreach (ISN_UIUrlType url in ISN_Settings.Instance.UrlTypes) { ISD_PlistKey URLTypeHolder = new ISD_PlistKey(); URLTypeHolder.Type = ISD_PlistKeyType.Dictionary; CFBundleURLTypes.AddChild(URLTypeHolder); ISD_PlistKey CFBundleURLName = new ISD_PlistKey(); CFBundleURLName.Type = ISD_PlistKeyType.String; CFBundleURLName.Name = "CFBundleURLName"; CFBundleURLName.StringValue = url.Identifier; URLTypeHolder.AddChild(CFBundleURLName); ISD_PlistKey CFBundleURLSchemes = new ISD_PlistKey(); CFBundleURLSchemes.Type = ISD_PlistKeyType.Array; CFBundleURLSchemes.Name = "CFBundleURLSchemes"; URLTypeHolder.AddChild(CFBundleURLSchemes); foreach (string scheme in url.Schemes) { ISD_PlistKey Scheme = new ISD_PlistKey(); Scheme.Type = ISD_PlistKeyType.String; Scheme.StringValue = scheme; CFBundleURLSchemes.AddChild(Scheme); } } } return(requirements); }
public void ResetRequirementsCache() { m_Requirements = null; }