[Swift] 에러로그 - Ignoring ffi-1.15.5 because its extensions are not built. Try: gem pristine ffi --version 1.15.5
·
iOS/Library
안녕하세요 욱승입니다. 이번 포스팅에서는 pod관련 에러를 다뤄보겠습니다. 새 프로젝트를 만들고 podfile을 만들어 테스트 해보려는 찰나에 해당 오류가 났는데요 👾에러내용 🔎해결방안 1. 터미널에 'sudo gem install cocoapods' 입력 2. 터미널에 'pod install' 입력 🥴결과
[Swift] 메모리 관리 이미지 리사이징 ImageIO, VM: ImageIO_PNG_Data
·
iOS/Swift
안녕하세요 욱승입니다. 요새 토이 프로젝트를 진행중인데 메모리 관련해서 이슈가 생겼는데 남겨두면 좋을것 같아서 포스팅 해봅니다! (태클 환영) 그럼 우선 결과부터 보면 이러함 프로젝트 진행중 메모리가 기하급수적으로 증가하는걸 볼수 있는데 이것은 서버에서 불러오는 이미지 크기 및 해상도와 ImageView의 해상도 이미지 크기 및 해상도가 맞지않아 억지로 끼워넣고 원본이미지는 파일 크기가 너무 커 메모리가 기하급수적으로 증가하는 것. 그래서 이미지 리사이징이 필요한데 이미지 리사이징이란? 이미지가 커서 메모리를 많이 잡아먹다보면 메모리 부족으로 앱이 죽어버리는 경우가 생긴다고해요. 이러한 현상을 줄이고자 이미지 사이즈를 줄여 다시 만들어내는데 이것을 이미지 리사이징이라고 해요! 이미지작업을 위해서 사용할 ..
[iOS] 면접 답변 정리
·
iOS/이론
이런식의 단순암기는 지양하지만 급한분들을 위해 가급적 가볍게 작성되었습니다. 제 경험을 바탕해서 작성하였으니 무수한 태클, 피드백, 훈수 부탁드립니다.작성되지 않은 질문은 작성중입니다. 2024년 08월 05일 작성중그럼 모두 면접 화이팅!🙇🏻‍♂️ iOSBounds 와 Frame 의 차이점을 설명하시오.Frame : SuperView기준의 좌표계에서 x, y, width, height를 부여Bounds: 자체 좌표계에서 x, y, width, height를 부여실제 디바이스가 없을 경우 개발 환경에서 할 수 있는 것과 없는 것을 설명하시오.가상 디바이스의 장점 : 테스트가 용이하여 빠르게 개발이 가능하다.할 수 없는 것 - 푸시 알림, 가속도 센서, 마이크, 전화, 카메라앱의 콘텐츠나 데이터 자체를..
[Swift] App Version정보 가져오기
·
iOS/Swift
안녕하세요 욱승입니다. 이번포스팅 에선 App version을 가져오는 함수를 구현해보겠습니다. var version: String? { guard let dictionary = Bundle.main.infoDictionary, let version = dictionary["CFBundleShortVersionString"] as? String else {return nil} return version //1.0.0 } var build: String? { guard let dictionary = Bundle.main.infoDictionary, let build = dictionary["CFBundleVersion"] as? String else {return nil} return build //1 }
[Swift] privacy-sensitive 에러 메시지 ImagePicker 이슈
·
iOS/Swift
안녕하세요 욱승입니다. 오늘은 privacy-sensitive 에러시 해결방안을 알아보겠습니다. 우선 오류 메시지 해결방안 => Info.plist에 Privacy - Photo Library Usage Description에 내용을 넣어줘야함 (앱이 사진에 접근하려는데 허용 하겠냐는 팝업에 대한 Description) 혹은
[Swift] defer 문이란?
·
iOS/Swift
안녕하세요 욱승입니다. 이번 포스팅에선 defer 블록에대해 알아보겠습니다. defer 블록은 함수나 메소드에서 코드의 흐름과 상관없이 가장 마지막에 실행되는 블록입니다. 지연 블록이라고 부르기도 하는 이 블록에 작성된 구문은 작성된 위치에 상관 없이 항상 함수의 종료 직전에 실행되기 때문에, 종료 시점에 맞추어 처리해야 할 구문이 있다면 우리는 어디에작성해야 할지 고민하지 않고 defer 블록에 넣어두기만 하면 됩니다. 실제로 이 블록은 함수에서 사용된 각종 리소스의 처리나 해제, 연결 종료 등의 구문을 처리하는 용도로 유용하게 사용됩니다. defer 특성 1. defer 블록은 작성된 위치와 순서에 상관없이 함수가 종료되기 직전에 실행된다. 2. defer 블록을 읽기 전에 함수의 실행이 종료될 경우..
[SwiftUI] SwiftUI 레이아웃 기초, Stack(VStack, HStack, ZStack)
·
iOS/SwiftUI
안녕하세요 욱승입니다. SwiftUI 스택은 3가지가 있는데요. VStack - 수직나열 HStack - 수평나열 ZStack - 자식들을 오버레이하고 두 축을 배열하는 뷰 예제 코드 VStack HStack ZStack ZStack은 자식들은 오버레이하고 두 축으로 배열하니 중첩이 됩니다.
[Swift] Left side of mutating operator isn't mutable: 'count' is a 'let' constant, In-out 파라미터 사용 방법
·
iOS/Swift
안녕하세요 욱승입니다. 이번시간에는 In-out 파라미터에 대해 알아보겠습니다. 오류 캡쳐본 원인 전달받은 파라미터를 함수 내부에서 변경하려고 시도하면 컴파일 에러가 발생함. Swift에서 전달받은 파라미터는 상수(let)으로 취급하기 때문. 해결방안 inout 키워드를 사용하면 전달받은 파라미터를 함수 내부에서 변경할수 있음 ! 예제코드 차이가 보이시나요? 1. 호출부 변수 앞에 '&' 2. 함수 타입 앞 inout 이런식으로 함수 내부에서 전달받은 파라미터 값을 변경할 수 있습니다!
[iOS] Apple Appstore 심사거절 - Guideline 2.3.10 - Accurate Metadata
·
iOS
안녕하세요 욱승입니다. 9월 20일 퇴근쯔음 배포를 위한 심사를 올려놨는데 리젝 당했네요 번역 가이드라인 2.3.10 - 성능 - 정확한 메타데이터 귀하의 제출물에는 App Store 사용자와 관련이 없을 수 있는 타사 플랫폼에 대한 정보가 포함되어 있습니다. 특히, 설명에는 Android 참조가 포함되어 있습니다. 앱 또는 해당 메타데이터에서 타사 플랫폼을 참조하는 것은 일반적으로 현재 기기가 제공하는 경험에 초점을 맞추고 있는 앱 스토어 사용자에게는 관련이 없습니다. 다음 단계 이 문제를 해결하려면 앱 설명, 프로모션 텍스트, 새로운 정보, 미리 보기 및 스크린샷을 포함하여 앱 및 메타데이터에서 이 정보의 모든 인스턴스를 제거하십시오. 앱의 기능 및 타사 플랫폼과 상호 작용하는 방식을 잘못 이해했다고..
[Swift] Set 집합 기본 집합 연산 정리
·
iOS/Swift
안녕하세요 욱승입니다. 이 포스팅에선 Set의 기본 집합 연산 정리에 대해 알아보겠습니다. 예제코드 var oddDigits : Set = [1, 3, 5, 7, 9] // 홀수 집합 let evenDigits : Set = [0, 2, 4, 6, 8] // 짝수 집합 let primeDigits : Set = [2, 3, 5, 7] // 소수 집합 oddDigits.intersection(evenDigits).sorted() // [] oddDigits.symmetricDifference(primeDigits).sorted() // [1, 2, 9] oddDigits.union(evenDigits).sorted() //[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] oddDigits.subtra..
[Swift] 싱글톤 패턴(Singleton Pattern)
·
iOS/Swift
안녕하세요 욱승입니다. 이 포스팅에선 싱글톤 패턴에 대해 알아보고 Swift예시를 보며 이해하는 시간을 가지겠습니다! 1. 싱글톤 패턴(Singleton Pattern) 이란? 소프트웨어 디자인 패턴에서 싱글턴 패턴(Singleton pattern)을 따르는 클래스는, 생성자가 여러 차례 호출되더라도 실제로 생성되는 객체는 하나이고 최초 생성 이후에 호출된 생성자는 최초의 생성자가 생성한 객체를 리턴한다. 이와 같은 디자인 유형을 싱글톤 패턴(Singleton Pattern)이라고 한다. 주로 공통된 객체를 여러개 생성해서 사용하는 DBCP(DataBase Connection Pool)와 같은 상황에서 많이 사용된다. 객체의 인스턴스가 오직 1개만 생성되는 패턴을 의미 !! 2. 싱글톤 패턴의 장단점 장..
[Swift] 구조체와 클래스 차이 (Difference between struct and class)
·
iOS/Swift
안녕하세요 욱승입니다. 오늘은 구조체와 클래스차이에 대해 알아보겠습니다. 요약 struct - 복사 개념 - 참조하는 값이 바꿔도 기존 값에는 영향이 없음 class - 공유 개념 - 참조하는 값이 바뀌면 기존 값도 영향을 받아 바뀜 class와 struct의 공통점 값을 저장하기 위한 프로퍼티를 정의할 수 있음 기능을 제공하기 위해 메소드를 정의할 수 있음 subscript 문법을 이용해 특정 값에 접근할 수 있음 생성자를 사용해 초기 상태를 설정할 수 있음 기본 구현에서 기능을 확장할 수 있음 Protocol을 채택하여 기능을 설정할 수있음 class(클래스) 참조 타입 ARC로 메모리 관리 같은 클래스 인스턴스를 여러 개 변수에 할당한 뒤 값을 변경시키면 할당한 모든 변수에 영향을 줌 상속 가능 타..
욱승
'iOS' 카테고리의 글 목록 (4 Page)