Skip to content

Commit

Permalink
feat(app): enable react native new arch (#131)
Browse files Browse the repository at this point in the history
  • Loading branch information
Robert27 authored Dec 5, 2024
1 parent e824635 commit 5f143fd
Show file tree
Hide file tree
Showing 21 changed files with 610 additions and 268 deletions.
2 changes: 1 addition & 1 deletion android/gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ reactNativeArchitectures=armeabi-v7a,arm64-v8a,x86,x86_64
# your application. You should enable this flag either if you want
# to write custom TurboModules/Fabric components OR use libraries that
# are providing them.
newArchEnabled=false
newArchEnabled=true

# Use this property to enable or disable the Hermes JS engine.
# If set to false, you will be using JSC instead.
Expand Down
5 changes: 4 additions & 1 deletion app.config.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
"version": "0.11.0",
"githubUrl": "https://github.com/neuland-ingolstadt/neuland.app-native/",
"userInterfaceStyle": "automatic",
"newArchEnabled": true,
"ios": {
"bundleIdentifier": "de.neuland-ingolstadt.neuland-app",
"buildNumber": "199",
Expand Down Expand Up @@ -50,6 +51,7 @@
"headOrigin": "https://neuland.app"
}
],
["expo-alternate-app-icons"],
["expo-secure-store"],
["expo-localization"],
[
Expand Down Expand Up @@ -85,7 +87,8 @@
"imageWidth": 200
}
],
"react-native-edge-to-edge"
"react-native-edge-to-edge",
"expo-alternate-app-icons"
],
"extra": {
"eas": {
Expand Down
Binary file modified bun.lockb
Binary file not shown.
104 changes: 59 additions & 45 deletions ios/NeulandNext.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
archiveVersion = 1;
classes = {
};
objectVersion = 46;
objectVersion = 54;
objects = {

/* Begin PBXBuildFile section */
Expand All @@ -12,32 +12,33 @@
13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; };
360194F820633262CFF9AA20 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = E7208147937BDB07AB0D2168 /* PrivacyInfo.xcprivacy */; };
3E461D99554A48A4959DE609 /* SplashScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = AA286B85B6C04FC6940260E9 /* SplashScreen.storyboard */; };
5950104C57DBFBA22E779C43 /* libPods-NeulandNext.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 848B171A55BEF00BC4089A91 /* libPods-NeulandNext.a */; };
8DCB7D37B2034C1D87C16A0E /* noop-file.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4554E8D5ED154F9DB526498E /* noop-file.swift */; };
8EF18E5BB6C34BAE889761C1 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = BB5AF60902F84D62AEF46CC6 /* InfoPlist.strings */; };
A157FAD860B84E5EB217F054 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 978E8A90965E4E058456B826 /* InfoPlist.strings */; };
B18059E884C0ABDD17F3DC3D /* ExpoModulesProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAC715A2D49A985799AEE119 /* ExpoModulesProvider.swift */; };
B7DF72B12CFFBAE000ACB9EA /* MapLibre in Frameworks */ = {isa = PBXBuildFile; productRef = AD30A63D034D40011FCFCC70 /* MapLibre */; };
BB2F792D24A3F905000567C9 /* Expo.plist in Resources */ = {isa = PBXBuildFile; fileRef = BB2F792C24A3F905000567C9 /* Expo.plist */; };
EB36714F85DCA69FADD0CDF8 /* libPods-NeulandNext.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 13179F6AC31E959303AB4295 /* libPods-NeulandNext.a */; };
/* End PBXBuildFile section */

