2023의 게시물 표시

[iOS 17 Beta] Xcode 15 Beta 5 Upload error

이미지
  [iOS 17 Beta] Xcode 15 Beta 5 Upload error 안녕하세요. 물먹고하자 입니다 :) 어제 Xcode 15 Beta 5 올리고, PNG 이슈 해결된걸 확인했더니 왠걸.. 앱스토어 업로드가 안되더군요... 내용공유만 드리고, 해결방법은 기다리는 수밖에 ㅠㅠ (작년에도 정식업데이트 되기 전까지 업로드 안되었었습니다.)   Upload 오류발생 올해는 안뜨나 했는데 역시나 떴군요. Invalid Toolchain. Your app was built with an unsupported SDK or version of Xcode. If you plan to submit this build to the App Store, make sure you are using the versions listed 해석해보면 ? 지원되지 않은 SDK, Xcode 버전 작년에도 떳던건데, 사실 Beta때 업로드 안될때가 많다. 애플포럼 동일한 에러 발생..   마무리 어쩐지 7월달 초까지 술술풀린다 했는데, 방심하는 틈을 타 앱스토어 업로드 안되는 오류가 발생 할 줄이야 이거에 대한 해답은 언제나 여분의 Mac을 가지고 있어야 한다는점 (ㅋㅋㅋ....) 제가 베타진행할때 언제나 다른팀원분은 바로 올리지 않도록 하고 진행하는데, 조금더 기다려야겠다. 여분 Mac 초기화해서 업로드는 가능하겠금 만들어 놔야겠다. 오늘은 이만~ 즐거운 코딩 되세요~ 끝.

[iOS 17 Beta] Xcode 15 Beta 5, iOS 17 Beta 4 PNG 문제 확인

이미지
  [iOS 17 Beta] Xcode 15 Beta 5, iOS 17 Beta 4 PNG 문제 확인 안녕하세요. 물먹고하자 입니다 :) 어제까지 기준으로 PNG 이슈 나오고 있어서 글 정리 했었는데 오늘 딱 Xcode 15 Beta 5, iOS 17 Beta 4 가 업데이트 되면서 드디어 " PNG 문제가 해결된것" 같습니다.   Beta 업데이트 7/25일 기준으로 Xcode 15 Beta 5 가 나왔네요. iOS 17 기준으로는 Public Beta, Developer Beta 두가지로 출시 되었습니다. iOS 17 Beta 4 기준은 둘다 동일한것 같습니다. 저는 개인폰은 Public Beta로 변경하였고, 테스트 폰은 Developer Beta로 진행하고 있습니다. 기존에 iOS 17 Beta 4 미만 + Xcode 15 Beta 5 미만 에서 빌드시 PNG 깨지는 현상 이 발생했었습니다. 예상은 Xcode 15 Beta 5 업데이트 후 재빌드 를 통해서 설치시 정상으로 돌아왔습니다. PNG 이미지 정상적으로 랜더링 됨.   마무리 7/25일 기준으로 Public Beta가 나오니 눈에 띄던 현상들은 확실히 들어간 느낌 입니다. 랜더링 문제 이런것들은 특히 해결할 수 없다보니 기다리는 수밖에 없었는데 그래도 너무 늦지 않게 8월 전에 해결되어서 정말 다행인것 같네요. 올해 iOS17 대응하고 있으면서, 그래도 이번만큼은(?) 문제가 별로 안나오는 것 같습니다. 참고부탁드려요 오늘은 이만~ 즐거운 코딩되세요~ 끝.

[iOS17 Beta] 7/24일 기준 이슈체크 (릴리즈 노트 참고)

