· Android Java
1. Matcher 주요 메서드 matches() : 대상 문자열과 패턴이 일치할 경우 true 반환합니다. find() : 대상 문자열과 패턴이 일치하는 경우 true를 반환하고, 그 위치로 이동합니다. find(int start) : start위치 이후부터 매칭검색을 수행합니다. start() : 매칭되는 문자열 시작위치 반환합니다. start(int group) : 지정된 그룹이 매칭되는 시작위치 반환합니다. end() : 매칭되는 문자열 끝 다음 문자위치 반환합니다. end(int group) : 지정되 그룹이 매칭되는 끝 다음 문자위치 반환합니다. group() : 매칭된 부분을 반환합니다. group(int group) : 매칭된 부분중 group번 그룹핑 매칭부분 반환합니다. groupCou..
· Basic
1. Multi Process 하나의 프로그램을 여러개의 Process로 나누어 처리하는 방식 장점 : 하나의 Process가 잘못되어도 다른 Process가 처리하기 때문에 문제가 발생되지 않는다 단점 : Context Switching 비용이 발생한다 2. Multi Thread 프로그램을 여러개의 Thread로 구성하고 작업을 처리한다 장점 : 시스템 자원 소모 감소, 처리비용 감소(실행속도향상), 쓰레드간 자원 공유(stack을 제외한 영역) 단점 : 디버깅이 어렵다, 동기화 이슈발생, 하나의 쓰레드의 오류로 전체 프로세스 오류 3. Thread Safe 멀티 스레드 프로그래밍에서 일반적으로 어떤 함수나 변수, 혹은 객체가 여러 스레드로부터 동시에 접근이 이루어져도 프로그램의 실행에 문제가 없음을..
· Android Java
1. Text 저장하기 Clipboard에 text를 저장한다. public static void copy(Context context, String text) { ClipboardManager clipboard = (ClipboardManager) context .getSystemService(Context.CLIPBOARD_SERVICE); clipboard.setPrimaryClip(ClipData.newPlainText(null, text)); } 2. Uri 저장하기 Clipboard에 Uri를 저장한다. Uri는 컨텐츠의 주소로 주로 사진, 동영상에 사용되는 주소이다. Uri를 가져올 때 Scoped Storage를 주의하고 Media Store를 사용하자. public static void ..
· Android Java
1. Scoped Storage란? 구글 플레이스토어에 앱을 업로드 하기 위해서는 Target SDK 30 이상을 맞춰야하는 이슈가 생겼다. SDK 30 이상부터는 기존 접근 권한 과는 다르게 파일에 접근해야 하는 이슈가 생겼는데 다음과 같다. (1) API Levels SDK 28 이하 WRITE_EXTERNAL_STORAGE READ_EXTERNAL_STORAGE MANAGE_EXTERNAL_STORAGE SDK 32 이하 READ_EXTERNAL_STORAGE SDK 33 이상 READ_MEDIA_IMAGES READ_MEDIA_VIDEO READ_MEDIA_AUDIO (2) Permission 요청 SDK 28이하 에서는 권한 요청을 모두 해야 하고, 유저로부터 승인을 받아야 한다. 하지만 "Sc..
· Android Java
1. 구조 1. 작은 아이콘 : setSmallIcon() 2. 앱이름 : 앱 이름이 들어간다 3. 시간 : setShowWhen(false) 4. 큰 아이콘 : setLargeIcon() 5. 타이틀 : setContentTitle() 6. 메시지 : setContentText() 2. 구성 NotificationManager : 알림을 시스템에 발생시키는 SystemService Notification : 알림 구성 정보를 가지는 객체 NotificationCompat.Builder : 알림을 다양한 정보로 생성 NotificationChannel : 알림의 관리 단위(Android Oreo에서 추가) 3. 순서 NotificationManager 로 시스템서비스를 받아온다. 채널을 생성하여 해당 채..
Bell91
Bell Develop Blog