Hướng dẫn gọi Native iOS trong Unity bằng Swift Packages
Chào các bạn, mình là La Dương Xuân Linh, Unity developer tại OneTech Asia. Hôm nay mình sẽ chia sẻ một bài hướng dẫn cách gọi từ Native iOS sang Unity bằng cách tạo Swift Packages (Calling Native iOS in Unity with Swift Packages).
Tạo một Swift Package bằng Xcode bên phía iOS
- Chúng ta cần sử dụng một máy tính có hệ điều hành macOS và có XCode phiên bản nhỏ hơn XCode 14.0.0 do tính năng xcodebuild (tính năng này dùng để build một xcodeproj từ terminal thành một framework để chúng ta có thể sử dụng trong Unity) đã bị deprecated ở những phiên bản sau đó.
- Chúng ta cũng cần set phiên bản xcode sử dụng ở terminal bằng cách chọn trên thành Menu ở: Xcode -> Settings


Định nghĩa một Swift function để sử dụng trong Unity
- Tiếp đến chúng ta truy cập vào Sources/ và tạo một file .swift để tạo một function mà chúng ta có thể xuất ra và sử dụng trong Unity.
- Để định nghĩa một function như vậy thì chúng ta cần thêm keyword @_cdecl(“function_Name”) ở trước function đó để khi chúng ta gọi xcodebuild trong terminal thì function đó sẽ được định nghĩa ở các tầng thấp hơn (C) => Điều này giúp chúng ta gọi được **DllImport(“__Internal”)*** trong Unity và sử dụng function đó.*
- Ví dụ, chúng ta có một trường hợp như thế này:
