일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 개발자
- JPA
- Git
- darkmode
- Notification
- IOS
- mac
- appstore
- MacOS
- SwiftUI
- github
- iOS16
- window
- 웹뷰
- shorebird
- rxswift
- Firebase
- UIButton
- FLUTTER
- Session
- Archive
- Swift
- error
- Realm
- geofencing
- 이미지
- Apple
- Code
- Xcode
- 한글
- Today
- Total
목록IOS (176)
EEYatHo 앱 깎는 이야기

정의 IDFA ( Identifier For Advertisers ) iOS 의 광고식별자이다. Apple이 사용자의 기기에 무작위로 할당하는 기기 ID. IDFA는 개인 정보를 노출하지 않고 사용자를 추적하고 식별하는 데 사용하며, 광고주는 IDFA로 맞춤형 광고를 제공. ADID ( Advertising Identifier ) iOS 6.0 부터 광고식별자로 사용하라고 제공하는 디바이스 식별자이다. = iOS 6.0 부터, ADID 를 IDFA 로 사용한다. ( 그 전에는 UDID ) ADID 애플 문서 링크 IDFA 특징, 성질 앱의 삭제 및 재설치 여부와 관계없이, 동일한 IDFA를 가진다. 단일 벤더에서 모든 앱에 할당하고 해당 벤더의 모든 앱을 제거하면 바뀌는 IDFV 와는 달리, IDFA는 ..
일반적인 값들의 마이그레이션 방법 Realm 클래스를 마이그레이션 할 때, oldObject의 값에 접근하기 위해서는,아래처럼 oldObject의 string 키값으로 접근하는 것이 일반적일텐데,해당 방법으로는 List 값에는 접근이 안된다. ( firstName과 lastName을 더해서 fullName이라는 값을 추가하는. List가 필요없는 케이스는 잘 됨. )migrationBlock: { migration, oldSchemaVersion in if oldSchemaVersion import RealmSwift// new Personclass Person: Object { @objc dynamic var firstName: String = "" @objc dynamic var l..
요약 iOS14 미만은 UIStackView의 layer이 CATransformLayer이라 backgroundColor 속성을 무시한다. iOS14 이상부터는 UIStackView의 layer이 CALayer로 바뀌면서 backgroundColor 속성을 사용할 수 있다. 따라서 버전분기 코드로 대응하면 된다. iOS 12에서 stackView의 backgroundColor가 이상한 이슈가 발견되었다. 아래 코드를 실행해도, backgroundColor를 찍어보면, nil이 나온다/? stackView.backgroundColor = .blue (lldb) po stackView.backgroundColor "nil" iOS12에서는 UIStackView의 layer은 CATransformLayer 이..

아래Button > View > Label 형태의 UI를 구성했었고, View, Label 영역의 터치를 Button이 수신하게 하고 싶었다. 직관적으로는 아래처럼 하면 될 듯 했지만, 안된다. view.isExclusiveTouch = false label.isExclusiveTouch = false // Don't work.. 답은 isExclusiveTouch 가 아닌, isUserInteractionEnabled 이다. view.isUserInteractionEnabled = false 심지어 label은 건들지도 않아도 된다. UILabel의 isUserInteractionEnabled 기본값이 false라서 그렇다.
if let url = URL(string: urlString) { ... } 해당 코드를 사용할 때, urlString에 한글이나 공백이 포함되어 있으면 nil이 나온다. 이를 해결하기 위해서는 PercentEncoding을 하면된다. if let safeString = urlString.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed), let url = URL(string: safeString) { ... } PercentEncoding은 url에 사용할 수 없는 문자들을 UTF-8형태로 인코딩하고 앞에 %를 붙혀준다. ( 영어, 숫자, 몇몇 특수문자들을 제외한 수 많은 문자들 ) ex ) 한글 -> %ED%95%9C%EA%B8%80 주..

nib must contain exactly one top level object which must be a UITableViewCell instance xib 최상단에 view가 2개 이상일 경우 발생. 언제 드갔지.. ㅡ,ㅜ

dSYM 파일은 아래 글을 보면 다운 받을 수 있고, Swift ) 앱스토어 커넥트 dSYM 위치, 다운안됨 - EEYatHo 파이어베이스에서 크래쉬가 어떤 버전에서 어떻게 나는지 잘 알려주는 Crashlytics. 관련 작업을 하는데, dSYM이 필요하다. 파이어베이스 가이드대로 하니까, dSYM 파일이 안보인다..-- ( 가이드 업데 eeyatho.tistory.com 파이어베이스의 설명을 보면 /path/to/pods/directory/FirebaseCrashlytics/upload-symbols -gsp /path/to/GoogleService-Info.plist -p ios /path/to/dSYMs 터미널로 이 스크립트를 실행하라고 한다. 좀더 풀어서 쓰면, 아래와 같다. [upload-sym..

요약 사내 모든 테스트 케이스 및 환경에서는 애플 로그인 정상 작동함. 애플측에 테스트 계정을 바꿔달라는 요구 + 전화 요구함. 이틀 뒤에 전화왔고, 테스트 계정 바꾸었더니 정상 작동하고, 심사 통과라고함. 애플 계정의 문제인지, 인증 서버의 문제인지는 불명확하다고 함. 시나리오 사내 앱이, 애플 로그인시, 이메일을 추가로 수집하고 있었고, 반려당했다. Guideline 5.1.1 - Legal - Privacy - Data Collection and Storage 애플 로그인을 했으면, 추가적인 데이터 수집없이 앱 이용이 가능해야한다. 그래서 회의결과, private relay email 을 사용하는 쪽으로 작업했고, 다시 심사를 넣었다. 그런데 이번엔. 애플 로그인이 안된다고 앱이 반려당했다. Gui..