/* Begin PBXFileReference section */
13179F6AC31E959303AB4295 /* libPods-NeulandNext.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-NeulandNext.a"; sourceTree = BUILT_PRODUCTS_DIR; };
13B07F961A680F5B00A75B9A /* NeulandNext.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = NeulandNext.app; sourceTree = BUILT_PRODUCTS_DIR; };
13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = NeulandNext/AppDelegate.h; sourceTree = "<group>"; };
13B07FB01A68108700A75B9A /* AppDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = AppDelegate.mm; path = NeulandNext/AppDelegate.mm; sourceTree = "<group>"; };
13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = NeulandNext/Images.xcassets; sourceTree = "<group>"; };
13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = NeulandNext/Info.plist; sourceTree = "<group>"; };
13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = NeulandNext/main.m; sourceTree = "<group>"; };
4554E8D5ED154F9DB526498E /* noop-file.swift */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = "noop-file.swift"; path = "NeulandNext/noop-file.swift"; sourceTree = "<group>"; };
848B171A55BEF00BC4089A91 /* libPods-NeulandNext.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-NeulandNext.a"; sourceTree = BUILT_PRODUCTS_DIR; };
70F92407F735C96C29ECC8F7 /* Pods-NeulandNext.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-NeulandNext.debug.xcconfig"; path = "Target Support Files/Pods-NeulandNext/Pods-NeulandNext.debug.xcconfig"; sourceTree = "<group>"; };
978E8A90965E4E058456B826 /* InfoPlist.strings */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = text.plist.strings; name = InfoPlist.strings; path = de.lproj/InfoPlist.strings; sourceTree = "<group>"; };
A0ADC72831CA03F74BB7F603 /* Pods-NeulandNext.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-NeulandNext.release.xcconfig"; path = "Target Support Files/Pods-NeulandNext/Pods-NeulandNext.release.xcconfig"; sourceTree = "<group>"; };
A74EDE81CA5A4DC99400863A /* NeulandNext-Bridging-Header.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = "NeulandNext-Bridging-Header.h"; path = "NeulandNext/NeulandNext-Bridging-Header.h"; sourceTree = "<group>"; };
AA286B85B6C04FC6940260E9 /* SplashScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = SplashScreen.storyboard; path = NeulandNext/SplashScreen.storyboard; sourceTree = "<group>"; };
BB2F792C24A3F905000567C9 /* Expo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Expo.plist; sourceTree = "<group>"; };
BB5AF60902F84D62AEF46CC6 /* InfoPlist.strings */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = text.plist.strings; name = InfoPlist.strings; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
E7208147937BDB07AB0D2168 /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; includeInIndex = 1; name = PrivacyInfo.xcprivacy; path = NeulandNext/PrivacyInfo.xcprivacy; sourceTree = "<group>"; };
CF57386248C9E08838947E6F /* Pods-NeulandNext.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-NeulandNext.release.xcconfig"; path = "Target Support Files/Pods-NeulandNext/Pods-NeulandNext.release.xcconfig"; sourceTree = "<group>"; };
E7208147937BDB07AB0D2168 /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xml; name = PrivacyInfo.xcprivacy; path = NeulandNext/PrivacyInfo.xcprivacy; sourceTree = "<group>"; };
ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; };
F0C443888CFC236E01F0DAB3 /* Pods-NeulandNext.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-NeulandNext.debug.xcconfig"; path = "Target Support Files/Pods-NeulandNext/Pods-NeulandNext.debug.xcconfig"; sourceTree = "<group>"; };
FAC715A2D49A985799AEE119 /* ExpoModulesProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExpoModulesProvider.swift; path = "Pods/Target Support Files/Pods-NeulandNext/ExpoModulesProvider.swift"; sourceTree = "<group>"; };
/* End PBXFileReference section */