이미지
  [iOS17 Beta] 7/24일 기준 이슈체크 (릴리즈 노트 참고) 안녕하세요. 물먹고하자 입니다 :) 저번에 Xcode 15 Beta 업데이트 하면서 간단하게 이슈들은 눈여겨 보았습니다. 오늘은 이슈가 있는건 알겠는데, 내가 고쳐야할지 말지 고민이되는 항목이 있어서 iOS17 릴리즈 문서 쪽 체크해보았습니다.   문서 : iOS & iPadOS 17 Beta 3 Release Notes #. 사이트의 참고용 이미지들을 찍어놓은상태 더 자세히 보고싶으시면, 애플공식문서 확인필요! 해당 사이트에는 iOS12 ~ iOS17 까지 현재진행형으로 기록이 쓰여지고 있습니다. 다행이라고 할까요? 제가 제일 걱정되었던 부분인데, PNG 알파값 존재시 랜더링 이미지 손상 애플에서도 인지는 하고 있네요.. 문제는 지금이 iOS 17 Beta3 인데, 지금까지 안고쳐졌다면 약간 걱정되는 수준입니다. 이미지를 대처할지 말지 ㅠㅠ 다음 Beta4 기다려봐야할 것 같습니다. 음..? 오디오 코덱 솔직히 잘 쓰지않는 부분은 또 관심까진 않은데, 나중에 얘기나올수 있으니 체크해두기 아하..? 기기 버그도 있네요. 셀룰러 안잡히는 버그 사진첩에는 신규 .heic 랜더링하는 함수가 추가되었고.. 스토어킷2 사실 해당사항이 없어서 관심은 없는데, WWDC23에서 해당 부분관련 내용이 많아서 미리 체크 그 외 짜잘짜잘 버그들 체크   마무리 오늘은 업무중에 iOS17 관련해서 내용 찾다가 릴리즈노트 발견 해서 내용 체크해보았습니다. 사실 그놈의 PNG 알파값존재시 랜더링 문제 때문에 들어간건 있는데, 간혹, "우리앱에서만 나오는 버그가 저 릴리즈 노트에 없다?!" 그러면 저희가 고쳐야하는 경우도 있답니다 ㅠㅠ 다행인지, PNG 랜더링 이슈는 적혀 있고, 다른 커뮤니티에서도 말이 많이 나오고 있네요. iOS 17 Beta3 인데도 안고쳐 진거면, 큰거 같은데 제발 다음 Beta4에 고쳐져 있기를.... 오늘은 이만~ 즐거운 코딩되세요 끝.

[SPM] swift-tools-version 업데이트 하기

이미지
  [SPM] swift-tools-version 업데이트 하기 안녕하세요.  물먹고하자  입니다 :) iOS 17 대응 을 준비하면서 기존 프로젝트들을  iOS 15로 최소버전 을 잡고 있는데, SPM에서 iOS 15설정이 안보이길래  설정하는 방법에 대해서 정리하였습니다. 바로 시작!   Swift Package Manager 영역 기존에 사용중인 SPM 참고 :  https://xodhks0113.blogspot.com/2021/04/spm-05-spm-private-gitgitlab.html 기존에 회사에 SPM 도입을 공통라이브러리 집합으로 만들면서 기간을 보니  2021년 도에 진행했더군요. 당연히 업데이트가 필요해진 시기 인 것 같습니다. 주목적인 Target을 iOS 15로 변경하려고하니? 안보이더군요 문서에서 Version 15는 SwiftPM 5.5 이상 부터 사용가능하다고 써있네요 잠시 샘플로 만들어보니 위에 주석부분의 버전이 높으니 iOS15 설정이 바로 되더군요 이제는 Document로 이동 사실 조금 해매긴 했는데, Xcode내에서 설정을 하는게 있나? 콘솔로 뭘 업데이트 해야하나?  Package정보중 상단에 [ // swift-tools-version:5.3 ] 부분을 참고해서  해당 SPM의 최소 tool 버전을 체크한다고 써있네요. swift-tools-version:5.3 -> 5.8 로 변경 이렇게 변경을 하고 나면 swift-tools-version update 완료~ (와~~) 사실 허무했어요 ㅋㅋ   마무리 오늘은 SPM의 swift-tools-version update 하는 방법 을 알아보았습니다. 사실 어디서 업데이트를 하는거야? 를 주구장창 찾다가 주석을 바꾸면 될 줄은 몰랐습니다. (허무 ㅋㅋ) 그래도 SPM을 쓰고나서 회사에서 2년동안 내부에서 사용하는 View들이 많이 늘어나서 편리함을 무시는 못하겠내요, 오늘은 이만~ 즐거운코딩 되세요~ 끝.

[Beta 대응준비] Xcode Beta 설치 빌드/테스트프라이트 테스트

