목록2024/04 (241)
투케이2K
[개발 환경 설정] 개발 툴 : AndroidStudio [소스 코드] // ----------------------------------------------------------------------------------------- // TODO [SEARCH FAST] : [setMicrophonePermission] : [마이크 권한 부여 팝업창 호출] // ----------------------------------------------------------------------------------------- // AndroidManifest.xml 파일에 권한 선언 필요 : // ----------------------------------------------------------..

[개발 환경 설정] 개발 툴 : AndroidStudio 개발 언어 : Kotlin [소스 코드] // --------------------------------------------------------------- // [로직 처리 실시] // --------------------------------------------------------------- try { /** * // ----------------------------------------- * [요약 설명] * // ----------------------------------------- * 1. 사전 사용자로부터 권한 획득 필요 * * >> 안드로이드 13 이상 * AndroidManifest : READ_MEDIA_I..
[개발 환경 설정] 개발 툴 : AndroidStudio [소스 코드] // --------------------------------------------------------------- // [로직 처리 실시] // --------------------------------------------------------------- try { /** * // ----------------------------------------- * [요약 설명] * // ----------------------------------------- * 1. 사전 사용자로부터 권한 획득 필요 * * >> 안드로이드 13 이상 * AndroidManifest : READ_MEDIA_IMAGES , READ_MEDI..
[로직 정리] 정리 로직 : Android 상태 : [Android] 앱 백그라운드 상태 전환 및 앱 재구동 로직 - App Running TimeOut Restart Logic [설 명] [1] : 안드로이드 최상위 Application 클래스에서 액티비티 라이프 사이클 감지 ActivityLifecycleCallbacks 리스너 등록 [2] : 특정 액티비티가 onPause (정지) 상태가 된 경우 현재 날짜 및 시간 저장 수행 [3] : 사용자가 일정 시간 이후 다시 앱을 포그라운드 활성 시 onResume 상태에서 백그라운드 전환 된 시간과 포그라운드로 올라온 시간 비교 수행 [4] : 해당 오차가 ex : 30 분 이상 나는 경우 자동으로 Task 클리어 후 앱 런쳐 액티비티로 Inten..
[환경 설정 및 설명] 프로그램 : AndroidStudio 설 명 : [Java] 변수 값 초기화 이슈 - java.lang.NullPointerException : variable must not be null [에러 원인] 1. 전역 static 키워드로 선언 된 변수 값이 메모리 부족으로 인해 초기화 된 후 하위 로직에서 해당 변수를 참조할 때 발생하는 이슈 [해결 방법] 1. 하위 로직에서 해당 변수를 사용하는 구간에 null 체크 방어 로직 추가 2. 변수 값이 null 인 경우 시스템 알림 팝업창 표시 로직 추가 (시스템을 다시 시작해 주세요 .. )
[개발 환경 설정] 개발 툴 : AndroidStudio 개발 언어 : Java [소스 코드] private synchronized void procCount() { S_Log._D_(ACTIVITY_NAME + " : procCount : 동기화 카운트 다운 수행", null); // [스레드 생성] Thread thread = new Thread(new Runnable() { @Override public void run() { for(int i = 1; i

[개발 환경 설정] 개발 툴 : AndroidStudio 개발 언어 : Kotlin [소스 코드] Handler(Looper.getMainLooper()).postDelayed({ // [메인 스레드에서 동작] // Alert 팝업창 : BadTokenException 대응 if (this@LoginActivity.isFinishing == false){ // TODO [액티비티가 동작 중 인 경우] // [라디오 버튼 메뉴 선택 팝업창 활성] AlertDialog.Builder(this@LoginActivity) .setTitle(str_tittle) //팝업창 타이틀 지정 .setIcon(R.drawable.icon) //팝업창 아이콘 지정 .setCancelable(false) //외부 레이..
[타이틀] 구 분 : Library / 라이브러리 제 목 : [라이브러리] [Ios] DeviceKit 간편 디바이스 상태 확인 라이브러리 [설 명] 1. DeviceKit 은 디바이스에 관한 정보, 상태, 지원 여부 등을 간편하게 확인할 수 있는 Ios 라이브러리 입니다 2. DeviceKit 은 코코아팟, 카르타고, SPM 등을 통해서 라이브러리 의존성을 부여할 수 있습니다 3. DeviceKit 특징 : >> 장치 식별 및 제품군 감지 (시뮬레이터, 디바이스, Phone, iPad 등) >> 배터리 상태 확인 >> 배터리 잔량 확인 >> 다양한 장치 지표 확인 (예: 화면 크기, 화면 비율, PPI) >> 저전력 모드 감지 >> 안내 액세스 세션 감지 >> 화면 밝기 확인 >> 디스플레이 줌..

[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT5 [소스 코드] // ----------------------------------------------------------------------------------------- // MARK: - [테스트 메인 함수 정의 실시] // ----------------------------------------------------------------------------------------- func testMain() { S_Log._D_(description: "테스트 함수 시작 실시", data: nil) /* // ------------------------------------------------------- ..

[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT5 [소스 코드] // ----------------------------------------------------------------------------------------- // MARK: - [테스트 메인 함수 정의 실시] // ----------------------------------------------------------------------------------------- func testMain() { S_Log._D_(description: "테스트 함수 시작 실시", data: nil) /* // ------------------------------------------------------- [요..

[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT5 [소스 코드] // ----------------------------------------------------------------------------------------- // MARK: - [테스트 메인 함수 정의 실시] // ----------------------------------------------------------------------------------------- func testMain() { S_Log._D_(description: "테스트 함수 시작 실시", data: nil) /* // ------------------------------------------------------- ..

[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT5 [소스 코드] // ----------------------------------------------------------------------------------------- // MARK: - [테스트 메인 함수 정의 실시] // ----------------------------------------------------------------------------------------- func testMain() { S_Log._D_(description: "테스트 함수 시작 실시", data: nil) /* // ------------------------------------------------------- ..

[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT5 [소스 코드] // ----------------------------------------------------------------------------------------- // MARK: - [테스트 메인 함수 정의 실시] // ----------------------------------------------------------------------------------------- func testMain() { S_Log._D_(description: "테스트 함수 시작 실시", data: nil) /* // ------------------------------------------------------- ..

[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT5 [참고 사이트 및 lib 추가 URL] Git 사이트 : https://github.com/devicekit/DeviceKit 라이브러리 추가 URL 주소 : https://github.com/devicekit/DeviceKit.git [방 법]
[제 목] [여행 정보] 태국 여행 시 참고 주의 사항 - Thailand Travel Caution [내 용] 1. 태국 기본 온도 및 습도에 따른 준비물 준비 >> 태국은 기본적으로 온도 및 습도가 높은 나라로 비가 오더라고 해당 날씨 온도는 더운 편 입니다 (일반적으로 30 도 이상) >> 태국 여행 시 손수건, 손 선풍기, 부채 등 더위를 식을 수 있는 제품을 준비해 주세요! >> 또한 , 더운 햇빛에 대비할 수 있게 선크림!! 꼭 준비해주세요 2. 태국 벌레 물림에 따른 준비물 주의 >> 태국은 온도가 높다 보니 한국에서 보는 이상 벌레 (모기, 파리) 가 많습니다 >> 벌레 물림 약 및 벌레 퇴치제를 준비해 주세요! 3. 태국 여행 시 의약품 준비 >> 태국 여행 시 비행기 멀미가 있으신 ..

[개발 환경 설정] 개발 툴 : XCODE 개발 언어 : SWIFT5 [소스 코드] // ----------------------------------------------------------------------------------------- // MARK: - [클립보드에 저장 된 데이터 확인] // ----------------------------------------------------------------------------------------- func getClipboardData(completion: @escaping (String)->()) { /* // ----------------------------------------- [getClipboardData 메소드 ..

[개발 환경 설정] 개발 툴 : AndroidStudio 개발 언어 : Kotlin [소스 코드] package com.example.kotlinproject import android.app.Service import android.content.ClipboardManager import android.content.Context import android.content.Intent import android.os.IBinder class S_ClipBoardChangeService : Service(), ClipboardManager.OnPrimaryClipChangedListener { /** * // --------------------------------------------------..
[개발 환경 설정] 개발 툴 : AndroidStudio [호출 : 소스 코드] // --------------------------------------------------------------- // [로직 처리 실시] // --------------------------------------------------------------- try { // [핸들러 작업 예약] : [클립 보드 저장] new Handler(Looper.getMainLooper()).postDelayed(new Runnable() { @Override public void run() { // [클립 보드 내용 저장] C_App.setClipboard(A_Intro.this, "반갑 습니다 . 투케이 입니다"); }..
[제 목] [IT 용어] 핸드 셰이킹 (Hand shaking) 기본 개념 및 관련 용어 설명 [설 명] 1. 핸드 셰이킹 이란 본래 악수를 뜻하는 단어로 IT 에서는 정보기술과 전기통신 및 관련 분야에서 채널에 대한 정상적인 통신이 시작 되기 전에 두개의 실체 간에 확립 된 통신 채널의 변수를 동적으로 설정하는 자동화된 협상 과정입니다 2. 핸드 셰이킹 은 채널의 물리적인 확립이 잇따르며, 정상적인 정보 전송 이전)에 이루어지는 과정입니다 3. 핸드 셰이킹 관련 주요 용어 : >> SYN : Synchronize sequence number, 연결 시작 요청을 의미함 >> ACK : Acknowledgement, 응답 확인을 의미함 >> FIN : Finish, 연결 종료 요청을 의미함 4. 예시 ..

[개발 환경 설정] 개발 툴 : AndroidStudio 개발 언어 : Kotlin [소스 코드] // ----------------------------------------------------------------------------------------- // TODO [SEARCH FAST] : [RETURN] directoryFileList : 특정 디렉토리에 저장된 파일 리스트 목록 확인 // ----------------------------------------------------------------------------------------- fun directoryFileList(mContext: Context, path: String): ArrayList { /** ..