안녕하세요 아렉스입니다 :> 오늘은 Swift의 기본 자료형에 대해 이야기 하겠습니다. Swift 에서는 명명된 타입(named type)과 복합 타입(compound type)의 두가지 종류가 있습니다. ## 명명된 타입(named type) 사용자 정의 명명된 타입 / 클래스 / 구조체 / 열거형 / 프로토콜을 포함합니다.Swift 표준 라이브러리는 배열, 딕셔너리, 그리고 옵셔널 값을 나타내는 타입을 포함하여 일반적으로 사용되는 명명된 타입을 정의합니다. 숫자, 문자, 그리고 문자열을 나타내는 데이터 타입 (Data types) 또한 명명된 타입에 속합니다.데이터 타입 (Data types) 은 다른 언어에서 일반적으로 기본 또는 원시라고 간주됩니다 기본 자료형으로는 정수와 부동 소수점 정수Swi..
안녕하세요 아렉스입니다 :> 오늘은 Local Package 변경 사항 반영이 안되는 현상에 대해 얘기해 보겠습니다. 발생한 일Game Controller의 입력을 받아오는 신규 기능을 작업하며,기존 GameControllerManager 파일이 비대해져 ControllerInput 파일로 분리하였습니다.파일이 분리된 것을 컴파일러가 인식하지못해 빌드가 되지않았습니다.ControllerKit/ └─ Sources/ └─ Controller/ ├─ ControllerInput.swift // ⛑️ 기존 코드에서 분리한 파일 └─ GameControllerManager.swift 해결법매번 모든 패키지를 빌드하면 오래 걸리기 때문에, Xcode 내부적으로 패키지 정..
안녕하세요 아렉스입니다 :> 오늘은 에이전트 앱 설정에 대해 얘기해 보겠습니다. macOS 앱 빌드시 Dock에 아이콘이 표출됩니다. 백그라운드에서 실행되는 프로그램을 Apple은 데몬과 에이전트로 나누어 부릅니다.데몬(시스템 전체 백그라운드 프로그램) / 에이전트(특정 사용자를 대신하여 작동하는 프로그램) 오늘 알아볼 것은 에이전트 앱 라고 합니다. info.plist 의 Application is agent (UIElement) 키 값을 통해 Dock 표시 여부를 설정할 수 있습니다. Application is agent (UIElement) 키 값은는 앱이 백그라운드에서 실행되고 Dock에 나타나지 않는 에이전트 앱인지 여부를 나타내는 부울 값입니다. 에이전트란 ?에이전트는 특정 사용자를 대신..
-
애플 개인 계정으로 협업하기
안녕하세요 아렉스입니다 ! 매번 회사 팀 계정에 소속되어 작업을하며 불편함을 못 느끼다가,, 개인 계정으로 팀프로젝트를 하게되면서 겪은 부분들을 작성해볼려고합니다. 인증서와 프로비저닝에 대한 자세한 내용은 수진님 블로그를 참고 추천드립니다. https://sujinnaljin.medium.com/ios-certificate-와-provisioning-profile-e1b9455e8a51 [iOS] Certificate 와 Provisioning profile 인증서와 프로비저닝 프로파일에 대해 알아봅시다 sujinnaljin.medium.com A. 생성해야할 것 1. CSR 인증 서명 요청 생성 2. Apple Developer 사이트에서 Certificates 생성하기 3. 생성 된 Certifica..
-
[문제해결] 트랙패드가 정상작동하지않을 때 해결방법 .feat 자가진단
잠들어있는 맥북을 깨운 어느 날 ,, 맥북의 트랙패드가 작동하지않았다. 이 맥북은 2020 M1 Macbook Air 모델이고 구매한 시점이 8월이기 때문에 4개월 밖에 되지않은 애기이다. 아이패드 에어4 1년간 이용하면서 고장나지않는 모습에 맥북에는 애플케어플러스를 가입하지않은게 화근이었던걸까 사건 인지시점 : 2021년 12월 26일 크리스마스가 지난 날 증상 : 1차 : 트랙패드가 전혀 되지않음 , 마우스 연결, 키보드 중복 입력 등 귀신들림 , >> 재부팅 2차: 트랙패드로 커서 이동이 가능해짐, 모든 제스처 사용 가능 키보드귀신은 사라짐 >> 종료 후 10분 뒤 부팅 3차: 클릭이 가능하지만 딸각 느낌의 햅틱이 전혀 오지않음, 클릭은 되나 창을 잡고 움직인다던지 드래그 액션이 되지않음 >> 재부..
최근 글 목록
-
[Swift] 데이터 타입 - 기본 자료형 (primitive data type)Swift 2025.05.29 18:50
안녕하세요 아렉스입니다 :> 오늘은 Swift의 기본 자료형에 대해 이야기 하겠습니다. Swift 에서는 명명된 타입(named type)과 복합 타입(compound type)의 두가지 종류가 있습니다. ## 명명된 타입(named type) 사용자 정의 명명된 타입 / 클래스 / 구조체 / 열거형 / 프로토콜을 포함합니다.Swift 표준 라이브러리는 배열, 딕셔너리, 그리고 옵셔널 값을 나타내는 타입을 포함하여 일반적으로 사용되는 명명된 타입을 정의합니다. 숫자, 문자, 그리고 문자열을 나타내는 데이터 타입 (Data types) 또한 명명된 타입에 속합니다.데이터 타입 (Data types) 은 다른 언어에서 일반적으로 기본 또는 원시라고 간주됩니다 기본 자료형으로는 정수와 부동 소수점 정수Swi..
-
[SPM] Local Package 사용 시 변경 사항이 반영 되지않을 때 2025.05.27 14:41
안녕하세요 아렉스입니다 :> 오늘은 Local Package 변경 사항 반영이 안되는 현상에 대해 얘기해 보겠습니다. 발생한 일Game Controller의 입력을 받아오는 신규 기능을 작업하며,기존 GameControllerManager 파일이 비대해져 ControllerInput 파일로 분리하였습니다.파일이 분리된 것을 컴파일러가 인식하지못해 빌드가 되지않았습니다.ControllerKit/ └─ Sources/ └─ Controller/ ├─ ControllerInput.swift // ⛑️ 기존 코드에서 분리한 파일 └─ GameControllerManager.swift 해결법매번 모든 패키지를 빌드하면 오래 걸리기 때문에, Xcode 내부적으로 패키지 정..
-
[macOS] Dock 에서 아이콘 없애기 - Application is agentmac OS 🖥 2025.05.22 01:05
안녕하세요 아렉스입니다 :> 오늘은 에이전트 앱 설정에 대해 얘기해 보겠습니다. macOS 앱 빌드시 Dock에 아이콘이 표출됩니다. 백그라운드에서 실행되는 프로그램을 Apple은 데몬과 에이전트로 나누어 부릅니다.데몬(시스템 전체 백그라운드 프로그램) / 에이전트(특정 사용자를 대신하여 작동하는 프로그램) 오늘 알아볼 것은 에이전트 앱 라고 합니다. info.plist 의 Application is agent (UIElement) 키 값을 통해 Dock 표시 여부를 설정할 수 있습니다. Application is agent (UIElement) 키 값은는 앱이 백그라운드에서 실행되고 Dock에 나타나지 않는 에이전트 앱인지 여부를 나타내는 부울 값입니다. 에이전트란 ?에이전트는 특정 사용자를 대신..
-
[WidgetKit] WidgetKit 정책과 타임라인(Timeline) 매커니즘Widget 2025.05.21 15:07
안녕하세요 아렉스입니다 :> 오늘은 WidgetKit 매커니즘에 대해 얘기해 보겠습니다.전반적인 구조는 2025.05.21 - [/Widget] - [WidgetKit] WidgetKit 간단하게 알아보기 보고 오시면 도움이 됩니다. 위젯은 기존 iOS 앱과 다른 라이프사이클 매커니즘을 가집니다.또한 정책이 명확하기 때문에, 테스트 간 정책에 따라 정상적인 동작 여부를 구분할 수 있습니다.WidgetKit 정책 WidgetKit은 배터리와 리소스를 보호하기 위해 위젯 새로고침에 하루 단위 예산을 두고 있습니다.위젯을 다시 로드하면 CPU, 네트워크, 배터리가 소모되며, 성능 및 배터리 보호를 위해 업데이트 빈도와 횟수를 최소화해야 합니다. Widget 시스템은 사용자의 행동을 배우고, 학습 기간 동안은..
-
[WidgetKit] WidgetKit 간단하게 알아보기Widget 2025.05.21 15:05
안녕하세요 아렉스입니다 :> 오늘은 WidgetKit 에 대해 얘기해 보겠습니다. iOS 개발에서 WidgetKit은 사용자가 iOS 홈 화면, 잠금 화면, 또는 StandBy 모드에서 앱의 중요한 정보를 빠르고 간편하게 확인할 수 있게 해주는 위젯을 만들 때 사용하는 프레임워크WidgetKit이란?Apple의 위젯 개발 프레임워크iOS 14 이상부터 도입SwiftUI 기반으로 작동앱의 정보를 홈 화면, 잠금 화면, StandBy 등 다양한 위치에 작고 가볍게 시각적으로 표시WidgetKit으로 무엇을 할 수 있는가 ?위젯스마트 스택 지원워치 컴플리케이션라이브 액티비티컨트롤 위젯 위젯은 크게 configurable, nonconfigurable 두개의 타입으로 볼 수 있습니다. @main(시작점)부터 ..
-
[iOS] MultipeerConnectivity(P2P 프로토콜) 소개 및 예제 프로젝트iOS 📱 2025.05.12 22:07
안녕하세요 아렉스입니다 :> 오늘은 P2P(peer to peer) 를 도와주는 Multipeer Connectivity 프레임워크에 대해 얘기해 보겠습니다. P2P(peer to peer)는 서버를 거치지않고 이용자들을 직접 연결하는 프로토콜입니다.대표적인 P2P 사용 예시는 BitTorrent, WebRTC, Bitcoin P2P 가 있습니다. Multipeer Connectivity 프레임워크는 주변 장치에서 제공하는 서비스의 검색을 지원하고 메시지 기반 데이터, 스트리밍 데이터 및 리소스(예: 파일)를 통해 해당 서비스와의 통신을 지원합니다. iOS에서 프레임워크는 인프라 Wi-Fi 네트워크, P2P Wi-Fi 및 Bluetooth 개인 영역 네트워크를 기본 전송에 사용합니다.macOS 및 tv..
-
[Metal] Metal 이란카테고리 없음 2025.05.06 23:33
타임라인 정리2014년 Metal 1 출시2017년 Metal 2 출시2018년 macOS Mojave(10.14)부터 OpenGL 및 OpenCL의 지원을 중단2022년 Metal 3 출시 Metal은 긴밀하게 통합된 최신 그래픽 및 컴퓨팅 API로, Apple 플랫폼에 맞게 설계 및 최적화된 강력한 셰이딩 언어와 함께 제공Metal을 사용하면 앱이 기기의 GPU에 직접 액세스하여 복잡한 장면을 빠르게 렌더링하고 계산 작업을 병렬로 실행할 수 있습니다낮은 오버헤드의 효율적인 아키텍처사전 컴파일된 셰이더세분화된 리소스 제어 및 멀티 스레딩 지원을 기반. Metal이 적극적으로 이요하는 앱의 카테고리정교한 2D 또는 3D 환경을 렌더링하는 게임프리미어 프로, Final Cut Pro와 같은 비디오 ..
-
[iOS] Pinch Gesture와 Double Tap으로 구현하는 이미지 확대/축소 기능카테고리 없음 2025.04.24 00:05
안녕하세요 아렉스입니다 :> 관성적으로 사용하던 부분을 다르게 설계해본 것을 공유드려볼려고해요.기존 target-action 패턴에 대해서는 설명하지않으니, 패턴에서 이해가 안되는 부분은 따로 찾아보시면 좋을거같아요 1. 기존 target-action 패턴과 관성적인 문제점iOS에서 제스처를 처리할 때, target-action 패턴을 사용합니다.즉, UITapGestureRecognizer나 UIPinchGestureRecognizer 같은 제스처를 설정할 때, 제스처 인식기의 target을 self로 설정하여, self 클래스 내에 구현된 메서드를 액션으로 호출하게 됩니다.예를 들어, 이미지 뷰에서 두 손가락으로 확대/축소 제스처를 처리할 때 아래와 같은 코드가 흔히 사용됩니다. let pinchGe..