IOS49 CocoaPods PBXFileSystemSynchronizedRootGroup 오류 (Xcode 16 ) Xcode 16으로 업그레이드한 뒤에 CocoaPods를 쓰려고 pod init을 실행했는데,아래와 같은 오류가 자주 발생한다.RuntimeError - `PBXGroup` attempted to initialize an object with unknown ISA `PBXFileSystemSynchronizedRootGroup` 이 문제를 해결하는 가장 빠르고 간단한 방법 중 하나는프로젝트 내에 “Folder”로 표시된 디렉터리를 전부 “Group”으로 변환해주는 것이다.문제가 해결이 우선이라면 여기까지만 읽어도 해결이 될듯하다.핵심 해결 방법Xcode 프로젝트 열기프로젝트 트리(좌측 Navigator)에서 폴더 아이콘으로 표시된 디렉터리를 우클릭“Convert to Group” 메뉴가 있으면 선택하여 .. 2025. 1. 23. APNs 푸시 알림이 오지 않는다 - DeviceToken, aps-environment, Provisioning Profile 1. 문제 상황(1) 운영 APNs에서 푸시 알림이 도착하지 않음배경: iOS 앱에서 푸시 알림이 정상적으로 오지 않는 상황이 발생함.증상: 운영(Production) 환경으로 APNs 푸시를 보냈는데, 실제 기기에서는 알림이 전혀 수신되지 않음.(2) 디바이스 토큰이 환경별로 다른 것으로 보임포인트: APNs에서 개발(Sandbox) 환경과 운영(Production) 환경은 각기 다른 디바이스 토큰을 발급하는가?상세: 개발 환경에서 발급된 토큰을 운영 환경 서버로 사용하면 푸시가 오지 않을 수 있음.(3) Entitlements.plist 설정 문제발견: aps-environment 값이 development로 설정되어 있음.의문: 운영 환경 배포 시에는 production으로 바꿔야 하는지, 그리고 .. 2024. 12. 28. [iOS] RealityKit, ARKit - MotionCapture 예제 ARViewContainer SwiftUI는 기본적으로 UIKit 또는 AppKit 컴포넌트를 직접 지원하지 않는다. 즉, ARView와 같은 UIKit 컴포넌트를 SwiftUI에서 바로 사용할 수 없다. 따라서, UIKit의 ARView를 SwiftUI 뷰에서 사용하고자 할 때는 UIViewRepresentable 프로토콜을 채택하여 UIKit 뷰를 SwiftUI 뷰로 변환해야 한다. ARView, Entity란? struct ARViewContainer: UIViewRepresentable { typealias UIViewType = ARView //이 메서드는 SwiftUI 뷰가 생성될 때 호출. //여기서 실제 ARView 인스턴스를 생성하고 초기 설정을 수행. func makeUIView(con.. 2024. 2. 14. [iOS] SIMD3 현재 보고 있는 AR, 그래픽스 관련하여 3D모델의 위치를 추적하고 저장하는 과정에서 많이 보이는 타입이다. SIMD3는 단일 명령 다중 데이터(Single Instruction, Multiple Data, SIMD) 프로그래밍 모델을 따르는 벡터 타입으로, 세 개의 스칼라 값을 갖는 벡터를 표현한다. struct SIMD3 where Scalar : SIMDScalar SIMD3는 제네릭 구조체로, Scalar 타입의 세 개의 요소를 갖는다. 이때, Scalar는 SIMDScalar 프로토콜을 준수해야 하며, 이는 주로 기본 수치 타입(int, float 등)을 의미한다. 연산자와 메서드 SIMD3 구조체는 연산자를 통해 벡터 간 연산을 지원한다. 예를 들어, &* 연산자는 두 벡터의 요소별 곱셈을 수.. 2024. 2. 6. RealityKit - ARView, Entity RealityKit is… ARKit 위에 구축된, 증강 현실을 위한 고수준 프레임워크. 자체적인 ARView를 사용하여 AR 콘텐츠를 표시하며, 이 ARView는 내부적으로 ARSession을 사용하여 ARKit과 통신한다. ARView RealityKit에서 AR 경험을 제공하기 위해 사용되는 뷰이다. 뷰는 단일 Scene 인스턴스를 가지며, Scene 인스턴스에는 실제 세계의 어떤 것에 콘텐츠를 고정시키는 AnchorEntity 인스턴스를 추가할 수 있다. 각 AnchorEntity에는 Scene의 컨텐츠를 구성하는 Entity, Entity 계층이 추가될 수 있다. Entity RealityKit에서는 Scene 내의 모든 요소가 Entity라는 단 하나의 클래스에서 파생된다. Entity는 여러.. 2024. 2. 3. [iOS] ARKit(1) - OverView, Setting 요즘 그래픽스 관련 서적을 참고하고 Metal 관련 코드를 공부하고 있다. 그러다가 집중력이 흐려질땐 내부적으로 Metal 기능을 사용하고 있는 ARKit, RealityKit과 같은 프레임워크를 경험하면서 Top - Down 방식으로 접근해보는 것도 도움이 될 것이라 판단했다. ARKit ARKit 프레임워크의 주요 목적은 증강 현실(AR) 경험을 개발하는 것이며 제공하는 기능은 다음의 4가지다. motion trackingworld tracking환경의 표면, 크기, 형태를 파악디스플레이 편의성ARKit의 차별화된 기능: 마커리스 추적ARKit의 특징 중 하나는 markerless tracking 이다. 추적 카드(마커)도 필요 없이 주변 환경을 파악하고, 가상 콘텐츠를 실제 환경에 자연스럽게 어우러.. 2024. 1. 21. Observer 패턴 vs Publisher/Subscriber 패턴 (1) 데이터 흐름: 입력과 출력 MVC 구조 내에는 두 가지 주요 데이터 흐름이 있습니다: 입력 흐름: 뷰에서 시작하여 사용자 입력을 컨트롤러에 전달하고, 컨트롤러는 이를 처리하여 모델의 데이터를 변경할 수 있습니다. 출력 흐름: 모델에서의 변경 사항에서 시작하여, 이러한 변경 사항이 UI에 빠르게 반영되어야 합니다. 여기서 Observer 패턴과 Publisher/Subscriber 패턴이 중요한 역할을 합니다. NotificationCenter의 MVC 내 역할 NotificationCenter는 전통적인 Observer 패턴보다는 Publisher/Subscriber 패턴에 더 가깝습니다. 그 이유는 ... NotificationCenter는 앱의 다른 컴포넌트 사이에서 느슨하게 결합된 통신 경로를 제공.. 2023. 11. 7. 이전 1 2 3 4 ··· 7 다음 728x90