[Swift] Memory Leaks 해결
·
SwiftUI/개발
iOS 앱 개발 중 앱이 예상치 않게 멈추거나 강제 종료되는 문제는 종종 발생할 수 있습니다.이러한 문제의 원인은 메모리 부족, 메모리 누수, 교착 상태, 경쟁 상태 등 다양합니다.이런 상황에서는 프로파일링과 디버깅이 필요합니다. 에러가 로그를 통해 나타나면 로그 분석으로 문제를 해결할 수 있지만, 로그 없이 문제가 발생하는 경우 프로파일링을 통해 메모리 사용량, 성능 이슈, 실행 흐름 등을 분석하여 문제의 원인을 정확히 파악하는 것이 가장 효과적입니다.1. XCODE 프로파일링 XCODE 프로파일링이란 앱 성능 및 리소스 사용을 분석하고 최적화하는 과정을 뜻합니다. 앱이 실행하는 중에 발생하는 이슈에 대해서 모니터링 할 수 있고 메모리누수, 에너지효율성, 메모리할당 과정 등을 전반적으로 훓어볼 수 있습..
XCODE IOS 프로파일링 디버깅 하는 방법
·
SwiftUI/정리
안녕하세요 불망입니다..! 개발을 하다보면 어플이 멈추거나 강제종료되는 경우가 있습니다..! :( 그 이유로는 메모리 부족이나 누수이거나 교착상태, 경쟁 상태 등 다양한 이유가 있을 수 있습니다. 정확한 원인 분석을 하기 위해서는 프로파일링을 하거나 디버깅을 해야합니다. 메모리 누수나 부족 교착상태 등등을 찾아보려면 프로파일링해보는 것이 제일 정확한 방법입니다. 1. XCODE 프로파일링 XCODE 프로파일링이란 앱 성능 및 리소스 사용을 분석하고 최적화하는 과정을 뜻합니다. 앱이 실행하는 중에 발생하는 이슈에 대해서 모니터링 할 수 있고 메모리누수, 에너지효율성, 메모리할당 과정 등을 전반적으로 훓어볼 수 있습니다. 단순 출력으로는 잡아내기 힘든 성능 이슈나 메모리 부분을 주로 관찰 및 분석합니다. 디..
[Swift] 폴더 이름 중복 검사
·
SwiftUI/개발
서론 Apple Developer Academy에서 마지막 프로젝트를 진행하면서 만든 기능에 대해서 적었습니다. 유저가 지정해둔 경로에 유저가 정해둔 파일 이름이 있다면 다른 이름으로 저장을 해줘야 하는 기능을 만들어야 했습니다. 첫 번째로 해줘야 할 작업은 유저가 지정해둔 경로에 어떤 이름들이 있는지 알아야 했습니다. 저희 프로그램은 PDF → Image → Numbers로 변환해주는 프로그램인데 PDF에서 이미지로 변환해준 것들을 새로운 폴더에 지정해서 저장해주고 Numbers로 변환 후 삭제 하였습니다. 그렇다면 제가 어떻게 중복검사를 했는지 설명하겠습니다. 유저가 지정한 경로에 파일 및 폴더 이름 확인 첫번째로, 해야할 일은 유저가 지정한 경로에 어떠한 이름들이 있는지 확인해야 했습니다. sear..
[Swift, Git] Bundle Id 변경하지 않고 협업하기
·
Git
Bundle Id 변경하지 않기 안녕하세요 불망입니다~! 애플 디벨로퍼 아카데미에서 여러 개발자분들과 협업하면서 Bundle id 계속 교체 했었는데요. Github에 다른 개발자 분께서 Merge하셨을 때 번들아이디를 계속 제거로 수정해줘야 하는 일이 너무 번거로웠습니다. 그래서 마지막 프로젝트에서는 번들아이디를 교체하지 않고 협업하려고 설정하였습니다. 저희 팀원께서 알려주셔서 저도 문제 없이 사용할 수 있었습니다. 감사합니다 👍 순서대로 따라하시면 문제없이 작동합니다~! 1번 Target - Build Settings - Packaging 에서 Product Bundel Identifier 를 더블클릭하여 $(PRODUCT_BUNDLE_IDENTIFIER)를 입력해줍니다 2번 Target - Buil..
[SwiftUI] View가 멈추는 현상
·
SwiftUI/개발
서론 안녕하세요 불망입니다! 이번에 ADA 마지막 프로젝트 개발 작업을 하면서 제가 뷰가 멈추는 현상에 직면했습니다. 그 문제를 해결하는 내용을 작성해봤습니다! 보시고 틀린 점이나 피드백 주실 부분 댓글로 남겨주시면 감사하겠습니다~! 문제 현상 ImageLoadingView 에서 유저가 선택한 PDF 파일을 Image로 변경할 때 뷰가 얼어버리는 현상이 생겼습니다. 눈으로 확인하시면 더 쉬우실 것 같아서 gif 파일을 보면 좋을 것 같아요 저희 코드에는 convertPDFToImages함수가 있는데 Pdf를 Image로 변경시켜주는 함수 입니다. 이 함수가 실행이 시작 되는 코드는 LoadingView가 나타나면(.onAppear) 실행이 됩니다. LoadingView가 나타나는 조건은 파일이 선택되었을..
SwiftUI Picker View - 기초편
·
SwiftUI/정리
SwiftUI를 이용하여 Ios어플을 만드는 법을 공부하고 있습니다. 블로그에 기록을 남기면서 복습을 하고 나중에 사용할때 쉽게 보기위해서 정리했습니다. 제가 보고 배운 강의는 유튜브에서 "개발하는정대리"라는 채널에서 배웠습니다. 사진 설명을 입력하세요. State을 이용하여 값을 지정해줍니다. Picker의 일반적인 형태입니다. pickerStyle중 SegmentedPickerStyle를 이용하여 다른 형태로 바꿨습니다. "selectedColor"배열을 이용하여 지정된 색의 이름을 나타냅니다. 사진 설명을 입력하세요. "changeColor"함수를 이용하여 Red가 선택되었을때 Circle의 색이 Red , Green, Blue로 바뀔수있게 해줍니다. Picker를 하나 더 사용해서 테두리의 색이 ..