해당 글에서는 화면 공유 기술 중 “System Broadcast Picker 기능”과 관련되어 이해하는 과정에 대해서 작성하였습니다. 💡 전반적인 화면 공유 기술 및 앱 내에서 화면 공유 기술에 대해서 궁금하시면 이전에 작성한 글을 참고하시면 도움이 됩니다. [Swift] 화면 공유 기술 - 1 : In-App 화면 공유 해당 글에서는 화면 공유 기술 중 “인 앱(In-App) 화면 녹화 및 공유 기능”과 관련되어 이해하고 개발하는 과정에 대해서 작성하였습니다. 1) ReplayKit 정의 및 주요 기술들 💡ReplayKit 이란? - ReplayK adjh54.tistory.com 1) System Broadcast Picker 및 기술 프로세스 1. System Broadcast Picker 💡 자..
해당 글에서는 UUID에 대해서 이해하며 구조를 파악하여 이를 활용할 수 있는 방법에 대해서 이해를 돕기 위해 작성한 글입니다. 1) UUID(Universally Unique Identifier) 정의 및 구조 1. UUID 정의💡 UUID(Universally Unique Identifier)란?- 범용 고유 식별자를 의미하며 중복이 되지 않는 유일한 값을 구성하고자 할때 주로 사용이 되는고유 식별자를 의미합니다.- 주로 세션 식별자, 쿠키 값, 무작위 데이터베이스 키 등에 사용이 됩니다. 2. UUID 구조💡 UUID는 16바이트(128비트) 형태의 구조를 가지며 하나의 UUID 길이는 36자리이며 “4개의 하이픈(-)”과 “32개의 16진수 문자열”로 구성이 되어있습니다. 구조길이 (바이트..
해당 글에서는 컬렉션 프레임워크(Collection Framework)내에서 사용되는 인터페이스와 이를 구현하는 구현체 간의 관계를 이해하기 위한 목적으로 작성한 글입니다. 💡 이전 Collection Framework로 List, Map, Set 작성한 글에 대해 궁금하시다면 아래의 링크를 참조하시면 도움이 됩니다. [Java] Collection Framework(List, Map, Set)의 인터페이스와 구현체 이해하기 - 1 : 정의 및 예시해당 글에서는 컬렉션 프레임워크(Collection Framework)내에서 사용되는 인터페이스와 이를 구현하는 구현체 간의 관계를 이해하기 위한 목적으로 작성한 글입니다. 1) 요약 클래스 분류 설명 Map 인adjh54.tistory.com 1) 요약클래스..
해당 글에서는 화면 공유 기술 중 “인 앱(In-App) 화면 녹화 및 공유 기능”과 관련되어 이해하고 개발하는 과정에 대해서 작성하였습니다. 1) ReplayKit 정의 및 주요 기술들 💡ReplayKit 이란? - ReplayKit은 iOS 9 이후 버전에서 사용 가능한 화면 공유를 지원하는 기술입니다. - 이 기능을 사용하면 앱 내에서 사용자가 수행하는 작업을 다른 사용자와 공유할 수 있습니다. 1. Screen Recording(IOS 9 이상) 💡 실행 중인 앱을 녹화하고 미리 보기 컨트롤러에서 사진 및 공유로 저장하는 기술입니다. 💡 RPScreenRecorder, RPPreviewViewController 기능을 주된 기술로 사용합니다. 2. In-App Screen Capture(IOS 1..
해당 글에서는 SwiftUI에서 UIKit 화면을 불러오는 방법에 대해서 공유합니다. 1) SwiftUI 화면 : View 💡 SwiftUI에서 UIKit으로 구성된 화면을 불러오는 과정을 나열한 페이지입니다. 해당 부분에서는 ScreenShareView() 클래스에 주목해야합니다. 해당 클래스는 UIViewControllerRepresentable 프로토콜을 반환받는 클래스로 구성이 되어있습니다. import SwiftUI import Foundation /** * SwiftUI 화면을 로드합니다. */ struct TemplateView: View{ var body: some View { NavigationView{ VStack{ Button(action: { apiSearchRoom() // 입장 ..
해당 글에서는 컬렉션 프레임워크(Collection Framework)내에서 사용되는 인터페이스와 이를 구현하는 구현체 간의 관계를 이해하기 위한 목적으로 작성한 글입니다. 1) 요약 클래스분류설명Map인터페이스Key-Value의 쌍을 저장하는 인터페이스입니다HashMapMap 인터페이스의 구현체해시 테이블을 사용하여 Key-Value 쌍을 저장합니다.TreeMapMap 인터페이스의 구현체레드-블랙 트리를 사용하여 Key-Value 쌍을 저장합니다. Key 값에 따라 정렬됩니다.LinkedHashMapMap 인터페이스의 구현체해시 테이블과 연결 리스트를 사용하여 Key-Value 쌍을 저장합니다. 삽입 순서대로 출력됩니다.ConcurrentHashMapMap 인터페이스의 구현체HashMap과 유사하지만 ..
해당 글에서는 배열의 값들을 앞/뒤의 값을 제거하거나 특정 조건에 따라 제거하는 방법에 대해서 공유합니다. 1) 배열/리스트의 앞뒤 값 비우기 1. 배열의 첫번째 값 비우기 💡 해당 방법에서는 사이즈도 줄이고 배열의 첫 번째 요소를 비우는 방법에 대해서 정의하였습니다. 1.1. 첫 번째 인덱스 0의 값으로 변경 : 배열 사이즈를 유지하면서 첫 번째 값 비우기 💡 첫번째 값을 비우기 위해서 첫 번째 인덱스 값을 가지고 값을 null로 변경하여 사이즈를 유지하면서 첫 번째 값을 비웁니다. String[] strArr4 = {"apple", "banana", "cherry", "berry"}; strArr4[0] = null; // [null, "banana", "cherry", "berry"] 1.2. Ar..
해당 글에서는 배열 혹은 리스트에 존재하는 요소들에 대해서 값을 비우는 방법에 대해서 공유합니다. 1) 배열/리스트의 값 비우기 1. 배열(Array)의 값 비우기 1.1. 빈 배열 객체로 재 생성하는 방법: new String [], new Int [] 💡 문자열 배열의 경우 다음과 같이 new String []을 사용하여 값을 비웁니다. 💡 정수 배열의 경우 다음과 같이 new int []을 사용하여 값을 비웁니다. // [문자열] 빈 배열 객체로 재생성하는 방법 String[] strArr = {"apple", "banana", "cherry", "berry"}; strArr = new String[strArr.length]; // [null, null, null, null] // [정수] 빈 배열..