일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- window
- Xcode
- 개발자
- 한글
- appstore
- Session
- UIButton
- darkmode
- MacOS
- Apple
- Notification
- 웹뷰
- Python
- mac
- Archive
- view
- stack
- FLUTTER
- Git
- SwiftUI
- github
- Code
- error
- iOS16
- Firebase
- Swift
- IOS
- rxswift
- JPA
- Realm
- Today
- Total
목록Xcode (39)
EEYatHo 앱 깎는 이야기
레거시 프로젝트가 싫은 이유 하나 추가.. CI/CD 할 때 더럽게 힘들다.. 물론 내가 실력이 모자라서 그런거겠지만 zz.. 개인 프로젝트에 도입할 땐 하루이틀이면 됐는데, 레거시에는 여러 알수없는 설정들과 많은 서드파티들 때문에, 구글링으로 나온 일반적인 해결책이 통하지 않는 에러가 많아서 고생했다. CompileSwiftSources normal arm64 error: failed to emit precompiled header error: generate-pch command failed with exit code 1 file not found with include; use "quotes" instead *.h file not found 등등... 만약 나와 같은 문제를 겪는 사람이 있다면, 아..
색을 표현하는 방법은 RGB라고 해서, 단순하게 끝이 아니다. 어떤 모델인가에 따라, 각 상수(R,G,B)들이 가지는 가중치가 달라진다. 일반적인 모델로 sRGB가 있으며, ( 0.0~1.0 범위, 8비트 ) 0.0~1.0의 범위를 초과한 값도 색으로 표현해주는 Extended sRGB가 있고, ( Xcode의 기본 ColorSpace ) 16비트를 사용하면서 표현할 수 있는 색 범위가 넓어진 DisplayP3 (DP3)도 있다. 이런 모델들을, Xcode, Swift 에서는 ColorSpace 라고 하며, 이미지 파일에서는 ColorSync Profile 이라고 한다. iOS9.3 & 아이폰7 부터 DisplayP3 모델을 지원하며, 디자이너분들에게 DP3로 적용해달라는 요청이 들어와서 처음 알게 되었..
과거 런치스크린을 스토리보드로 하나의 뷰를 띄워주는 형태가 아닌, static image 여러개로 때우던 방식이 있었다. 그러나 이런 방식은, 다양한 스크린 크기에 대응하려면 크기마다 이미지가 있어야 하기 때문에, 번거롭고 어렵워서 Deprecated 되었다. 이런 방식이 적용된 레거시 프로젝트에서, 쓰지도 않는다고 저 LaunchImage를 삭제해버리면, 빌드시 오류가 발생한다. build setting에서 asset을 검색하고, Asset Catelog Launch Image Set Name 항목을 함께 삭제해주면 된다.
20220118 Xcdoe13.0 시뮬레이터 iphone12 (iOS15) 에서 발생. 이미지 캐싱 방식 문제인가.. 구글링 해도 정확한 원인 파악은 못함. 빌드 클린, 시뮬레이터에서 해당 앱 삭제, 시뮬레이터 종료, Xcode 종료, Xcode 재실행 했더니 보임.
요약 iOS 14.5 이상에서, AirBridge의 Deferred Deeplink 이용을 위해 Tracking Authorize Timeout를 지원하고, Xcode 12.5와 충돌하지 않는 AirBridge의 버전은 1.17.0 이다. ( 1.18.0 은 충돌한다 ) 주절주절 사내에서 AirBridge를 이용한 디퍼드 딥링크 이용 중, iOS 14.5 부터는 IDFA를 ATT로 유저에게 직접 받아내야해서 핑거프린팅을 이용한 Deferred Deeplink 이용에 제한이 걸렸다. 다행히, ATT를 선택할시 or 타임아웃시, Deferred Deeplink를 콜 해주는 Tracking Authorize Timeout를 지원해주고 있었고, 이는 AirBridge 1.14.3 이상부터 지원한다고 되어있었기에..
Xcode 12.4 사용중인데, iOS15 실제 아이폰, 아이패드에서 디버그가 안된다 ㅡㅡ iOS14.4 시뮬에서는 된다. 구글링해보니 Xcode랑 iOS 버전 매칭 문제인듯하다. ( _dyld_process_info_create 함수의 구현이 바뀌었단다.. ) 해결방법 settings set plugin.process.gdb-remote.packet-timeout 300 1. 홈디렉토리에 .lldbinit 파일 만들고, 위 코드를 넣어준다. 이 방법은 근본적인 해결책이 아니라, 그냥 오래 기다린다는 거다. 나 같은 경우, 에러 메세지도 안뜨고 그냥 쭉 무반응이더라. 근본적인 문제는 디버그 하는데에 시간이 겁~~나 걸리게 된 것이다. 한무루프..? 2. 버전에 맞는 Xcode를 사용한다. 지금 13버전이..
1. Xcode 자체적으로 지원해주는 기능을 사용한다. Product -> Clean Build Folder 하지만,, 완벽하게 지워지진 않는다. 2. 직접 남아있는 찌꺼기를 지운다. 경로 : ~/Library/Developer/Xcode/DerivedData/* CMD로 가능 rm -rf ~/Library/Developer/Xcode/DerivedData/* 직접 찾아가서 지우기 가능 ( 라이브러리 폴더가 안보이면 커맨드+쉬프트+. 을 입력하면 숨김폴더가 보인다. )
네비게이션바에는 기본값으로 하단에 회색 1px짜리 라인이 있다 = shadowImage UIScrollViewDelegate를 채택한 뷰컨의 경우, 스크롤 할 때, 이 shadowImage를 바꿀 수 있는 설정이 있다. 아래처럼하면 스크롤시 shadowImage가 사라지는 효과를 줄 수 있다. let scrollEdgeAppearance = UINavigationBarAppearance() scrollEdgeAppearance.shadowColor = .clear // 스크롤 될 때의 shadowImage의 색깔 naviBar?.scrollEdgeAppearance = scrollEdgeAppearance let standardAppearance = UINavigationBarAppearance() st..