Expand All @@ -46,7 +47,8 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
5950104C57DBFBA22E779C43 /* libPods-NeulandNext.a in Frameworks */,
B7DF72B12CFFBAE000ACB9EA /* MapLibre in Frameworks */,
EB36714F85DCA69FADD0CDF8 /* libPods-NeulandNext.a in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
Expand Down Expand Up @@ -74,7 +76,7 @@
isa = PBXGroup;
children = (
ED297162215061F000B7C4FE /* JavaScriptCore.framework */,
848B171A55BEF00BC4089A91 /* libPods-NeulandNext.a */,
13179F6AC31E959303AB4295 /* libPods-NeulandNext.a */,
);
name = Frameworks;
sourceTree = "<group>";
Expand Down Expand Up @@ -115,7 +117,6 @@
BB5AF60902F84D62AEF46CC6 /* InfoPlist.strings */,
);
name = en.lproj;
path = "";
sourceTree = "<group>";
};
92DBD88DE9BF7D494EA9DA96 /* NeulandNext */ = {
Expand All @@ -140,8 +141,8 @@
D65327D7A22EEC0BE12398D9 /* Pods */ = {
isa = PBXGroup;
children = (
F0C443888CFC236E01F0DAB3 /* Pods-NeulandNext.debug.xcconfig */,
A0ADC72831CA03F74BB7F603 /* Pods-NeulandNext.release.xcconfig */,
70F92407F735C96C29ECC8F7 /* Pods-NeulandNext.debug.xcconfig */,
CF57386248C9E08838947E6F /* Pods-NeulandNext.release.xcconfig */,
);
path = Pods;
sourceTree = "<group>";
Expand All @@ -160,7 +161,6 @@
978E8A90965E4E058456B826 /* InfoPlist.strings */,
);
name = de.lproj;
path = "";
sourceTree = "<group>";
};
/* End PBXGroup section */
Expand All @@ -170,7 +170,7 @@
isa = PBXNativeTarget;
buildConfigurationList = 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "NeulandNext" */;
buildPhases = (
FDEDEE02DD1C8BD5A7B7CDD3 /* [CP] Check Pods Manifest.lock */,
96546FD8AE9A718136D3C77F /* [CP] Check Pods Manifest.lock */,
F7E6727DDBDF9E31F6906CD9 /* [Expo] Configure project */,
13B07F871A680F5B00A75B9A /* Sources */,
13B07F8C1A680F5B00A75B9A /* Frameworks */,
Expand All @@ -180,8 +180,8 @@
6941C1783D1F4086B6A3D259 /* Remove signature files (Xcode workaround) */,
8337B955D8BF4889B6A0807B /* Remove signature files (Xcode workaround) */,
85BEE78A641E41D686A75EF5 /* Remove signature files (Xcode workaround) */,
D992DB295039551783468D4F /* [CP] Embed Pods Frameworks */,
B3755C665EBE5A6F6D508AE0 /* [CP] Copy Pods Resources */,
E583CF0FF6589194373A325F /* [CP] Embed Pods Frameworks */,
9EA0E9AF021AE8E4B1984681 /* [CP] Copy Pods Resources */,
);
buildRules = (
);
Expand Down Expand Up @@ -319,7 +319,29 @@
shellPath = /bin/sh;
shellScript = "\n echo \"Remove signature files (Xcode workaround)\";\n rm -rf \"$CONFIGURATION_BUILD_DIR/MapLibre.xcframework-ios.signature\";\n ";
};
B3755C665EBE5A6F6D508AE0 /* [CP] Copy Pods Resources */ = {
96546FD8AE9A718136D3C77F /* [CP] Check Pods Manifest.lock */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
"${PODS_PODFILE_DIR_PATH}/Podfile.lock",
"${PODS_ROOT}/Manifest.lock",
);
name = "[CP] Check Pods Manifest.lock";
outputFileListPaths = (
);
outputPaths = (
"$(DERIVED_FILE_DIR)/Pods-NeulandNext-checkManifestLockResult.txt",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
showEnvVarsInLog = 0;
};
9EA0E9AF021AE8E4B1984681 /* [CP] Copy Pods Resources */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
Expand Down Expand Up @@ -363,7 +385,7 @@
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-NeulandNext/Pods-NeulandNext-resources.sh\"\n";
showEnvVarsInLog = 0;
};
D992DB295039551783468D4F /* [CP] Embed Pods Frameworks */ = {
E583CF0FF6589194373A325F /* [CP] Embed Pods Frameworks */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
Expand Down Expand Up @@ -400,28 +422,6 @@
shellPath = /bin/sh;
shellScript = "# This script configures Expo modules and generates the modules provider file.\nbash -l -c \"./Pods/Target\\ Support\\ Files/Pods-NeulandNext/expo-configure-project.sh\"\n";
};
FDEDEE02DD1C8BD5A7B7CDD3 /* [CP] Check Pods Manifest.lock */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
"${PODS_PODFILE_DIR_PATH}/Podfile.lock",
"${PODS_ROOT}/Manifest.lock",
);
name = "[CP] Check Pods Manifest.lock";
outputFileListPaths = (
);
outputPaths = (
"$(DERIVED_FILE_DIR)/Pods-NeulandNext-checkManifestLockResult.txt",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
showEnvVarsInLog = 0;
};
/* End PBXShellScriptBuildPhase section */