이미지
   [Beta 대응준비] Xcode Beta 설치 빌드/테스트프라이트 테스트 안녕하세요. 물먹고하자 입니다 :) 매년 이맘때쯤 이면 Beta 대응준비를 하는데 어김없이 왔네요! 매해 제 개인적패턴인데, 6월 WWDC 발표 후 다음주 iOS Beta 개인폰에 설치 및 사용 이때 실사용하면서 카카오톡, 인스타, Facebook, 저희 앱들 등 이상한 부분들을 어느정도 체크 해요 iOS17 에서는 시작하자마자 키보드(높이), WebView(Png가 깨지는문제) 이렇게가 바로 보였고, 그 외에 앱이 죽거나 그런현상은 나오지 않았던것 같습니다.   Xcode 15.0 Beta 4 Mac OS : Sonoma 부터는 Mac OS 앱들이 약간 iPad 앱 스타일처럼 바뀌었는데, Xcode 버튼도 iPad 앱에서 보는듯한 버튼으로 변경되었네요. 프로젝트로 들어와서 네비게이터나 소스쪽이거나 눈에띄게 크게 바뀌진 않은것 같고,  Git이 연결된 변경된 부분(파랑색) 이부분은 조금 바뀌었네요. 오.. 디버그 할때 커멘드 라인이 원래 위에 있었는데, 아래로 고정 된건 편해진것 같습니다!   테스트플라이트 업로드 테스트 매번 Xcode 업데이트마다 바뀐 업로드창  릴리즈 테스트??, 디버그??, 커스텀?? 이건 못봤던 항목이 추가되었네요. 애플코리아 본사에 솔루션데이에 참석해서 배포관련 물어봤을때  [앱스토어, 인하우스, AdHoc, 비즈니스 앱] 빼고 다른 한가지가 추가 된다고 했는데 저 커스텀이 몬가 있긴한것 같네요.. 저희쪽 앱 배포시 인하우스로 하다보니 1년 단위 갱신이 참 그렇긴한데, 방법이 추가되면 공부를 또 해야겠습니다. 이번에 신기한게, 보통 Next > Next > Next > Next 해야 끝나던게 테스트플라이트 & 앱스토어 선택하고 업로드 하니 물어보는거 없이 끝나더군요 더군다나 Xcode Beta 인데...? 아직 7월 인데? 업로드가 된다고...?? 이번년도 느낌이 조금 좋은것 같습니다. 문제의 화면 Xcode15 Beta 빌

2023 WWDC 요약? 7/4일

이미지
   2023 WWDC 요약? 7/4일 안녕하세요. 물먹고하자 입니다 :) 오늘 메일을 보다보니 Apple에서 WWDC23 요약을 한국어 로 발표한다고 와있더군요 원래?? 이렇게 까지 제공해줬었나?? 일단 페이지 이동하고 내용체크해서 듣고 싶은 세션을 선택해서 들을 수 있나봅니다. 등록은 멤버쉽기준 으로 등록되고 웨비나를 통해서 발표를 하나 봅니다.   세션항목들중에 (7월 4일 화요일) - 앱내 구입 상품개발에 필요한 신규 API 11:30 ~ 12:30 - VisionOS의 Shared Space에서 iPad, iPhone 앱 실행하기 2:30 ~ 3:00 - 게임을 Mac으로 가져오기 3:30 ~ 4:00 - VisionOS에서 몰입경험을 주는 게임 제작 4:00 ~ 5:00 - Live Activity, Widgets, TipKit, WatchOS 새로운 내용 알아보기 10:00 ~ 10:30 - 업데이트 된 머린러닝 기술 알아보기 10:30 ~11:00 - Medio in VisionOS 3:00 ~ 3:30 - Apple Vision Pro 알아보기 2:00 ~ 2:30 시간이 거의 타이트하게 오전 10:00 ~ 오후 5:00 까지 차있는데, 전부다 듣는건 아니고 듣고 싶은것만 들을 수 있나봐요 역시 VisionOS 관련이 많긴한데, 업무중에 들어야해서 일부는 골라서 들어야겠네요. 오늘은 이만~

