본문 바로가기

분류 전체보기92

엘비스 연산자('?:') 엘비스 연산자(`?:`)는 널 병합(Null Coalescing) 연산자로도 불립니다. 이 연산자는 간단한 표현을 통해 널 가능성이 있는 변수나 표현식을 다룰 때 유용합니다. 다음은 엘비스 연산자의 사용 방법과 설명입니다: val result = a ?: 1 - `a`가 `null`이 아니면, `result`에는 `a`의 값이 할당됩니다. - `a`가 `null`이면, `result`에는 우측의 값인 `1`이 할당됩니다. 이것은 아래의 코드와 동일한 의미를 가집니다: val result = if (a != null) a else 1 하지만 엘비스 연산자를 사용하면 코드가 더 간결해지고 가독성이 향상됩니다. 이는 특히 널 가능성이 있는 변수를 다룰 때 반복적으로 사용되는 패턴 중 하나입니다. 2023. 11. 14.
[Android] android java.security.cert.CertPathValidatorException: Trust anchor for certification path not found. 에러 원인 및 해결 방법 java.security.cert.CertPathValidatorException: Trust anchor for certification path not found. 에러는 일반적으로 안드로이드 앱이 SSL/TLS 연결을 설정하려고 할 때 발생합니다. 이 에러의 주요 원인은 앱이 서버의 SSL/TLS 인증서를 신뢰할 수 없거나 인증서 체인을 검증할 수 없을 때입니다. 저는 서버에서 사설 인증서를 사용했을 때 발생했습니다. 해결 방법은 서버에서 공인 인증서를 사용하도록 수정하는 것이 완벽한 해결책인데요. 가끔씩은 서버쪽 개발 리소스가 부족해서 그 상태가 며칠간 유지되는 경우가 있을 수 있습니다. 이럴때 해결방법은 앱이 사설 인증서도 사용할 수 있게끔 임시로 수정해 주는 것입니다. 여기서 그 방법을 알아 .. 2023. 11. 13.
SPM으로 RxSwift 추가 시 에러 SPM으로 RxSwift를 추가하고 빌드를 하면 아래와 같은 에러가 날때가 있습니다. Undefined symbol: _$s6XCTest14XCTAssertEqual___4file4lineyxyKXK_xyKXKSSyXKs12StaticStringVSutSQRzlF Undefined symbol: _$s6XCTest7XCTFail_4file4lineySS_s12StaticStringVSutF Undefined symbol: __swift_FORCE_LOAD_$_XCTestSwiftSupport 이 때 아래와 같이 “Enable Testing Search Paths”를 “Yes”로 수정하면 빌드가 성공합니다. 하지만 실제로 프로젝트를 실행하면 아래의 에러가 발생합니다. dyld[7777]: Library n.. 2023. 11. 9.
[SPM] RxSwift 설치하기 Swift Package Manager(SPM)을 사용하여 RxSwift를 설치하는 방법은 아래와 같습니다. 1. Xcode를 열고, 상단 메뉴에서 'File > Add Packages...'를 선택합니다. 2. 팝업 창에 “https://github.com/ReactiveX/RxSwift.git”를 입력하고, 'Add Package' 버튼을 클릭합니다. 추가로 여기서는 ”Dependency Rule” 은 “Up to Next major Version” 으로 설정했습니다. 3. 추가할 라이브리를 “RxTest”만 빼고 모두 체크한 다음 “Add Package” 버튼을 클릭합니다. ”RxTest”를 추가하면 기존에 존재하는 Unit Test 라이브러리와 충돌을 일으키는 문제가 있는데요. 나중에 이 부분은 .. 2023. 11. 9.