From 0d0ec49a1b52c26bd8446605b2bfbb924f50bf94 Mon Sep 17 00:00:00 2001 From: Selim Ustel Date: Wed, 10 Dec 2025 15:11:17 +0100 Subject: [PATCH] add dev info plist --- ios/Podfile | 1 + ios/Podfile.lock | 8 +- ios/mendix_utils.rb | 19 ++++ ios/nativeTemplate.xcodeproj/project.pbxproj | 12 ++- ios/nativeTemplate/Info-dev.plist | 105 +++++++++++++++++++ ios/nativeTemplate/Info.plist | 3 +- 6 files changed, 139 insertions(+), 9 deletions(-) create mode 100644 ios/nativeTemplate/Info-dev.plist diff --git a/ios/Podfile b/ios/Podfile index f7106a21e..f50afed1c 100644 --- a/ios/Podfile +++ b/ios/Podfile @@ -23,6 +23,7 @@ platform :ios, deployment_target prepare_react_native_project! generate_mendix_delegate +setupInfoDevPlist linkage = ENV['USE_FRAMEWORKS'] if linkage != nil diff --git a/ios/Podfile.lock b/ios/Podfile.lock index a37f2128e..589d42628 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -2103,17 +2103,17 @@ EXTERNAL SOURCES: SPEC CHECKSUMS: boost: 7e761d76ca2ce687f7cc98e698152abd03a18f90 - DoubleConversion: cb417026b2400c8f53ae97020b2be961b59470cb + DoubleConversion: 76ab83afb40bddeeee456813d9c04f67f78771b5 fast_float: 06eeec4fe712a76acc9376682e4808b05ce978b6 FBLazyVector: 23d8c5470c648a635893dc0956c6dbaead54b656 fmt: a40bb5bd0294ea969aaaba240a927bd33d878cdd - glog: eb93e2f488219332457c3c4eafd2738ddc7e80b8 + glog: 69ef571f3de08433d766d614c73a9838a06bf7eb hermes-engine: b2187dbe13edb0db8fcb2a93a69c1987a30d98a4 IQKeyboardManager: c8665b3396bd0b79402b4c573eac345a31c7d485 libwebp: 02b23773aedb6ff1fd38cec7a77b81414c6842a8 op-sqlite: 0d4f6014d7eb4347bff281fd4cd7970fdf111276 OpenSSL-Universal: 6082b0bf950e5636fe0d78def171184e2b3899c2 - RCT-Folly: e78785aa9ba2ed998ea4151e314036f6c49e6d82 + RCT-Folly: 36fe2295e44b10d831836cc0d1daec5f8abcf809 RCTDeprecation: 6ee92578d332db1d4e03267d3ae98bcf8b780863 RCTRequired: 5b3da0e0f91fddda935574b81748c3e3d3649ee7 RCTTypeSafety: 870cb072be3d3f310ecec897c3d297a931f8f7e1 @@ -2199,6 +2199,6 @@ SPEC CHECKSUMS: SSZipArchive: 8a6ee5677c8e304bebc109e39cf0da91ccef22ea Yoga: 92f3bb322c40a86b7233b815854730442e01b8c4 -PODFILE CHECKSUM: 0721d8defdcee9bbb168ccd39c73b4972842a2af +PODFILE CHECKSUM: 6b09d592b26ddbc7d2bfae3b0af220c4e3b54925 COCOAPODS: 1.16.2 diff --git a/ios/mendix_utils.rb b/ios/mendix_utils.rb index f9764bafd..027bc67fa 100644 --- a/ios/mendix_utils.rb +++ b/ios/mendix_utils.rb @@ -212,3 +212,22 @@ def include_script_phases(phases) def get_excluded_capabilities ["nativeOTA"] end + +def setupInfoDevPlist + source_plist = "nativeTemplate/Info.plist" + dest_plist = "nativeTemplate/Info-dev.plist" + + # Read the source plist as text + content = File.read(source_plist) + + # Replace NSAllowsLocalNetworking with + content.gsub!( + /(NSAllowsLocalNetworking<\/key>\s*)/, + '\1' + ) + + # Write back the modified content + File.open(dest_plist, "w") do |file| + file << content + end +end \ No newline at end of file diff --git a/ios/nativeTemplate.xcodeproj/project.pbxproj b/ios/nativeTemplate.xcodeproj/project.pbxproj index dec45ed71..a7792b8f5 100644 --- a/ios/nativeTemplate.xcodeproj/project.pbxproj +++ b/ios/nativeTemplate.xcodeproj/project.pbxproj @@ -35,6 +35,8 @@ 2C887FE224B8948F0003DC53 /* StoryBoardSplash.m in Sources */ = {isa = PBXBuildFile; fileRef = 2C887FE124B8948F0003DC53 /* StoryBoardSplash.m */; }; 2C887FE324B8948F0003DC53 /* StoryBoardSplash.m in Sources */ = {isa = PBXBuildFile; fileRef = 2C887FE124B8948F0003DC53 /* StoryBoardSplash.m */; }; 572D87C4D9F46E7564D1FE09 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = DBB22F41E3AF5D95F9759402 /* PrivacyInfo.xcprivacy */; }; + 6EBE02112EE9B3BC00A4F24F /* Info-dev.plist in Resources */ = {isa = PBXBuildFile; fileRef = 6EBE02102EE9B3BC00A4F24F /* Info-dev.plist */; }; + 6EBE02122EE9B3BC00A4F24F /* Info-dev.plist in Resources */ = {isa = PBXBuildFile; fileRef = 6EBE02102EE9B3BC00A4F24F /* Info-dev.plist */; }; 9DF4091425A46A56E2A9A405 /* libPods-nativeTemplate.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 73F36AC2CCD37CCD4E7B1BB8 /* libPods-nativeTemplate.a */; }; B28D6DAD97033B55832E5853 /* libPods-dev.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 11502903429AC2E6E69E6482 /* libPods-dev.a */; }; C5A009082BE291FE00F10EC1 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = C5A009072BE291FE00F10EC1 /* PrivacyInfo.xcprivacy */; }; @@ -84,6 +86,7 @@ 4D55DFFF6D52DC368FE13A23 /* Pods-nativeTemplate.releasedevapp.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-nativeTemplate.releasedevapp.xcconfig"; path = "Target Support Files/Pods-nativeTemplate/Pods-nativeTemplate.releasedevapp.xcconfig"; sourceTree = ""; }; 64F8A8A81DAAF68662AD5926 /* Pods-nativeTemplate.releasedevapp.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-nativeTemplate.releasedevapp.xcconfig"; path = "Target Support Files/Pods-nativeTemplate/Pods-nativeTemplate.releasedevapp.xcconfig"; sourceTree = ""; }; 6ABE4BDB54D431090249D8EC /* Pods-dev.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-dev.release.xcconfig"; path = "Target Support Files/Pods-dev/Pods-dev.release.xcconfig"; sourceTree = ""; }; + 6EBE02102EE9B3BC00A4F24F /* Info-dev.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = "Info-dev.plist"; path = "nativeTemplate/Info-dev.plist"; sourceTree = ""; }; 73F36AC2CCD37CCD4E7B1BB8 /* libPods-nativeTemplate.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-nativeTemplate.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 7EEDF4024CB6865C31DBA5BB /* Pods-nativeTemplate.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-nativeTemplate.release.xcconfig"; path = "Target Support Files/Pods-nativeTemplate/Pods-nativeTemplate.release.xcconfig"; sourceTree = ""; }; 9A27E05F0AD54B417B79E303 /* Pods-dev.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-dev.debug.xcconfig"; path = "Target Support Files/Pods-dev/Pods-dev.debug.xcconfig"; sourceTree = ""; }; @@ -144,6 +147,7 @@ 2C4991D024C593C3008403BB /* MendixAppDelegate.m */, 2C4991D324C595F0008403BB /* MendixAppDelegate.h */, 13B07FB61A68108700A75B9A /* Info.plist */, + 6EBE02102EE9B3BC00A4F24F /* Info-dev.plist */, 1AAE158823C5FEFC00F855F4 /* SwiftInterop.swift */, 2C887FD924B88A0E0003DC53 /* LaunchScreen.storyboard */, 2C005A7823D5B1E200003E29 /* nativeTemplate.entitlements */, @@ -367,6 +371,7 @@ files = ( C5A009082BE291FE00F10EC1 /* PrivacyInfo.xcprivacy in Resources */, 2C887FDA24B88A0E0003DC53 /* LaunchScreen.storyboard in Resources */, + 6EBE02112EE9B3BC00A4F24F /* Info-dev.plist in Resources */, 1A0B83DB22E09B2600EA1E51 /* Bundle in Resources */, 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */, EB55620C22E0755000E19C26 /* glyphicons-halflings-regular.ttf in Resources */, @@ -380,6 +385,7 @@ files = ( 1A0B3AFD23992F8200388BF7 /* Images.xcassets in Resources */, 1A0B3AD32397E15800388BF7 /* MendixApp.storyboard in Resources */, + 6EBE02122EE9B3BC00A4F24F /* Info-dev.plist in Resources */, 1A0B3AEF2399058B00388BF7 /* config.release.xcconfig in Resources */, 2C887FDB24B88A0E0003DC53 /* LaunchScreen.storyboard in Resources */, 1A0B3AD62397EA8500388BF7 /* glyphicons-halflings-regular.ttf in Resources */, @@ -870,7 +876,7 @@ "$(inherited)", "${SRCROOT}/../node_modules/@mendix/native/ios/**", ); - INFOPLIST_FILE = NativeTemplate/Info.plist; + INFOPLIST_FILE = "NativeTemplate/Info-dev.plist"; IPHONEOS_DEPLOYMENT_TARGET = 13.4; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", @@ -926,7 +932,7 @@ "$(inherited)", "${SRCROOT}/../node_modules/@mendix/native/ios/**", ); - INFOPLIST_FILE = NativeTemplate/Info.plist; + INFOPLIST_FILE = "NativeTemplate/Info-dev.plist"; IPHONEOS_DEPLOYMENT_TARGET = 13.4; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", @@ -1128,7 +1134,7 @@ "$(inherited)", "${SRCROOT}/../node_modules/@mendix/native/ios/**", ); - INFOPLIST_FILE = NativeTemplate/Info.plist; + INFOPLIST_FILE = "NativeTemplate/Info-dev.plist"; IPHONEOS_DEPLOYMENT_TARGET = 13.4; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", diff --git a/ios/nativeTemplate/Info-dev.plist b/ios/nativeTemplate/Info-dev.plist new file mode 100644 index 000000000..4dfefbe75 --- /dev/null +++ b/ios/nativeTemplate/Info-dev.plist @@ -0,0 +1,105 @@ + + + + + LSApplicationQueriesSchemes + + mailto + tel + + CFBundleDevelopmentRegion + en + CFBundleDisplayName + $(BUNDLE_DISPLAY_NAME) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + APPL + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1 + GoogleMapsApiKey + + LSRequiresIPhoneOS + + NSAppTransportSecurity + + NSAllowsArbitraryLoads + + NSAllowsLocalNetworking + + + NSBluetoothAlwaysUsageDescription + This app may need access to your Bluetooth connection + NSBluetoothPeripheralUsageDescription + This app may need access to your Bluetooth connection + NSCalendarsUsageDescription + This app requires access to the calendar + NSCameraUsageDescription + The camera can be used to open apps by scanning a QR code. + NSFaceIDUsageDescription + Enabling Face ID allows you quick and secure access to your account. + NSLocationAlwaysUsageDescription + To use that feature the app needs access to your location. + NSLocationWhenInUseUsageDescription + To use that feature the app needs access to your location. + NSLocationAlwaysAndWhenInUseUsageDescription + To use that feature the app needs access to your location. + NSMicrophoneUsageDescription + To use that feature the app needs access to your microphone. + NSPhotoLibraryUsageDescription + To use that feature the app needs access to your photo library. + Runtime url + $(RUNTIME_URL) + TargetName + ${TARGET_NAME} + UIAppFonts + + glyphicons-halflings-regular.ttf + AntDesign.ttf + Entypo.ttf + EvilIcons.ttf + Feather.ttf + FontAwesome.ttf + FontAwesome5_Brands.ttf + FontAwesome5_Regular.ttf + FontAwesome5_Solid.ttf + Fontisto.ttf + Foundation.ttf + Ionicons.ttf + MaterialCommunityIcons.ttf + MaterialIcons.ttf + Octicons.ttf + SimpleLineIcons.ttf + Zocial.ttf + + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + ${MAIN_STORY_BOARD} + UIRequiredDeviceCapabilities + + arm64 + + UIRequiresFullScreen + + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeRight + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationPortraitUpsideDown + + UIViewControllerBasedStatusBarAppearance + + + diff --git a/ios/nativeTemplate/Info.plist b/ios/nativeTemplate/Info.plist index eb2ba7158..0fca0b63d 100644 --- a/ios/nativeTemplate/Info.plist +++ b/ios/nativeTemplate/Info.plist @@ -33,11 +33,10 @@ NSAppTransportSecurity - NSAllowsArbitraryLoads NSAllowsLocalNetworking - + NSBluetoothAlwaysUsageDescription This app may need access to your Bluetooth connection