일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- APNS
- 오블완
- 야곰 # 야곰아카데미커리어스타터캠프 #iOS개발자 # 부트캠프
- modern concurrency deep dive
- ios
- SWIFT
- 티스토리챌린지
- WWDC
- modern concurrency
- Today
- Total
목록SwiftUI/지식 창고 (14)
Geon

SwiftUI는 선언형 UISwiftUI의 뒤에서 뭐가 이루어지는지를 알아야한다.SwiftUI가 코드를 볼때 무엇을 보는가 ->Identity - 앱의 여러 업데이트에서 요소를 동일하거나 별개로 인식하는 방법 - Identity란 동일한지 판별하는 요소 Explict Identity(명시적인 신원) - 같은 이름이나 식별자를 할당하는것- 누군가 계속 추적해야함- ForEach 에서 \.ID. 값을 쓰면 어떤것이 바뀌어야하는지 명확히 SwiftUI 가 알수 있다.SwiftUI는 포인터가 없다 Strucural identity(구조적 정체성)- SwiftUI는 뷰 계층 구조를 사용하여 뷰에 대한 암시적 ID를 생성한다분기처리시 다른 뷰라고 인식한다.as - lsif keyword == "abc" { Some..

ISSUE:iOS 18로 업데이트 이후 아카이브 된 파일을 전달받은 QA 담당자분이 APP이 바로 종료된다는 내용을 전달받음Crashes Report 확인결과 safe_read_bool 라이브러리에 문제가 있음을 확인 해결방법:pod update 참조문서: https://github.com/nanopb/nanopb/issues/949

MITM이란?- Man in the middle 의 약자로 중간에 끼어서 클라이언트 와 서버간의 패킷을 중간에 감청하고, 위변조 할수 있는 공격기법이다.- 백엔드 파트에서 APP에서 어떤화면에서 어떤 API 를 Call하는지 확인 요청하지 않아도 알수 있는 방법이 있는지 R&D 요청이 들어왔다. 설치방법1. brew install mitmproxy2. ifconfig | grep "inet " | grep -Fv 127.0.0.1 | awk '{print $2}' 로 로컬 IP 확인3. iPhone에 프록시 셋팅(프록시 서버는 2번에 확인한 ip)4. http://mitm.it 에 접속하여 인증서 다운로드5. 웹사이트에서 다운로드한 인증서를 설정 페이지에서 인증서 설치wifi(프록시 구성 탭)PC IP..

애플 긴급 심사를 요청하는 방법 ( 해당 글을 읽으시는분은 엄청 급하실테니 사족 제거)1. 링크 접속https://developer.apple.com Apple DeveloperThere’s never been a better time to develop for Apple platforms.developer.apple.com 2.하단 스크롤 하여 Contact Us 클릭 3. 앱 리뷰 클릭 4. 빠른 리뷰 심사 요청 클릭 5. 컨택트 앱 리뷰 터치 6. 앱 선택후 Send * 악용 하면 그에따른 불이익이 있으니 급한 심사일떄만 요청하기.

TODOApp Groups으로 Push 와 프로젝트를 묶어 데이터 전달 할수 있게 설정Localizable 파일 공유앱에서 선택한 언어 값을 읽어와 번들에 해당 언어 적용 사전 필요 지식App Groups동일한 개발자가 만든 설치된 여러 앱 간의 통신 및 데이터 공유를 활성화UserDefaults(suiteName: "그룹 네이밍")앱 그룹간의 설정된 언어를 가져오기 위해 UserDefaults로 가져올수있게 한다UserDefaults(suiteName: "그룹 네이밍")?.string(forKey: "app_lang") 로 현재 설정된 언어 가져오기시스템의 언어 설정 기준if let 으로 데이터를 바꿔치는 이유는 bestAttemptContent를 그대로 보여주면 번들 과 사용자 키보드 언어를 조합해서..
JSON 파싱시 특정 Key를 아예 전달해주지 않을때 Decoding Error를 회피하는 방법 예시 정상 요청 data: {test1: "123", test2:"123"}, message: "", status: "SUCCESS" 비정상 요청 message: "잘못된 요청입니다.", status: "FAIL" 해결 방법 final class ExampleDTO: Codable { var data: Dummy? var message, status: String? private enum CodingKeys: String, CodingKey{ case data, message, status } required init(from decoder: Decoder) throws { let container = try..