Java - getPath(), getAbsolutePath(), getCanonicalPath()

Java에서는 다음과 같이 File의 path를 가져오는 API를 제공합니다. getPath() File에 입력된 경로 리턴, getAbsolutePath() File에 입력된 절대 경로 리턴, getCanonicalPath() Resolved된 절대 경로 리턴. 이 API들을 소개하고 차이점에 대해서 알아보겠습니다.

30 Nov 2020

Java - Timer

Timer를 이용하여 TimerTask(Runnable)이 특정 시간에 실행되도록 만들 수 있습니다. 또는 일정 주기로 실행되도록 만들 수 있습니다. 이 글에서는 Timer를 사용하는 방법을 소개합니다. 일정 시간이 지난 뒤에 Task 실행, 정해진 시간에 Task 실행, 일정 시간 간격으로(주기적으로) Task 실행

30 Nov 2020

Java - 간단한 HashTable 구현

Java는 HashMap을 지원하기 떄문에 HashTable을 구현할 필요가 없습니다. 하지만 알고리즘의 동작 원리를 알고 싶거나, 알고리즘 시험에서 라이브러리를 사용하지 못하게 한다면 직접 구현해야 합니다. 이 글에서는 매우 간단히 만들 수 있는 HashTable을 Java로 구현해보았습니다.

29 Nov 2020

Java - Number Class

Number 클래스는 Abstract 클래스로, Short, Integer, Double 등의 클래스들은 Number 클래스를 상속합니다. Number 클래스는 다음 메소드들을 Abstract로 정의하였고, Number를 상속하는 클래스들은 intValue, doubleValue 등의 메소드들을 구현하였습니다. 이 메소드들은 Long, Double 등이 갖고 있는 value를 primitive type으로 변환하는 역할을 합니다.

18 Nov 2020

Android - Darkmode 활성화하는 방법

다크모드를 지원하도록 앱을 개발했습니다. 그런데 언제 다크모드로 변경될까요? 이 글에서는 다음 내용들에 대해서 알아보겠습니다. Settings에서 다크모드를 활성화하는 방법, App에서 다크모드를 활성화하는 방법. DarkMode 변경 시, 앱 재실행되지 않도록 만들기

15 Nov 2020

Android - hasSystemFeature(), 지원되는 Feature 확인

안드로이드는 System Feature라는 것을 정의하고, 이 디바이스가 어떤 기능을 지원하는지 App들이 알 수 있도록 합니다. 예를 들어, 안드로이드 디바이스가 카메라를 지원하지 않을 수 있습니다. SmartPhone은 대부분 카메라를 지원하지만 Watch는 지원하지 않을 수 있기 때문입니다. 이럴 때 System Feature를 확인하여 카메라를 지원하는지 확인할 수 있습니다.

15 Nov 2020

Android - 앱 권한 확인(Permission check)

App이 어떤 권한을 갖고 있는지 확인하는 방법을 소개합니다. checkSelfPermission()는 인자로 permisison 이름을 받습니다. Context의 App이 인자로 전달된 퍼미션을 갖고 있다면 PERMISSION_GRANTED를 리턴합니다. checkPermisison()은 다음과 같이 퍼미션 이름과 패키지 이름을 인자로 받습니다.

14 Nov 2020

AIDEGen으로 IDE에서 Android Framework 개발

AIDEGen은 Android Framework 코드를 Android Studio, Eclipse와 같은 IDE에서 작업할 수 있도록 도와줍니다. IDE뿐만 아니라 VScode도 지원합니다. AIDEGen 툴은 AOSP 소스에 포함되어있습니다. IDE에서 개발하고 싶은 Framework의 필요한 모듈에 대해서 AIDEGen으로 IDE 프로젝트 설정 파일들을 생성할 수 있습니다.

12 Nov 2020
codechachaCopyright ©2019 codechacha