[SwiftUI 공부] 애플워치 숨시기 앱 애니메이션 따라하기 (Breathe App Animation Sample)

이미지
    [SwiftUI 공부] 애플워치 숨시기 앱 애니메이션 따라하기 (Breathe App Animation Sample) 안녕하세요. 물먹고하자 입니다 :) 예전부터 SwiftUI공부를 실무에 바로 적용하면서 하고 있긴한데, 실무에서는 솔직히 애니메이션(?) 을 제가 직접 만들일이 없다보니 잘 만드는 자신이 없어서 하나하나 샘플링 하면서 공부하고 있습니다. 오늘은 그중에서 애플워치 숨시기 앱 애니메이션을 따라해볼까 합니다.   샘플이미지 오늘의 샘플이미지.gif gif가 너무 끊겨서 유튜브영상으로 추가 첨부 합니다.   샘플코드   마무리 애플워치 사용하면서 회의하다 짜증날때, 숨시기앱 많이 켜곤했는데, 켤때마다 "애니메이션 이쁘다~" 생각했었는데, UIKit일때는 별로 따라할 생각이 없었는데, SwiftUI가 나오고 나서 만들어 봐야지 했는데, 그게 오늘이네요. 물론 저도 다른분들 소스를 보고 공부차원으로 다시작성을 했지만, 확실히 코드가 간결한고 쉬워졌네요 요즘 SwiftUI로 실무하다보니 이것저것 다 SwiftUI를 활용해서 만들고 있어서 재미있네요. 오늘은 이만~ 즐거운 코딩 되세요 :) 끝.

[SwiftUI 공부] 모서리 라운드 처리 cornerRadius 사용해보기

이미지
  [SwiftUI 공부] 모서리 라운드 처리 cornerRadius 사용해보기 안녕하세요 물먹고하자 입니다 :) 오늘은 View의 라운드처리에 대해서 알아보려고 합니다. 역시나 디자인 때문에 사용하는 빈도가 높은편이네요. 바로시작 하겠습니다!   cornerRadius 알아보기 cornerRadius :  https://developer.apple.com/documentation/swiftui/view/cornerradius(_:antialiased:) UIKit 기반부터 존재했던 기능 이며, 당연히 SwiftUI에도 기능을 제공합니다. 단, SwiftUI에서는 기본적인 cornerRadius만 제공 하고, maskedCorners는 제공되지 않습니다. 그래도 maskedCorners 와 비슷하게 SwiftUI 에서 사용하는 방법까지도 공유드립니다. 참고 :  [iOS] UIView 모서리 라운드 처리 알아보기 (cornerRadius, maskedCorners) View 라운딩 처리 기본적으로 cornerRadius, value 의 값 만큼 View의 모서리를 라운딩 처리해줍니다. frame 상관없는 원형라운딩 처리 frame 크기에 상관없이 라운드 처리시에는 .clipShape(Circle())을 활용할 수 있습니다. 원하는 위치만 라운딩 처리 번외로   [iOS] UIView 모서리 라운드 처리 알아보기 (cornerRadius, maskedCorners)  UIKit에서 사용했던 부분 라운드 처리방식을 Shape를 커스텀하게 만들어서 사용할 수 있습니다.  (간혹 위만, 아래만 라운드처리 해주세요.. 이런 화면이 있긴하죠)   마무리 오늘은 SwiftUI의 cornerRadius에 대해서 간단하게 정리해보았습니다. 역시나 디자인가이드 맞추느냐고 제일많이 활용되는 함수 이긴하네요. UIKit에서는 원형 맞출때 frame width/2 이렇게 해서 맞췄었는데, .clipShape(Circle()) 를 통해 계산없이 활용되는 부분은 편했던것 같습니다

2023 WWDC 참고사항

