Deep_Dev
[iOS][Swift] Dismiss Live Activities on App Termination ( feat. Semaphore )
🍎 iOS/Swift 2025. 1. 9. 20:23

📚 Semaphore (세마포어 )  일단 세마포어에 대해서 포스팅하기전에 관련된 이슈인, 이전 포스팅 'LiveActivity' 포스팅을 보고오면 이해하는데 도움이 될 것이다.  https://leesangdo.tistory.com/310 [SwiftUI] LiveActivity 구현할 때, 앱 강제종료시 LiveAcivity 종료에 대해📚 Live Activity 종료   '올라잇' 앱 개발을 할 때, LiveActivity 구현을 담당했었는데 당시에 겪었던 이슈와 관련하여 노션에 기록해두었던것을 티스토리에도 옮겨적어보고자 한다. 이후 세마포어leesangdo.tistory.com 위 포스팅을 보면 알다시피, LiveActivity 종료를 Dynamic Island Expanded 영역에서 X 버..

article thumbnail
[SwiftUI] LiveActivity 구현할 때, 앱 강제종료시 LiveAcivity 종료에 대해
🍎 iOS/SwiftUI 2025. 1. 9. 19:51

📚 Live Activity 종료   '올라잇' 앱 개발을 할 때, LiveActivity 구현을 담당했었는데 당시에 겪었던 이슈와 관련하여 노션에 기록해두었던것을 티스토리에도 옮겨적어보고자 한다. 이후 세마포어에 대한 포스팅을 할건데, 세마포어와 관련한 이슈이고, 다음과 같다.  💬 Background 상태에서 앱 강제종료시 LiveActivity도 종료하게 하려면 ?  즉, DynamicIsland(LiveActivity)가 동작중에 앱을 스와이프하여 강제종료하면 LiveActivity는 종료되지 않고 뷰가 그대로 남아있는 것이다. 하지만 기능자체는 종료된다.요약하면, 위처럼 앱을 종료시킴으로써 함수는 동작하지 않기에 기능은 멈추지만, LiveActivity 또한 종료가 되어야하는데 앱이 강제종료..

article thumbnail
[앱스토어 리젝] Performance - Accurate Metadata 리젝 대응
🍎 iOS/APP 배포 2025. 1. 5. 15:14

최근에 옛날에 배포해놨던 작은 개인프로젝트 앱을 업데이트 하고 있는데.. 이 앱에선 거의 처음 리젝을 만났다. 근데 기능상 리젝은 아니고, 스크린샷 관련 문제였는데 포스팅을 해보고자 함. 리젝의 정확한 내용은 이러하다.  Guideline 2.3.3 - Performance - Accurate MetadataIssue DescriptionThe 5.5-inch iPhone screenshots do not show the current version of the app in use. Screenshots should highlight the app's core concept to help users understand the app’s functionality and value.   해석하면, 초기 5...

article thumbnail
[SwiftUI] 커스텀 폰트 더 쉽게 추가하기
🍎 iOS/SwiftUI 2024. 12. 21. 17:05

📚 Custom Font 추가   기존에 Xcode에 커스텀 폰트를 추가할 때,이렇게 폰트파일들을 드래그하여 추가하고, info에서 폰트들을 Target 설정하여 사용했단말이에요? 마지막으로, Font Extension 파일을 생성하였고요 !extension Font { // Bold static let pretendardBold28: Font = .custom("Pretendard-Bold", size: 16) static let pretendardBold24: Font = .custom("Pretendard-Bold", size: 20) // SemiBold static let pretendardSemiBold16: Font = .custom("Pretend..

[iOS][Xcode] can not preview in this file 문제 해결
🍎 iOS/SwiftUI 2024. 11. 12. 00:46

오늘 개발할 때 겪었던 문제인데, 찾아보니 간혹 생길 수 있는 버그인것 같습니다. Xcode에서 Preview쪽에서 'can not preview in thie file'이라고 뜨고 프리뷰가 나오지 않는것입니다.( fatal error ~~도 있었던 것같은데 정확히 기억은 안나네요 ! ) Xcode를 껏다켰는데도 해결되지 않았지만,다음 솔루션으로 바로 해결할 수 있었어요. 1. Xcode 종료2. 터미널에 다음 명령어 입력 xcrun simctl --set previews delete all3. 다시 Xcode키면 해결 완료

[SwiftUI] onTapGesture에서 특정 부분에서 탭이 작동하지 않는 것
🍎 iOS/SwiftUI 2024. 11. 12. 00:42

일반적인 Text나 Image나 컴포넌트에 탭 제스처를 추가해서, 사용자가 탭 했을때 액션을 정의할 수 있습니다. 제가 구현하면서 겪었던, 가장 흔히 사용할 수 있는 예시로 바로사용자가 텍스트를 입력하기위해 Keyboard가 켜지고, 빈 화면을 터치시 키보드가 닫게하는 상황을 들 수 있을 것 같은데요. VStack { // View Code}.onTapGesture { print("키보드를 닫습니다.")}저는 분명 이렇게 가장 크게 감싸고 있는 VStack에 탭 제스처를 넣었습니다.이러면 화면의 빈부분을 터치하면 해당 print문이 나와야하지않습니까 ?  근데 특정 부분에서는 아예 작동을 하지 않는거에요 ? 그래서,, Stack같은게 겹쳐서 작동이 안되는것인가 ? 예상하고 찾아봤는데 그 문제는 아니..

[SwiftUI] TextField에서 다중라인을 만들기
🍎 iOS/SwiftUI 2024. 11. 12. 00:34

📚 TextField 다중라인 만들기   프로젝트에서 사용자 입력을 받는 Text Field를 구현하고 있었는데, 디자인이 조금씩 바뀌면서 텍스트 필드에 입력한 텍스트들이 여러 줄로 나와야했습니다. 근데 저는 TextField와 TextEditor의 차이점이, TextField는 한 줄 그리고 TextEditor는 여러 줄로 명확한줄 알았습니다.그러니까, 여러줄로 해야한다면 무조건 TextEditor를 사용해야하고 에디터에는 Placeholder가 없으므로 이것도 만들어줘야한다 ...placeholder를 얹으려면 zstack을 쓰든, overlay하든 너무 변경하기 귀찮아서,, 슥 구글링을 해보았는데요. TextField에서도 다중라인이 가능하다는 것...이었습니다. iOS 16에서부터 되었던것이라고..

[SwiftUI] TabBar 특정 뷰에서는 Hide 하기 !
🍎 iOS/SwiftUI 2024. 11. 4. 23:29

📚 Tabbar Hide 😎   프로젝트를 하면서 Tabbar가 있었는데 메인 탭바 화면에서 네비게이션으로 View를 이동하면이동된 View부터는 Tabbar가 안나오게 해야했습니다. 정말 간단히 해결되더군요 ? 👍A View가 Tabbar의 메인뷰이고,A View에서 Navigation을 통해 B View로 진입했을때, B View에서 탭바는 사라지게 하고 싶다. 한다면 B 파일의 View 코드에  .toolbar(.hidden, for: .tabBar) 이 모디파이어를 적용해주면 됩니다 ! 딱 봐도 tabbar를 hidden해주는거겠죠 ?  ❌근데 문제가 뭐였냐 .. ❌  A 에서 B로 갈때 탭바는 자연스럽게 사라졌지만, B에서 다시 A뷰로 나갈때 Tabbar가 바로 떠있어야했는데딜레이가 있어 ..