Cùng một bài, đọc bằng chữ. Nhanh hơn và tìm lại được bằng Ctrl+F.
Xcode cũ
App iOS khởi động qua file AppDelegate
React Native gắn vào đó, app mở bình thường
Xcode 27, iOS 27 SDK
Apple bắt buộc app khởi động qua scene
App chỉ có AppDelegate thì không mở được
Scene là một cửa sổ của app
Mỗi scene có một file SceneDelegate. File này lo lúc cửa sổ mở ra, và lúc có link mở vào app. React Native 0.88 khởi động được từ SceneDelegate.
0.88 vẫn giữ đường AppDelegate cho app chưa lên Xcode 27.
Chuyển chỗ khởi động sang SceneDelegate
Code khởi động React Native đang nằm trong AppDelegate. Xcode 27 chỉ mở app qua scene, nên chuyển đoạn đó sang SceneDelegate.swift.
Chuyển link mở app cho RCTLinkingManager
Bấm một link mở thẳng vào app thì URL đó giờ đến SceneDelegate. Chuyển URL cho RCTLinkingManager, để code React Native nhận được link.
Khai báo scene trong Info.plist
Thêm key UIApplicationSceneManifest vào Info.plist, file cấu hình của app. Giữ UIApplicationSupportsMultipleScenes là false, vì 0.88 chỉ hỗ trợ một cửa sổ.
Copy từ template, khỏi viết từ đầu
Upgrade Helper trên trang React Native cho xem code đổi giữa hai bản. Chọn bản đang dùng và 0.88, rồi xem SceneDelegate.swift và Info.plist.
App tạo mới từ template 0.88 đã có sẵn hai file này.
Khi nâng lên 0.88
Nên
Nâng lên 0.88 trước, rồi mới đổi sang Xcode 27
Bấm thử một link mở app sau khi sửa
Không nên
Bật nhiều cửa sổ: 0.88 chưa hỗ trợ
Chờ build xong app không mở mới sửa
App của bạn đang ở React Native bản mấy?
Mở package.json xem bản react-native. Dưới 0.88 thì nâng cấp trước khi đổi sang Xcode 27.