이미지
  2023 WWDC 참고사항 안녕하세요. 물먹고하자 입니다 :) 이번년도도 어김없이 돌아온 WWDC23 회사에서는 보고자료로 만들었는데,  블로그에는 간단한 내용  써볼까 합니다.   이번 WWDC23의 발표의 핵심적인 키워드 - AR/VR 헤드셋(Vision Pro) - iOS 17 (Widgets, Activities 기능강화, SharePlay 기능추가) - Mac PC (MacBook Air 15, Mac Pro M2 Ultra)   AR/VR 헤드셋(Vision Pro) [유튜브 링크] :  https://youtu.be/TX9qSaGXFyg Apple Vision Pro 소개 영상 이번 WWDC23의 거의 모든 내용이 Vision Pro에 중점이 맞춰져 있었으며, 지금까지 나왔던, VR기계들 대비 높은 퀄리티와 AR/VR 두가지를 한번에 점목시켜 기존 VR의 게임, 영상이 주된 컨텐츠 였다면, Vision Pro 에서는 업무, 일상, 게임, 영상 등 기존에 스마트폰이 해왔던 부분을 Vision Pro가 확장했다는 느낌을 크게 받았습니다. 일부 매체들(유튜브, 해외저널 등) 의견은 두가지로 나뉘고 있습니다. 1. Apple은 앞으로 스마트폰을 대체할 시장에 도전한다. 2. 기존 VR시장의 틈새시장밖에 되지 않기에 스마트폰을 대처하지 못한다. M2, R1 칩셋이 들어가며, 블루투스, FaceTime, Apple 디바이스간 상호작용 (Mac에서 사용중인 화면을 VR로 띄워서 작업가능) 등 VR전용 칩셋을 제외하고 기존 Apple에서 제공하고 있는 기능들을 그대로 사용할 수 있습니다. (Apple에서는 공간컴퓨터 라는 단어를 사용하였습니다.) Vision Pro는 내년초 미국에서 먼저 출시 후 점진적으로 출시국을 늘린다고 하였으며, $3,499 달러 한화 약 450만원 수준으로 측정되었습니다. [개발] 현재 Vision OS부분을 개발할 수 있는 SDK는 제공 되지 않았으며, Apple CarPlay처럼 인증된 업체에만 SDK를 제공하는지 또한 정

[SwiftUI 공부] Padding 잘 사용하기.

이미지
  [SwiftUI 공부] Padding 잘 사용하기. 안녕하세요 물먹고하자 입니다 :) 오늘은 틈내서 하는 SwiftUI 공부 당연히 이미 사용하고 있지만, 나름대로 정리를 해놓으면 나중에 꼭 도움이 되서 정리합니다. 바로시작    Padding 알아보기 Padding :   https://developer.apple.com/documentation/swiftui/view/padding(_:_:) SwiftUI에는 StackView와 오토레이아웃 적용개념이 기본으로 탑재 되면서 컨포넌트별 마진 을 줄때 사용하는 함수입니다. (View의 모든 곳에서 사용한다고 생각하시는게 좋을것 같습니다.) 기본 Padding 샘플 기본적인 Padding 사용입니다. 인자값 없이 사용가능하며, Int값만 넣으면 (위, 아래, 왼쪽, 오른쪽) 동일 하게 Padding이 적용됩니다. EdgeInsets 샘플 EdgeInsets 을 활용하여 위, 아래, 왼쪽, 오른쪽을 각기 다른 Padding값 을 설정 할 수 있습니다. 처음에 저는 왼쪽 오른쪽 Padding값만 다르게 사용하려고 했었으나, 인자값만 길어지고, 코드가독성은 좋지 않아서 딱히 추천드리진 않습니다. (이유 아래) Padding 활용 (Edge.Set) 업무중에 해당 방법을 제일 많이 사용하고 있으며, 처음에는 몰라서 EdgeInsets 의 숫자를 대입해서 사용하였지만, Edge.Set 을 활용해서 사용하는게, 오토레이아웃 형식과 비슷하고, 간결한 느낌 이 들어서 제일 많이 사용하고 있습니다.    마무리 오늘은 SwiftUI 의 Padding 에 대해서 간단하게 정리해보았습니다. 디자인적인 간격때문에 가장많이 사용하는 기능중 하나인것 같습니다. 처음에는 Edge.Set 방법을 몰라서 EdgeInsets 을 통한 각각 Padding을 주었었는데, Edge.Set 을 통해서 사용하면, 꼭 오토레이아웃을 코드화 시킨느낌 이여서 눈에 쏙 들어오더군요. 그리고 SwiftUI에서는 Padding을 사용하는 위치에 따라