/* Begin PBXSourcesBuildPhase section */
Expand All @@ -441,9 +441,10 @@
/* Begin XCBuildConfiguration section */
13B07F941A680F5B00A75B9A /* Debug */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = F0C443888CFC236E01F0DAB3 /* Pods-NeulandNext.debug.xcconfig */;
baseConfigurationReference = 70F92407F735C96C29ECC8F7 /* Pods-NeulandNext.debug.xcconfig */;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS = YES;
CLANG_ENABLE_MODULES = YES;
CODE_SIGN_ENTITLEMENTS = NeulandNext/NeulandNext.entitlements;
CODE_SIGN_IDENTITY = "Apple Development";
Expand All @@ -457,7 +458,10 @@
);
INFOPLIST_FILE = NeulandNext/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 15.1;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 1.0;
OTHER_LDFLAGS = (
"$(inherited)",
Expand All @@ -477,9 +481,10 @@
};
13B07F951A680F5B00A75B9A /* Release */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = A0ADC72831CA03F74BB7F603 /* Pods-NeulandNext.release.xcconfig */;
baseConfigurationReference = CF57386248C9E08838947E6F /* Pods-NeulandNext.release.xcconfig */;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS = YES;
CLANG_ENABLE_MODULES = YES;
CODE_SIGN_ENTITLEMENTS = NeulandNext/NeulandNext.entitlements;
CODE_SIGN_IDENTITY = "Apple Development";
Expand All @@ -489,7 +494,10 @@
"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64;
INFOPLIST_FILE = NeulandNext/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 15.1;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 1.0;
OTHER_LDFLAGS = (
"$(inherited)",
Expand Down Expand Up @@ -554,7 +562,10 @@
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 15.1;
LD_RUNPATH_SEARCH_PATHS = "/usr/lib/swift $(inherited)";
LD_RUNPATH_SEARCH_PATHS = (
/usr/lib/swift,
"$(inherited)",
);
LIBRARY_SEARCH_PATHS = "$(SDKROOT)/usr/lib/swift\"$(inherited)\"";
MTL_ENABLE_DEBUG_INFO = YES;
ONLY_ACTIVE_ARCH = YES;
Expand Down Expand Up @@ -610,7 +621,10 @@
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 15.1;
LD_RUNPATH_SEARCH_PATHS = "/usr/lib/swift $(inherited)";
LD_RUNPATH_SEARCH_PATHS = (
/usr/lib/swift,
"$(inherited)",
);
LIBRARY_SEARCH_PATHS = "$(SDKROOT)/usr/lib/swift\"$(inherited)\"";
MTL_ENABLE_DEBUG_INFO = NO;
OTHER_LDFLAGS = (
Expand Down
51 changes: 51 additions & 0 deletions ios/NeulandNext/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,57 @@
<string>0.11.0</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleIcons</key>
<dict>
<key>CFBundleAlternateIcons</key>
<dict>
<key>Default</key>
<dict>
<key>CFBundleIconFiles</key>
<array>
<string>Default</string>
</array>
<key>UIPrerenderedIcon</key>
<false/>
</dict>
<key>ModernGreen</key>
<dict>
<key>CFBundleIconFiles</key>
<array>
<string>ModernGreen</string>
</array>
<key>UIPrerenderedIcon</key>
<false/>
</dict>
<key>ModernPink</key>
<dict>
<key>CFBundleIconFiles</key>
<array>
<string>ModernPink</string>
</array>
<key>UIPrerenderedIcon</key>
<false/>
</dict>
<key>RainbowMoonLight</key>
<dict>
<key>CFBundleIconFiles</key>
<array>
<string>RainbowMoonLight</string>
</array>
<key>UIPrerenderedIcon</key>
<false/>
</dict>
<key>Retro</key>
<dict>
<key>CFBundleIconFiles</key>
<array>
<string>Retro</string>
</array>
<key>UIPrerenderedIcon</key>
<false/>
</dict>
</dict>
</dict>
<key>CFBundleURLTypes</key>
<array>
<dict>
Expand Down
Loading

0 comments on commit 5f143fd

Please sign in to comment.