전체 글

· TIL
🩵 오늘 한 일 ✔️ 프레임워크 다 만들었는데.. 인텔맥과 m1맥의 차이가 여기서.. 저는 m1을 쓰고 있고 팀원 중 한 분은 인텔을 쓰시고 계셨어요 제쪽 환경에서 프레임워크를 다 만들고 사용해보세요! 하고 드렸는데 인텔맥에서 이런 모듈.. 찾을 수 없다.. 하는 에러가 뜨더라구요 여기서 문제!! 두개의 차이는 무엇일까요 네.. 아키텍처 종류가 다르다고 합니다 인텔은 x86_64를 쓰고 m1부터는 arm64를 사용한다고 하네요 arm 종류의 아키텍처는 기본적으로 ios에서 사용되기 때문에 실 기기로 테스트해보면 문제없이 가능하다고 하지만 시뮬레이터는 각 pc의 cpu를 따라가기 때문에 인텔맥은 시뮬레이터도 x86_64인 거에요 ㅠㅠ ✔️ 라이브러리로 변경 예.. 뭐 프레임워크 2개 쓸 수도 있겠죠 근데 ..
· iOS/Swift
2024.02.23 - [iOS/SWIFT] - [Swift] iOS 커스텀 프레임워크 생성하고 사용하기 2024.02.26 - [iOS/SWIFT] - [Swift] 프레임워크와 라이브러리 (1) 2024.02.27 - [iOS/SWIFT] - [Swift] 프레임워크와 라이브러리 (2) UIKit SnapKit으로 비교하기 2024.02.29 - [iOS/SWIFT] - [Swift] 프레임워크와 라이브러리 (3) 접근제한자 프레임워크는 앱의 구조와 실행 흐름을 정의하며 이렇게 정의된 틀 안에서 개발합니다 라이브러리는 특정한 기능을 수행하는 코드의 집합이에요 iOS개발을 하다보면 가장 많이 접하게되는 프레임워크 중 대표적으로 UIKit, Foundation이 있고 라이브러리로는 SnapKit, The..
· iOS/Swift
2024.02.23 - [iOS/SWIFT] - [Swift] iOS 커스텀 프레임워크 생성하고 사용하기 2024.02.26 - [iOS/SWIFT] - [Swift] 프레임워크와 라이브러리 (1) 2024.02.27 - [iOS/SWIFT] - [Swift] 프레임워크와 라이브러리 (2) UIKit SnapKit으로 비교하기 2024.02.29 - [iOS/SWIFT] - [Swift] 프레임워크와 라이브러리 (3) 접근제한자 프레임워크와 라이브러리. 개발을 공부하고 있다면 아마 공부 시작 3일만에도 들어볼 수 있는 단어라고 생각해요 그 만큼 많은 사람이 사용하고, 언급하고, 만들어지고 있죠? 🩵 프레임워크? 앱의 기본적인 구조와 실행 흐름을 정의하는 골조(뼈대) 정의된 이 틀 안에서 개발할 수 있다 ..
· iOS/Swift
2024.02.23 - [iOS/SWIFT] - [Swift] iOS 커스텀 프레임워크 생성하고 사용하기 2024.02.26 - [iOS/SWIFT] - [Swift] 프레임워크와 라이브러리 (1) 2024.02.27 - [iOS/SWIFT] - [Swift] 프레임워크와 라이브러리 (2) UIKit SnapKit으로 비교하기 2024.02.29 - [iOS/SWIFT] - [Swift] 프레임워크와 라이브러리 (3) 접근제한자 커스텀 프레임워크는 코드의 재사용성을 높이고 앱 개발을 효율적으로 할 수 있게 해줍니다 이렇게 속성, 메서드를 하나로 묶어서 외부로부터의 직접적 접근을 제한 + 객체의 메서드를 통해서만 변경할 수있게 하는 것을 객체지향의 캡슐화 라고 하는데요! 코드를 기능/논리적 단위로 분해해서..
· TIL
🩵 오늘 한 일 ✔️ 디자인 시스템 구축하기 이번 프로젝트에 어찌저찌 초반 세팅을 맡게 되어서... 디자인 시스템을 도입해보려고 합니다 단순히 폰트,컬러 지정해두고 컴포넌트 만드는 건 이미 해봤으니까! 프레임워크로 만들어서 모듈화까지 챙겨가는 경험을 해볼까 싶어요 복잡해서.. 아직 정리는 못하겠고 (프로젝트 생성까지만 이해함..ㅎㅎㅠㅠ) 오늘은 가볍게 읽던 문서들 링크 백업하고 감! https://developer.apple.com/documentation/xcode/creating-a-multi-platform-binary-framework-bundle/ Creating a multiplatform binary framework bundle | Apple Developer Documentation Co..
· iOS/Swift
xcode는 보안상 문제로 https가 아니면 네트워크를 막아버리는데요 공공데이터의 경우 거의 http로 제공되고 있어요 유명하고 찾는 사람이 많은 경우에는 https도 있지만, 서울시 지하철 api가 http인걸 보면... ATS는 iOS 9에서 도입된 보안 기능이고 앱-서버 간의 네트워크 연결을 보호해줘요 기본적으로 암호화되지 않은 http연결은 차단하고 https 연결만 허용합니다 원활한 사용을 위해서는 프로젝트에서 직접 ATS(App Transport Security)제한을 풀어주어야 합니다! 🩵 전체 http 접근 허용하기 Info.plist에 들어가셔서 App Transport Security Settings - Allow Arbitrary Loads 설정을 true(YES) 로 해주시면 ht..
· iOS/Swift
이 글을 읽고 이해한 내용을 적었습니다 github에 올리면 안되는 APIKEY 숨기기 - iOS 화면과 같이 간단한 프로젝트를 바탕으로 설명하겠습니다. 프로젝트는 여기 링크로 가시면 상세 코드 및 화면 구성을 확인하실 수 있습니다! 화면은 아래와 같이 간단하게 구성하였습니다. 우 nareunhagae.tistory.com API 연결을 하다보면 사용자의 고유 Key 값이 필요할 때가 종종(아니 거의 대부분..) 있지요 이런 고유한 값은 공개되면 개인정보가 노출되는 것과 다름 없어요 그리고 타인이 무단으로 나의 Key 값을 사용하게 될 수도 있구요 그런걸 방지하기 위해서 프로젝트에서 API KEY를 숨기는 방법 중, plist를 사용하는 방법이 제일 좋아보였습니다 나중에는 xcconfig, shceme ..
· TIL
🩵 오늘 한 일 ✔️ 드디어 최종 프로젝트~ 드디어 1개월 반 정도 남았네여 뭔가 많이 배운것 같고 아직도 한참 남은 것 같기도 합니다!!!! 지금은 팀프로젝트 주제를 정하는 중 인데요 뭘 하게 될 지 모르겠어여 공공 데이터를 쓰게 될 확률이 높은 것 같은데 그러면 xml 파싱을 좀 공부해둬야 합니다 이렇게 네트워크 공부를 시작하게 되는구나... ✔️ http 링크 허용하기 xcode는 보안상 문제로 https가 아니면 네트워크를 막아버리는데요 App Transport Security Settings - Allow Arbitrary Loads 설정을 true(YES) 로 해주시면 http 허용 끝입니다! App Transport Security (ATS)는 iOS 9에서 도입된 보안 기능으로 앱과 서버 ..
🩵 배경화면이 기기에 꽉 채워지지 않는 현상 ✔️ 문제 파악 iOS 15, Swift 5 / SnapKit, UIKit 로 UI를 구성하려고 기본적인 테스트를 하던 중 문제 발생. 뷰 컨트롤러가 화면에 꽉 차지 않고 상,하단에 여백이 생겼음!! ✔️ 원인 분석 & 해결 코드베이스로 프로젝트를 세팅하던 중 평소에는 지우지 않던 Info 설정을 하나 지워봤었는데.... Launch screen interface file base name 이 값을 다시 복구하니 제대로 화면이 꽉 차는 것을 확인할 수 있었습니다 ✔️ 문제가 발생한 이유 값이 LaunchScreen이어서 단순히 스토리보드 파일 이름을 뜻하는 줄 알았는데 전혀 아니었어요!! Launch screen interface file base name ..
· iOS/Swift
(해당 포스팅은 iOS 14 기준 개발 프로젝트 내용입니다) ❓ 위치 데이터에 관한 이야기 위치 데이터는 민감한 정보이고, 사용자의 개인정보 보호와도 큰 관련이 있죠 모든 사용자는 자신의 개인정보를 통제할 수 있어야 하기 때문에 앱이 해당 정보에 대한 사용 권한 승인을 (사용자에게) 받기 이전까지는 데이터를 사용할 수 없게 차단해야 합니다! 위치 데이터가 필요한 시점에 사용자에게 승인을 요청하고 반응한 승인 상태를 저장하여 알맞게 활용합니다 만약 권한 거부를 선택한다면, 승인을 요청하는 메세지는 더 이상 띄우지 못한답니다 저같은 경우, 날씨 앱을 만들어보고 있었기 때문에 앱 진입 시 스플래시 화면을 띄우고, 그 화면이 끝나면 위치 데이터를 요청합니다 이외에는 버튼을 누르면 위치 데이터 요청을 안내하는 방..
· iOS/Swift
iOS Splash 메인화면 로딩 페이지 iOS 스플래쉬 화면 LaunchScreen.storyboard 코드 베이스 구현 이게 다 뭐냐고요? 제가 스플래시 화면 넣고 싶어서 검색했던 키워드 입니다... (참고로 안드로이드에서 스플래시라고 부르고, iOS는 런치 스크린입니다) 당연히 스토리보드로 작업하면 편했겠죠... 그러나 저는 코드 베이스로 UI를 구현하고 있기 때문에 방법을 찾아 헤맸습니다 해당 스플래시 화면에 로고를 띄워줄 목적으로 정보를 찾아보다가 이런 정보를 발견했습니다 https://developer.apple.com/design/human-interface-guidelines/launching#Launch-screens Launching | Apple Developer Documentati..
· TIL
🩵 오늘 한 일 ✔️ launch screen 구현 https://yy-dev.tistory.com/136 [Swift] iOS 스플래시 / 런치 스크린 화면 만들기 iOS Splash 메인화면 로딩 페이지 iOS 스플래쉬 화면 LaunchScreen.storyboard 코드 베이스 구현 이게 다 뭐냐고요? 제가 스플래시 화면 넣고 싶어서 검색했던 키워드 입니다... (참고로 안드로이드에서 스 yy-dev.tistory.com 위치 정보 사용 권한 팝업창을 메인화면에 띄우고 싶지 않아서 런치스크린을 하나 낑겨넣었습니다! asyncAfter 라는 키워드도 알게되고.. 생각보다 이득이 많았네요 ✔️ 위치 정보 사용 권한 요청 CoreLocation 사용해서 위치 정보 사용을 요청하고 해당 여부를 분기쳐서 ..
YEN_
YEN's CodeWeave