[iOS] VisionKit (텍스트 값, 위치) 가져오기 2편

이미지
   [iOS] VisionKit (텍스트 값, 위치) 가져오기 2편 안녕하세요 물먹고하자 입니다 :) 지난번  [VisionKit 1탄 링크]  소개드렸던 부분의 2탄으로 이번에는 문서스캔한 이미지의 텍스트 값, 위치를 가져와서 표현해 보는 샘플을 진행해볼까 합니다.   애플공식문서 & 참고링크 공식 :  https://developer.apple.com/documentation/visionkit 참고 :  https://developer.apple.com/documentation/vision/vndetectedobjectobservation 작업본 Git :  https://github.com/kimjiwook/VisionKitSample   참고영상 문서스캔 > 이미지분석 > 이미지위에 위치값 표기, 텍스트 뽑아오기 예제    이미지 좌표값 주의사항 진행하기 앞서 우리가 알고 있는 UIKit Frame 그리는 방식이랑 VisionKit에서 Frame(?) 위치값 그리는 방식을 잠시 설명드리겠습니다. (저도 이부분은 왜?? 다른지 솔직히 모르겠더라구요) 참고링크 :  https://stackoverflow.com/questions/64759383/bounding-box-from-vndetectrectanglerequest-is-not-correct-size-when-used-as-chil 왼쪽은 UIKit 기반으로 Frame을 잡았을 때 예시 왼쪽위(0,0) 기준 오른쪽은 VisionKit 기반으로 Frame 표기시 왼쪽아래(0,0) 기준 #. 심지어 0~1 비율로 표기됨 좌표값 무시하고, UIKit 기반처럼 왼쪽위에서 부터 그리면 Y축이 뒤집어진 느낌 으로 표기됨. 상세한 정보를 추가그림으로 설명드리자면, 1. 이미지 정보 - width = 1474, height = 2140 2. "컴퓨터데스크를" 정보 - VisionKit, VNRecognizedTextObservation을 통해 구해온 정보 : (0

[Xcode 14.3] 아카이브 오류 긴급대응 Command PhaseScriptExecution failed with a nonzero exit code

이미지
   [Xcode 14.3] 아카이브 오류 Command PhaseScriptExecution failed with a nonzero exit code 안녕하세요 물먹고하자 입니다 :) 지난주에 Xcode 14.3, iOS 16.4 업데이트 가 뜨면서 빌드부분에 오류 가 있었으나, 간단하게 해결된상태에서 또 급하게 앱을 올리려고 하니 아카이브가 안되더군요 ㅠㅠ 일단 급한나머지 공식적인 해결방법은 아닌것 같으나  최근 웹상에서 찾은 내용 적용후 정상적으로 아카이브 된 내용 공유드립니다.   에러발생 Xcode 14.3 업데이트 이후 아카이브 오류발생 내용상으로 Symlinked 에서 파일 또는 폴더를 못찾았다는 내용 저는 FMDB에서 발생을 했는데, Git, stackoverflow 등등 라이브러리만 다르고 발생한 에러는 같은것 같아요. 열심히 찾았던 내용중... (저뿐만이 아니라, 해외쪽도 급한지 실시간 커뮤니케이션이 되더군요) cocoaPods 생성된 framework의 source="$(readlink "${source}")" 부분을 source="$(readlink -f "${source}")" -f 옵션 을 넣으라고 하더군요. 참고 :  https://github.com/CocoaPods/CocoaPods/issues/11808 리눅스 명령어다 보니.. 솔직히 잘모르겠고, 뭘 추가했을때 감당이 안될까봐 내용 찾아보니 심볼릭 링크의 원본 위치를 찾아주는 옵션이더라구요. OK 참고 :  https://itwiki.kr/w/%EB%A6%AC%EB%88%85%EC%8A%A4_readlink 제 프로젝트에서 찾아서 -f 옵션 추가 아카이브도 안되었었는데, 앱스토어 등록까지 성공   마무리 오늘은 급하게 업데이트된 Xcode14.3 버전에 아카이브 대응에 대해서 체크해보았습니다. 기존에 iOS16.4가 먼저 업데이트 되서 Xcode14.3 RC로 사용하다가 안되서 앱스토어 다시받고