728x90

전체 글 309

텍사스 '앱 스토어 책임법' (SB 2420) 분석: 앱 스토어와 개발자의 의무

이번엔 텍사스 주에서 발의된 S.B. No. 2420 법안, 일명 '앱 스토어 책임법(App Store Accountability Act)'을 분석해볼게요. 이 법안은 모바일 애플리케이션의 판매 및 배포 플랫폼을 규제하며, 특히 미성년자 보호를 주요 목표로 삼고 있습니다. 이 법안이 앱 스토어와 소프트웨어 개발자에게 부과하는 새로운 의무와 책임은 무엇인지 살펴볼게요.## 1. '앱 스토어 책임법'의 주요 용어 정의법안의 내용을 정확히 이해하기 위해 먼저 핵심 용어의 정의를 살펴볼게요.앱 스토어 (App store): 소프트웨어 애플리케이션의 소유자나 개발자로부터 모바일 기기 사용자에게 애플리케이션을 배포하는 공개적으로 이용 가능한 인터넷 웹사이트, 소프트웨어 애플리케이션 또는 기타 전자 서비스입니다.모바..

News 2025.10.18

Swift isEmpty vs count == 0

Swift로 개발하다 보면 Collection이 비어있는지 확인하는 상황이 자주 발생합니다. 이때 isEmpty를 써야 할지, count == 0을 써야 할지 고민해 본 적 있으신가요? "둘 다 같은 결과 아닌가?"라고 생각할 수 있지만, 실제로는 성능상 차이가 있을 수 있습니다. 간단하게 알아볼게요.# 시간복잡도 차이코드 가독성을 떠나서 시간복잡도가 크게 차이 나기 때문에 성능에 영향을 줍니다. Swift Collection.swift에서 확인할 수 있어요. isEmpty: Complexity: O(1) count: Complexity: O(1). 단, RandomAccessCollection을 준수하지 않는 Collection이라면 O(n) 연산이 됨.Collection이 비어 있는지 확인할 때는 `..

Swift 2025.08.02

UIKit Scene-based Life Cycle 마이그레이션

Apple이 iOS 13에서 도입한 Scene-based Life Cycle이 이제 선택이 아닌 필수가 되었습니다. iOS 18.4부터는 경고 메시지가 표시되고, iOS 26 이후 주요 릴리즈에서는 Scene 라이프사이클을 채택하지 않으면 앱이 실행되지 않을 거라고 해요. 이번 글에서는 Scene-based Life Cycle로 마이그레이션하는 방법을 알아볼게요.# 🚨 왜 마이그레이션해야 하는가?Apple의 공식 가이드에 따르면:iOS 18.4, iPadOS 18.4부터: UIScene lifecycle을 채택하지 않은 앱에 경고 로그 표시This process does not adopt UIScene lifecycle.This will become an assert in a future versio..

iOS 2025.07.04

[Fastlane] Xcode 16에서 Unit Test가 실패하는 이슈

