Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions android/app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@ android {

dependencies {
// React Native Core
implementation "com.facebook.react:react-android:0.78.2"
implementation "com.facebook.react:react-android:0.83.2"
implementation("com.facebook.react:hermes-android")

// Dev app dependencies
Expand Down Expand Up @@ -193,4 +193,3 @@ configurations.all {
}
}

apply from: "../../node_modules/react-native-vector-icons/fonts.gradle"
8 changes: 4 additions & 4 deletions android/build.gradle
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
ext {
buildToolsVersion = "35.0.0"
minSdkVersion = 24
compileSdkVersion = 35
targetSdkVersion = 35
buildToolsVersion = "36.0.0"
minSdkVersion = 29
compileSdkVersion = 36
targetSdkVersion = 36
// needed by camera module
googlePlayServicesVersion = "17+"
androidXAnnotation = "1.2.0"
Expand Down
21 changes: 10 additions & 11 deletions ios/DeveloperApp/AppDelegate.swift
Original file line number Diff line number Diff line change
Expand Up @@ -15,17 +15,16 @@ class AppDelegate: ReactAppProvider {

override func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
SessionCookieStore.restore() //iOS does not persist session cookies across app restarts, this helps persisting session cookies to match behaviour with Android
super.setUpProvider()
super.application(application, didFinishLaunchingWithOptions: launchOptions)
setUpProvider(dependencyProvider: RCTAppDependencyProvider())
clearKeychainIfNecessary()
setUpDevice()
setUpGoogleMaps()
setUpPushNotifications(application)
updateRootViewController(showOnboarding() ? .launchTutorial : .openApp)
return true
return super.application(application, didFinishLaunchingWithOptions: launchOptions)
}

override func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool {
func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool {
RCTLinkingManager.application(app, open: url, options: options)
guard let appUrl = AppPreferences.appUrl, !appUrl.isEmpty, !ReactAppProvider.isReactAppActive() else {
return true
Expand All @@ -37,11 +36,11 @@ class AppDelegate: ReactAppProvider {
return true
}

override func applicationDidEnterBackground(_ application: UIApplication) {
func applicationDidEnterBackground(_ application: UIApplication) {
SessionCookieStore.persist() //iOS does not persist session cookies across app restarts, this helps persisting session cookies to match behaviour with Android
}

override func applicationWillTerminate(_ application: UIApplication) {
func applicationWillTerminate(_ application: UIApplication) {
SessionCookieStore.persist() //iOS does not persist session cookies across app restarts, this helps persisting session cookies to match behaviour with Android
}

Expand All @@ -60,7 +59,7 @@ extension AppDelegate {

static var orientationLock = UIInterfaceOrientationMask.portrait // By default lock orientation only portrait mode.

override func application(_ application: UIApplication, supportedInterfaceOrientationsFor window: UIWindow?) -> UIInterfaceOrientationMask {
func application(_ application: UIApplication, supportedInterfaceOrientationsFor window: UIWindow?) -> UIInterfaceOrientationMask {
return AppDelegate.orientationLock
}

Expand All @@ -74,9 +73,9 @@ extension AppDelegate {
extension AppDelegate {
private func updateRootViewController(_ storyboard: UIStoryboard) {
window = MendixReactWindow(frame: UIScreen.main.bounds)
window.rootViewController = storyboard.instantiateInitialViewController()
window.makeKeyAndVisible()
window.overrideUserInterfaceStyle = .light // Force Light Mode
window?.rootViewController = storyboard.instantiateInitialViewController()
window?.makeKeyAndVisible()
window?.overrideUserInterfaceStyle = .light // Force Light Mode
IQKeyboardManager.shared().isEnabled = false
}

Expand Down Expand Up @@ -154,7 +153,7 @@ extension AppDelegate: UNUserNotificationCenterDelegate, MessagingDelegate {
}

#if DEBUG
override func application(_ application: UIApplication,
func application(_ application: UIApplication,
didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {
print("APNs token retrieved: \(deviceToken)")
Messaging.messaging().apnsToken = deviceToken
Expand Down
11 changes: 8 additions & 3 deletions ios/DeveloperApp/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -58,13 +58,13 @@
<true/>
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we remove 60Hz refresh rate cap by adding
<key>CADisableMinimumFrameDurationOnPhone</key> <true/>

<key>MobildeDocsUrl</key>
<string>https://docs.mendix.com/refguide/mobile/</string>
<key>NSAppleMusicUsageDescription</key>
<string>To use that feature the app needs access to your media library.</string>
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsLocalNetworking</key>
<true/>
</dict>
<key>NSAppleMusicUsageDescription</key>
<string>To use that feature the app needs access to your media library.</string>
<key>NSBluetoothAlwaysUsageDescription</key>
<string>${BLUETOOTH_USAGE_DESCRIPTION}</string>
<key>NSBluetoothPeripheralUsageDescription</key>
Expand All @@ -89,6 +89,8 @@
<integer>31</integer>
<key>NativeOTAEnabled</key>
<true/>
<key>RCTNewArchEnabled</key>
<true/>
<key>ReferenceGuideUrl</key>
<string>https://docs.mendix.com/refguide/</string>
<key>SampleAppsUpdateIntervalInSeconds</key>
Expand Down Expand Up @@ -118,10 +120,13 @@
<string>FontAwesome5_Brands.ttf</string>
<string>FontAwesome5_Regular.ttf</string>
<string>FontAwesome5_Solid.ttf</string>
<string>FontAwesome6_Brands.ttf</string>
<string>FontAwesome6_Regular.ttf</string>
<string>FontAwesome6_Solid.ttf</string>
<string>Fontisto.ttf</string>
<string>Foundation.ttf</string>
<string>Ionicons.ttf</string>
<string>MaterialCommunityIcons.ttf</string>
<string>MaterialDesignIcons.ttf</string>
<string>MaterialIcons.ttf</string>
<string>Octicons.ttf</string>
<string>SimpleLineIcons.ttf</string>
Expand Down
4 changes: 2 additions & 2 deletions ios/DeveloperApp/MendixApp/MendixAppViewController.swift
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ class MendixAppViewController: UIViewController, ReactNativeDelegate {

// Set all orientations available while launching the mendix app.
AppDelegate.orientationLock = .all
AppDelegate.delegateInstance()?.window.overrideUserInterfaceStyle = .unspecified
AppDelegate.delegateInstance()?.window?.overrideUserInterfaceStyle = .unspecified
ReactNative.shared.delegate = self
ReactNative.shared.start()
}
Expand All @@ -31,7 +31,7 @@ class MendixAppViewController: UIViewController, ReactNativeDelegate {
super.viewDidDisappear(animated)
// Set orientation to only portrait mode, while exiting the mendix app.
AppDelegate.orientationLock = .portrait
AppDelegate.delegateInstance()?.window.overrideUserInterfaceStyle = .light
AppDelegate.delegateInstance()?.window?.overrideUserInterfaceStyle = .light
}

func onAppClosed() {
Expand Down
2 changes: 1 addition & 1 deletion ios/DeveloperApp/OpenApp/TabViewController.swift
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ class TabViewController: UITabBarController {

func setSelectedIndex(index:Int){
guard let appDelegate = UIApplication.shared.delegate as? AppDelegate,
let tabBarController = appDelegate.window.rootViewController as? UITabBarController else {
let tabBarController = appDelegate.window?.rootViewController as? UITabBarController else {
return
}
tabBarController.selectedIndex = index
Expand Down
4 changes: 4 additions & 0 deletions ios/Podfile
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,10 @@ end

ENV['RCT_NEW_ARCH_ENABLED'] = '1'

# Build React Native from source so patch-package changes to native RN code are compiled.
ENV['RCT_USE_PREBUILT_RNCORE'] = '0'
ENV['RCT_USE_RN_DEP'] = '0'

# Use it to require both react-native's and this package's scripts:
node_require('react-native/scripts/react_native_pods.rb')
node_require('react-native-permissions/scripts/setup.rb')
Expand Down
Loading