목록투케이2K 에러관리 (295)
투케이2K
[환경 설정 및 설명] 프로그램 : AndroidStudio 설 명 : [Android] Http 통신 수행 중 I/O Exception 발생 이슈 (Read Time Out) [에러 원인] 1. Http 통신 수행 중 서버에서 DB 쿼리 수행 시 read time 이 지연되어 기본 http 통신 응답 (10 초) 내에 데이터를 반환해 주지 못하는 이슈 [해결 방법] 1. 데이터베이스 Query (쿼리) 튜닝 수행 2. 클라이언트에서 http 통신 수행 시 connection time out , read time out , write time out 값 수정 실시 >> 기본 (10 초) 에서 (30 초) 로 변경 수행 >> 사용 라이브러리 : okhttp, retrofit
[환경 설정 및 설명] 프로그램 : AndroidStudio 설 명 : [Android] [FCM] 앱 설치 후 >> 파이어베이스 최초 푸시 발송 수행 시 푸시 메시지가 표시 되지 않는 이슈 - push message [에러 원인] 1. 안드로이드 OS 오레오 이상 푸시 알림 채널이 있어야 푸시 메시지가 표시되는데 파이어베이스 콘솔에서 메시지 발송 시 FirebaseService 가 호출 되지 않아 푸시 알림 채널이 없어 메시지가 표시 되지 않는 이슈 (FirebaseService 에서 푸시 메시지를 받으면 채널 생성 체크 로직임) [해결 방법] 1. Application 수행 시점 및 loading , login 화면에서 사전 오레오 이상 버전 체크 수행 2. 실행 Android Os..
[환경 설정 및 설명] 프로그램 : AndroidStudio 설 명 : [Android] 빌드 에러 - 파이어베이스 FCM 푸시 적용 시 NoSuchMethodError .. firebase/iid/zzan 이슈 E/AndroidRuntime: FATAL EXCEPTION: main Process: main.android.u, PID: 27056 java.lang.NoSuchMethodError: No static method zza()Lcom/google/firebase/iid/zzan; in class Lcom/google/firebase/iid/zzan; or its super classes (declaration of 'com.google.firebase.iid.zzan' appears..
[환경 설정 및 설명] 프로그램 : AndroidStudio 설 명 : [Android] 메니페스트 파일 파이어베이스 푸시 서비스 등록 에러 - must extend Service , context not found [에러 원인] 1. 안드로이드 하위 버전 프로젝트에서 파이어베이스 FCM 푸시 메시지 포함 된 것 빌드 시 FirebaseMessagingService 상속 문제로 context 를 찾을 수 없는 이슈 [해결 방법] 1. 안드로이드 X 버전으로 마이그레이션 수행 2. build.gradle 파일에서 compileSdk 버전을 최소 30 으로 설정 후 프로젝트 리빌드 3. build.gradle 파일에서 파이어베이스 푸시 사용 implementation 버전 변경 실시 (..
[환경 설정 및 설명] 프로그램 : AndroidStudio 설 명 : [Android] 클립보드 (clipboardManager) 데이터 저장 후 hasPrimaryClip 저장된 값 체크 시 리턴 false 이슈 [에러 원인] 1. clipboardManager 클립보드 매니저 사용해 setPrimaryClip 정상적으로 데이터를 정상 했음에도, 안드로이드 Os 기능 상에 데이터를 저장하기 때문에 즉시, hasPrimaryClip 사용해 저장 여부 체크 시 리턴 false 로 반환되는 이슈 [해결 방법] 1. clipboardManager setPrimaryClip 클립보드 데이터 저장 후 new Handler(Looper.getMainLooper()).postDelayed 를 사용해 ..
[환경 설정 및 설명] 프로그램 : AndroidStudio 설 명 : [Android] Environment.isExternalStorageManager 사용해 파일 권한 체크 시 항상 return false 이슈 [테스트 방법] 1. 안드로이드 build.gradle 파일에서 targetSdk 버전을 33 부터 한단계씩 내려가면서 테스트 진행 (기기 호환성 테스트) >> ex : 33, 32 ... 26, 25, 24 targetSdk 설정 2. 프로젝트 compileSdk 는 33 버전 , targetSdk 는 22 설정 [에러 원인] 1. Environment.isExternalStorageManager 사용해 파일 액세스 권한 부여 체크 수행 시 targetSdk 타겟 대상 버..
[환경 설정 및 설명] 프로그램 : AndroidStudio 설 명 : [Android] build.gradle 파일 target SDK 33 미만 설정 후 안드로이드 13 이상에서 알림 권한이 호출 되지 않는 이슈 [에러 원인] 1. [Build.gradle] target SDK 33 미만에서는 POST_NOTIFICATIONS 퍼미션 권한을 부여할 수 없어 알림 권한 부여 팝업창을 호출 하지 못하는 이슈 [해결 방법] 1. 퍼미션 권한 부여하기 전에 Build.VERSION.RELEASE 기기 Os 정보 확인 실시 2. [Build.gradle] target SDK 32 설정에서 : Os 버전이 안드로이드 13 이상 인 경우 >> NotificationManager 사용해 creat..
[환경 설정 및 설명] 프로그램 : AndroidStudio 설 명 : [Android] [Git] 안드로이드 프로젝트 git 업로드 수행 시 파일 용량 제한으로 인한 error 에러 발생 [에러 원인] 1. git 파일 업로드 수행 불필요한 파일 용량 사이즈가 커서 발생 되는 이슈 [해결 방법] 1. 안드로이드 프로젝트에서 gradlew clean 명령어 사용해 프로젝트 불필요 파일 제거 >> 터미널 메뉴에서 명령어 입력 수행 : ./gradlew clean 2. gitignore 파일에서 파일 업로드 시 업로드 제외 항목 설정 ### Android ### *.apk *.aab ### log and file ### *.log *.hprof 3. git push..
[환경 설정 및 설명] 프로그램 : Xcode 설 명 : [Web] : [Ios] : 웹 크롬 getUserMedia 마이크 권한 호출 시 ConstraintNotSatisfiedError 제약 조건 이슈 [에러 원인] 1. 사용자 휴대폰 마이크 기능 자체에 문제가 발생해 마이크 권한 사용 요청 시 Exception 이 발생 하는 이슈 2. 점검 방법 : 아이폰 기본 [음성 녹음] 앱 사용해 녹음 동작 체크 실시 >> 기본 설치 된 앱 에서도 녹음이 되지 않는 문제 확인 [해결 방법] 1. getUserMedia 마이크 권한 호출 후 ConstraintNotSatisfiedError 에러가 발생한 경우 에러 알림 팝업창 표시 >> '기기 오디오 및 음성 기능에 문제가 있습니다. 기기..
[환경 설정 및 설명] 프로그램 : Xcode 설 명 : [Ios] Objc 문법 에러 - Variable is not assignable (missing __block type specifier) [에러 원인] 1. block 함수 내부 (ex : dispatch) 에서 변수를 사용할 때 해당 변수가 block 내에서 사용할 수 없어서 발생하는 이슈 [해결 방법] 1. block 함수 내부 (ex : dispatch) 에서 변수를 사용 시 초기 변수 선언에 __block 타입 명시 >> __block int one = 0;
[환경 설정 및 설명] 프로그램 : Intelij 설 명 : [Web] 크롬에서 http 주소 사용 video 비디오 src 지정 및 캔버스 화면 녹화 시 captureStream cross-origin 이슈 [에러 원인] 1. 크롬에서 http 주소 사용 video 비디오 src 지정 및 캔버스 화면 녹화 시 captureStream cross-origin 이슈 발생 DOMException: Failed to execute 'captureStream' on 'HTMLMediaElement': Cannot capture from element with cross-origin data [해결 방법] 1. video 비디오 태그 속성에 crossOrigin="anonymous" 속성 추가 설정
[환경 설정 및 설명] 프로그램 : AndroidStudio, Xcode 설 명 : [Mobile] : PG 사 외부 서드 파티 업체 웹뷰 (Webview) 연동 시 세션 끊김 이슈 (session) [에러 원인] 1. 모바일 (Android , Ios) 웹뷰 에서 PG 사 연동 및 윈도우 오픈 (window open) 새로운 웹뷰 열기 수행 시 세션 끊김 이슈 발생 2. PG 사 response 헤더 값에 sameSite stric 으로 설정 되어 있어 세션 체크가 되지 않아서 발생하는 이슈 [해결 방법] 1. 모바일 (Android , Ios) 웹뷰 에서 PG 사 연동 시 새로운 웹뷰 오픈 (전) 헤더 값에 Cookie 쿠키 sameSite = none 및 Secure = true ..
[환경 설정 및 설명] 프로그램 : Xcode 설 명 : [Server] : [Ios] : WAS 에서 sameSite 옵션 none 강제 설정 시 iOS 12 에서 strict 전송 이슈 [에러 원인] 1. Was (Tomcat , Jeus) 에서 쿠키 접근 관련 samSite 설정을 none 으로 해도 iOS 12 에서 http 요청 시 strict 으로 Response Header 응답 이슈 2. 해당 이슈로 인해 iOS 12 에서 웹뷰 세션이 끊기는 이슈 발생 (Was 에서 강제 설정 시 발생 이슈) 3. Was 설정 부분 : [해결 방법] [방법] : [1] : Apache 설정 수정 (http.config >> mod_headers 를 활성화한 후 내 vhost 에 아..
[환경 설정 및 설명] 프로그램 : Xcode 설 명 : [Ios] 빌드 에러 - 무료 개발 프로필의 최대 앱 수에 도달했습니다 : The maximum number of apps for free development profiles has been reached [에러 원인] 1. Xcode 에서 아이폰 빌드 수행 시 이미 개발자 계정 프로필에 등록 된 개발 app 들이 한계치에 도달해서 발생하는 이슈 >> 무료 개발 프로필의 최대 앱 수에 도달했습니다 : The maximum number of apps for free development profiles has been reached [해결 방법] 1. Xcode 에 등록 된 개발 계정으로 빌드 된 app 들 중 하나를 삭제하고 새..
[환경 설정 및 설명] 프로그램 : AndroidStudio 설 명 : [Android] 웹뷰 (Webview) 에서 자바스크립트 input file 재동작 하지 않는 이슈 - onShowFileChooser File [에러 원인] 1. 안드로이드 웹뷰 (Webview) onShowFileChooser 사용해 파일 선택 수행 시 사용자 중도 취소 발생 시 다음 번 input file 태그 이벤트 동작이 발생 하지 않는 이슈 [해결 방법] 1. onShowFileChooser 에서 갤러리 및 파일로 인텐트 수행 후 사용자가 취소 버튼 클릭 시 onResume 에서 null 초기화 실시 >> 만약, 선택한 파일이 있는 경우 registerForActivityResult 쪽으로 이벤트 콜백이..
[환경 설정 및 설명] 프로그램 : AndroidStudio 설 명 : [Android] 웹뷰 (Webview) 에서 자바스크립트 (js) 및 Css 변경 사항이 새롭게 적용 되지 않는 이슈 - 웹뷰 캐시 초기화 [에러 원인] 1. 안드로이드 웹뷰 로딩 시 웹 (Web) 단에서 변경 된 Js , Css 등이 새롭게 반영 되지 않는 이슈 발생 [해결 방법] ------------------------------------------------------------------------------- [기존 적용 된 소스 코드 및 상태] 1. [Web] : 코드 변경이 일어 날 때 새롭게 Js 및 Css 버전 올려서 배포 (ex : twok.js?123) 2. [Android] main_webvie..

[환경 설정 및 설명] 프로그램 : Xcode 설 명 : [Ios] 자바스크립트에서 getUserMedia 비디오 (video) 및 오디오 (Audio) 권한 팝업 호출 시 영어 알림 표시 이슈 [에러 원인] 1. 자바스크립트에서 getUserMedia 비디오 및 오디오 팝업창 호출 시 네이티브에서 퍼미션 권한이 등록 되어 있지 않은 경우, 영어로 알림 표시 이슈 (swift allow use your camera and microphone) [해결 방법] 1. Xcode 에서 info plist 에 비디오 및 마이크 속성 관련 된 권한 등록 및 권한 설명 등록 실시 (ios 15 이상 부터 / ios 14 버전 포함 및 이하 버전은 getUserMedia 퍼미션 권한을 상속 받을 수 있는..
[환경 설정 및 설명] 프로그램 : Intelij 설 명 : [Web] 모바일 웹 브라우저에서 비디오 자동 재생 되지 않는 이슈 - video auto play not working [에러 원인] 1. 모바일 브라우저 (크롬, 사파리) 및 웹뷰에서 비디오 자동 재생이 되지 않는 이슈 발생 지원 가능한 영상이 없습니다. 2. Chrome 의 자동재생 정책 : >> 오디오 및 비디오 요소에 대한 자동 재생 정책은 Chrome 66에서 시작되었으며 Chrome에서 원치 않는 미디어 자동 재생의 약 절반을 효과적으로 차단합니다 >> Web Audio API의 경우 Chrome 71에서 자동 재생 정책이 시작되었습니다. 이는 웹 게임, 일부 WebRTC 애플리케이션 및 오디오 기능을..
[환경 설정 및 설명] 프로그램 : Xcode 설 명 : [Ios] 빌드 에러 - LLDB is likely reading from device memory to resolve symbols [에러 원인] 1. Xcode 에서 아이폰 빌드 수행 시 기존에 설치 된 라이브러리 및 설정 충돌 이슈 발생 [해결 방법] 1. Xcode 가 실행되어 있는 상태라면, 완전 종료 및 디바이스 연결 해제 실시 2. 맥북 >> 이동 >> 폴더 이동 >> ~/Library/Developer/Xcode 3. 해당 경로에서 iOS DeviceSupport 폴더 안의 라이브러리 모두 전체 삭제 4. Xcode 재실행 및 아이폰에 디버깅 선 연결 새롭게 디버깅 수행 실시 (캐시 동기화)
[환경 설정 및 설명] 프로그램 : Xcode 설 명 : [Ios] ios 14 OS 버전 이하에서는 WKWebView 웹뷰에서 WebRTC 실시간 스트리밍 영상 재생이 되지 않는 이슈 [에러 원인] 1. ios WKWebView 웹뷰 에서 WebRTC 실시간 스트리밍 영상이 출력 되지 않는 이슈 발생 2. 자료 검색 및 내용 확인 결과 : - iOS 14.3 버전 이상 WebKit (웹킷) MediaRecorder API 를 지원 (라이브 오디오 / 비디오 콘텐츠를 입력으로 사용하여 압축된 미디어를 생성) - 또한, 사파리 브라우저는 영상 재생 시 H.264 및 H.265 를 비디오 코덱으로, AAC 를 오디오 코덱으로 사용하여 MP4 파일 형식을 지원 [해결 방법] 1. 소스 코..