개발 경험 기록9 안드로이드 앱의 SSL 인증서 오류 트러블슈팅: "Trust anchor for certification path not found" 들어가며개발자라면 한 번쯤 예상치 못한 환경에서 발생하는 문제와 씨름해본 경험이 있을 것입니다.이번에 저희 회사의 타 팀에서 신규 솔루션 배포 중 경험한 문제는 "특정 고객사 네트워크에서만 발생하는 SSL 인증서 오류"였습니다.이 글에서는 해당 이슈의 트러블슈팅에 제가 약간의 지원을 해주면서 알게된 것들과 해결책을 공유하고자 합니다.1. 문제 상황1.1 증상저희 회사에서는 안드로이드 애플리케이션을 개발하여 고객사(L사)에 제공했습니다.애플리케이션은 HTTPS를 통해 저희 백엔드 서버와 통신합니다.그런데 저희 솔루션이 설치된 고객사의 일부 기기들로부터 애플리케이션이 서버에 연결할 수 없다는 보고가 들어왔습니다.저희가 로그상에서 파악한 오류 메시지는 다음과 같았습니다.외부 API 요청에 실패했습니다. [Tr.. 2025. 3. 24. 채용 과제 테스트 중 디지털 치료제 처방 코드 생성 시스템에서 팬텀 삽입 문제 해결하기 이번 글에서는 최근 채용 과제 테스트로 처방코드 생성 API 개발하던 도중 발견한 팬텀 삽입(Phantom Insert) 문제와 이를 데코레이터 패턴과 트랜잭션 격리 수준을 통해 해결한 경험을 공유하려고 합니다. [ 채용 과제 리포지토리 ] - https://github.com/shiniseong/BeyondTest문제 상황: 처방코드 중복 생성채용 과제로 진행한 프로젝트에서 의료진이 환자에게 처방코드를 발급하는 API를 개발하고 있었습니다.요구사항은 다음과 같았습니다.처방코드는 영문자 대문자 4자, 숫자 4자로 구성된 총 8자리 랜덤 코드처방코드는 중복되지 않아야 함발급 이력이 데이터베이스에 저장되어야 함처음에는 다음과 같이 간단하게 구현했습니다.override suspend fun createPres.. 2025. 3. 24. PRIMARY KEY, 칼럼의 속성일까 테이블의 속성일까? 최근 제가 개발한 DDL-DSL 라이브러리에 ALTER 문 지원을 추가하는 작업을 진행하면서, 어찌보면 당연히 알아야할 지식이지만, 부끄럽게도 PRIMARY KEY 제약조건에 이제야 좀 더 명확히 알게 된 부분이 있어 기록해봅니다.자칫 오해할 수 있는 PRIMARY KEY의 성격대부분 테이블을 생성할 때 다음과 같이 PRIMARY KEY를 지정합니다.CREATE TABLE users ( id INTEGER PRIMARY KEY, name VARCHAR(100), email VARCHAR(200));또는 복합키를 사용할 때는 이렇게 합니다.CREATE TABLE orders ( order_year INT, order_sequence INT, customer_id INT, .. 2025. 1. 17. Android 개발환경에서 ADB를 이용한 포트 포워딩 설정하기 안드로이드 개발 과정에서 에뮬레이터나 실제 디바이스와 통신할 때 포트 포워딩이 필요한 경우가 있습니다. 이번 포스트에서는 ADB(Android Debug Bridge)를 이용한 포트 포워딩 설정 방법과 환경 구성에 대해 알아보겠습니다.호스트와 게스트 OS의 이해안드로이드 개발 환경에서는 두 가지 주요 시스템이 존재합니다:호스트 머신(Host Machine): 개발자가 실제로 사용하는 물리적 컴퓨터Android Studio가 설치되어 있는 환경에뮬레이터를 구동하는 실제 머신게스트 OS(Guest OS):호스트 머신 위에서 실행되는 가상화된 안드로이드 환경에뮬레이터 내부에서 동작하는 안드로이드 운영체제실제 안드로이드 앱이 실행되는 환경ADB 환경변수 설정하기ADB 명령어를 시스템 어디서나 사용하기 위해서는 .. 2024. 12. 30. 이전 1 2 3 다음 728x90