안녕하세요. Fastlane을 이용해 Unit Test를 잘 실행하고 있던 중, Xcode 16으로 업데이트한 이후부터 Unit Test가 실패하는 이슈를 발견했습니다.no such module 'xxx'The following build commands failed: EmitSwiftModule normal arm64 (in target 'MyApp' from project 'MyApp') SwiftEmitModule normal arm64 Emitting\ module\ for\ MyApp (in target 'MyApp' from project 'MyApp') SwiftEmitModule normal x86_64 Emitting\ module\ for\ MyApp (in targe..

TroubleShooting 2025.07.02

[Unity] iOS 프로젝트에 SceneDelegate 추가하는 방법

안녕하세요. Unity에서 iOS 빌드를 하면 AppDelegate만 있는 Xcode 프로젝트가 생성됩니다. 그렇지만 iOS에는 SceneDelegate도 있죠. 이번엔 Unity 프로젝트에 SceneDelegate 추가하는 아주 간단한 방법 알려드릴게요.우선, Info.plist로 가서 아래처럼 Application Scene Manifest 설정을 추가합니다. SceneDelegate.h, SceneDelegate.m 파일을 추가해 주면 됩니다. 이번 글은 여기서 마무리.

기타 2025.07.01

맥북을 사야하는 이유

안녕하세요. 맥북은 사고 싶은데...부모님을 어떻게 설득해야 할지 모르겠다구요?이유는 많은데 말로 정리가 안 된다구요? 걱정 마세요. 애플이 도와줄 거예요ㅋㅋㅋㅋ애플이 부모님 설득용 발표 자료를 만들어줬습니다 😆 https://docs.google.com/presentation/d/1fnB7HrN6fRFM9hNtnhbXdVepRxuJxZ84_aTTu4VECwg/template/preview Google Slides: 로그인로그인 프레젠테이션으로 이동accounts.google.com 부모님의 마음을 움직이고 싶으면, 이 자료를 활용해 보세요ㅋㅋㅋ 맥북 오우너 쌉가능! 💻 🖥️ 이번 글은 여기서 마무리.

기타 2025.06.24

[AWS] AWS 해킹 당함 (1300 달러 과금ㅠ) + 해결

안녕하세요. 저 AWS 해킹당했어요..;;; 1300 달러 정도 과금 나왔는데 결론적으론 잘 해결했습니다! 저처럼 피해 입으신 분들께 도움이 되실까 해서 해결 과정 글로 남겨요. # 해킹당함ㅠ4월부터 뭔가 이상한 메일이 오긴 했는데... 대수롭지 않게 생각했거든요. 근데 다시 확인해 보니 연체 메일이더라구요..;; 그러고 다음날 바로 계정 폐쇄 엔딩...ㅠ AWS는 학생 때 무료 크레딧 받아서 사용해 본 것 말고는 쓴 적이 없어서, 아 이건 해킹이구나 했음ㅋㅋㅋ AWS 콘솔 들어가서 보니.. 이건 4월 요금이고 이건 5월 요금이네요.. 많이도 썼네 이자슥 # 고민의 시간정말 다행히(?)도 AWS에 등록한 카드가 만료돼서 실제로 결제까진 안 됐더라고요. 이제 선택지는 2가지입니다. (1) 계정 폐쇄 메일..

기타 2025.06.07

iOS 19는 없다? 애플, iOS 26으로 명명 방식 변경

안녕하세요. 애플이 다가오는 차세대 iOS 버전의 이름을 ‘iOS 26’으로 정할 계획이라고 합니다. 기존의 예상대로라면 iOS 19가 되어야 하지만, 애플은 이번에 버전 넘버링 체계를 대대적으로 변경하고, 모든 운영체제(OS)에서 연도 기반 넘버링을 도입하기로 한 것으로 알려졌습니다.## 갑자기 iOS 26???MacRumors에 따르면, iOS 19 대신 iOS 26이 선택된 이유는 ‘2026년 릴리스’를 기준으로 버전을 정하는 애플의 새로운 정책 때문이라고 합니다. 같은 방식으로, iPadOS 26, tvOS 26, macOS 26, watchOS 26, visionOS 26도 함께 등장할 예정입니다. 이러한 명명 방식은 2026년에 배포될 모든 애플 OS에 동일하게 적용될 것 같아요. ## WWD..

News 2025.06.01

애플, EU 앱스토어에 외부 결제 경고 표시

애플이 유럽연합(EU) 앱스토어에서 자사 결제 시스템을 사용하지 않는 앱에 대해 경고 메시지를 표시하기 시작했어요. 디지털 시장법(DMA)에 따른 규제 준수의 일환으로 보이지만, 사용자와 개발자들 사이에서는 이에 대한 다양한 의견이 나오고 있는 것 같아요. EU 앱스토어에서 외부 결제 시스템을 사용하는 앱을 설치하려고 하면, 다음과 같은 메시지가 나타납니다. 애플은 이러한 경고 메시지가 사용자에게 외부 결제 시스템의 잠재적 위험성을 알리기 위한 것이라고 주장해요. 그치만 사용자에게 불안감을 조성해서 개발자들이 애플의 결제 시스템을 계속 사용하도록 압박하는 수단으로 작용될 수도 있을 것 같아요. 나중에 EU에서 경고 메시지도 보여주면 안 된다고 하는 거 아냐??ㄷㄷ # 참고 Apple now showi..

News 2025.05.21