SwiftUI: iOS 프로젝트의 Stepper가 My Mac(Designed for iPhone)에서 실행할 때 크래시 발생하는 문제 해결 과정

이 포스트는 ChatGPT가 작성하였습니다. 소개 최근, iOS 앱을 macOS에서 실행할 때 Stepper UI 요소가 충돌하는 문제를 겪었습니다. 이 문제는 주로 Apple Silicon Mac에서 발생하며, 특히 iOS 앱을 “Mac (Designed for iPhone)” 타겟으로 실행할 때 발생합니다. Stepper는 iOS에서 잘 작동하지만, macOS에서는 크래시가 발생하는 현상이 있었습니다. 이 문제는 SwiftUI의 호환성 문제로 보였고, 더보기…

Swift 예제: 복잡한 로컬 알림(Local Notification) 구현 (1) – 어학 앱 열기 알림

참고 Swift(스위프트): 로컬 알림(Local Notification)을 스케줄에 맞춰 반복 발신하기 (및 한계점) Swift: [ChatGPT가 말하는] 로컬 알림(로컬 노티피케이션) 기능의 한계점과 극복 방안 Swift(스위프트): 백그라운드 작업 (Background Tasks) 시나리오 앱 설명 하루에 한 번 공부 자료가 업데이트 되는 어학 앱이 있습니다. 월요일 ~ 금요일에만 업데이트가 되고, 주말에는 업데이트가 되지 않습니다.   목표 더보기…

Swift UIKit: UIKit을 사용하여 UIMenu에 구분선(divider, separator) 추가하기

출처: Create Dividers in UIMenu using UIKit 시나리오 UIKit을 사용하여 UIMenu 내에 구분선을 추가하는 방법     버튼을 누르면 컨텍스트 메뉴가 뜨며, 메뉴가 표시될 때 구분선이 존재합니다: import UIKit class ContextDividerViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() // 1 let topActions = [ UIAction(title: “Two”, image: UIImage(systemName: “2.square”), handler: 더보기…

Swift: [ChatGPT가 말하는] 로컬 알림(로컬 노티피케이션) 기능의 한계점과 극복 방안

소개 ChatGPT에게 아래 글을 읽고 구체적인 이유와 해결 방안을 제시해보라고 요구했습니다. Swift(스위프트): 로컬 알림(Local Notification)을 스케줄에 맞춰 반복 발신하기 (및 한계점) 일반론적인 이야기를 풀어 말한것에 불과하지만, 일단 틀린 답변은 아니므로 ChatGPT가 제시한 해결 방안을 올려봅니다.   해결 방안 (ChatGPT의 답변)   Google Keep에서 구현된 것처럼 iOS에서 복잡한 스케줄링을 로컬 노티피케이션으로 더보기…

[잡담] 이제 개발자에게 있어 구글의 시대는 저물고 ChatGPT의 시대가 도래했음을 느낌

잡담 최근 구글이 개발자들 사이에서 소외되고 있다는 이야기에 전적으로 공감합니다. 저도 요즘에 ChatGPT를 개발에 활용하면서 여러 가지를 느꼈습니다. ChatGPT 3.5 버전까지는 원하는 답을 정확하게 얻기가 어려워서 가끔 재미 삼아 사용하는 정도였으며, 개발 보조 도구로 사용하기도 어려울 정도였습니다. 하지만 ChatGPT 4o으로 업그레이드된 이후에는 한글로 질문해도 척척 알아듣고, 약 80% 정도는 제가 원하는 더보기…

SwiftUI: 게임 센터(Game Center) 연동

소개 iOS 프로젝트에서 Game Center를 연동하려면 몇 가지 단계를 거쳐야 합니다. Game Center는 애플의 게임 서비스로, 멀티플레이어 매치메이킹, 리더보드, 도전 과제 등을 제공합니다. 아래는 SwiftUI로 iOS 프로젝트에서 Game Center를 연동하는 방법에 대한 자세한 설명입니다.   1. Game Center 설정 준비 Apple Developer 계정 준비: Apple Developer 계정에 가입하고 필요한 설정을 더보기…

[자막 번역] WWDC24: Embedded Swift로 경량화하기

2024. 6. 12. Embedded Swift를 사용하면 제한된 환경에도 Swift의 안전성과 표현성을 그대로 누릴 수 있습니다. 규격화된 Matter 기기를 사용한 데모를 통해 Embedded Swift에서 다양한 마이크로컨트롤러를 실행하는 방법을 확인해 보세요. Embedded Swift 하위 집합이 그토록 작은 공간에 런타임 없이 Swift의 이점을 모두 담을 수 있었던 방법과 Embedded Swift 개발의 첫걸음을 돕는 더보기…

[임베디드] ESP32-C6 맥북 등 macOS에서 빌드 및 동작 테스트 하기

소개 ESP32-C6 라는 보드를 샀는데 빌드 및 동작이 잘 되는지 확인하는 방법에 대해 알아보겠습니다. 출처: Standard Toolchain Setup for Linux and macOS   1. 드라이버 설치하기 ESP32-C6 개발 보드를 맥북과 연결하려면 USB 드라이버가 필요할 수 있습니다. 칩셋 종류에 따라 CP210x나 CH34x 드라이버를 설치해야 합니다. 제가 산 모델에서는 CH34x 칩셋을 사용하고 더보기…

Swift: Combine 기본 기능 81가지 한 번에 요약 정리

출처: https://icksw.tistory.com/category/iOS/Combine 주의: 아래 포스트는 ChatGPT를 이용하여 요약하였으므로 틀린 내용이 있을 수 있습니다.   1. Combine 프레임워크를 사용하여 커스텀 Publisher 생성 class HandsUp: Publisher { typealias Output = String // Never: The return type of functions that do not return normally, that is, a type with no values. typealias Failure 더보기…