안드로이드

1. SDK란? Android SDK(Android Software Development Kit)는 포괄적인 개발 도구를 포함하는 소프트웨어 개발 키트이다. SDK에는 API, 디버거, 라이브러리, QEMU 기반 핸드셋 애뮬레이터, 설명서, 샘플 코드 및 튜토리얼이 포함된다. 현재 지원되는 개발 플랫폼에는 리눅스, 맥, 윈도우가 포함된다. 2. SDK Version? Android Studio에서 프로젝트를 새로 생성할 시, Minimum SDK를 선택해야 한다. 이때 Android Studio에서 사용자들이 어떤 API 버전을 얼마나 사용하고 있는지 확인할 수 있다. 안드로이드에서는 버전 이름을 오레오, 레드벨벳 케이크, 티라미슈 등으로 지정해두었다. 3. Google Play와 targetSDK? 실..
Toast나 Dialog를 사용할 때 Activity 클래스에서는 this, 클래스명.this, getApplicationContext()를 사용하고, Fragment에서는 getContext()를 사용하곤 했다. 그런데 이들의 차이점을 알아야 할 필요가 있어서 정리를 해보려고한다. 1. Context - 추상 클래스 - 앱의 resource나 Android 시스템에서 제공하는 API에 대한 정보에 접근하기 위한 인터페이스 - 구현은 안드로이드 시스템에 의해 제공 Context는 액티비티 단위인 ActivityContext와 앱 단위인 ApplicationContext 두 가지로 나뉜다. 2. ApplicationContext ApplicationContext는 단어 그대로 Application과 관련된..
안드로이드 개발자라면 들어봤을 법한 Thread와 ANR에 관해 이야기해보려고 한다. 위의 주제에 앞서 먼저 프로세스에 대해 설명하면, 프로세스는 컴퓨터에서 연속적으로 실행되고 있는 컴퓨터 프로그램을 말한다. 기본적으로 같은 애플리케이션의 모든 구성 요소는 같은 프로세스와 스레드에서 실행되고, 대부분 애플리케이션은 이를 바꿔서는 안 된다. 그럼 스레드란 무엇일까? 1. Thread(스레드) - 스레드란 프로세스(process) 내에서 실제로 작업을 수행하는 주체를 의미한다. 모든 프로세스에는 한 개 이상의 스레드가 존재하여 작업을 수행한다. 또한, 두 개 이상의 스레드를 가지는 프로세스를 멀티스레드 프로세스(multi-threaded process)라고 한다. - 애플리케이션이 시작되면 시스템이 애플리케..
REST란? - REST(Representational State Transfer)란 자원을 이름으로 구분하여 해당 자원의 정보(상태)를 주고받는 모든 것을 말한다. 여기서 자원은 해당 소프트웨어가 관리하는 모든 것을 의미한다. REST는 www(월드 와이드 웹)과 같은 분산 하이퍼 미디어 시스템을 위한 소프트웨어 개발 아키텍처의 한 형식이다. 이러한 제약들을 준수했을 때 시스템이 RESTful 하다고 말한다. - REST의 기본 개념은 리소스다. 리소스의 예로는 잘 정의된 상태와 관계, 표준화된 작동방식과 형식을 가지고 전송되는 문서를 들 수 있다. 종종 타입이나 문서를 수정해야 할 때, API 혹은 그 서비스 어딘가에서 액션을 불러일으키지 않고 스스로 RESTful을 호출한다. - REST는 기본적으..
앱을 사용하다 보면, 위젯을 클릭했을 때 새로운 화면으로 전환이 되는 경우가 있다. 이렇게 화면이 전환될 경우 필요한 데이터를 전달할 수 있도록 안드로이드에서 지원한다. 데이터의 전달은 한 방향으로 데이터를 전달하는 것과 양방향으로 데이터를 전달하는 것으로 나눌 수 있다. 1. 한 방향 데이터 전달 한쪽 방향으로 데이터를 전달할 때는 putExtra()를 사용하여 데이터를 태그와 함께 담은 뒤 startActivity()를 이용하여 데이터를 전달한다. 이 후 세컨드 페이지에서 데이터를 사용하기 위해 인텐트를 활용하여 getExtra()로 데이터를 받아준다. 실제 안드로이드 스튜디오에서 putExtra를 작성했을 때 나오는 화면이다. 위의 사진처럼 다양한 종류의 자료형을 지원한다. 앞에 붙은 name이라는..
1) 안드로이드의 4대 컴포넌트 인텐트를 설명하기 앞서, 안드로이드의 4대 컴포넌트를 먼저 소개하려고 한다. 안드로이드의 4대 컴포넌트는 액티비티, 서비스, 브로드캐스트 리시버, 콘텐트 프로바이더이다. 액티비티란? 액티비티(Activity)는 화면을 구성하는 가장 기본적인 컴포넌트이다. 서비스란? 서비스(Service)는 눈에 보이는 화면(액티비티)과 상관없이 백그라운드에서 동작하는 컴포넌트이다. 백신 프로그램과 같이 눈에는 보이지 않지만 계속 동작하고 있다. 로컬에서 동작하는 서비스는 서비스 생성 -> 서비스 시작 -> 서비스 종료의 세 단계를 거친다. 브로드캐스트 리시버란? 안드로이드는 여러 응용 프로그램이나 장치에 메시지를 전달하기 위해 방송(broadcasting) 메시지를 사용한다. 안드로이드는..
1) 액티비티(Activity) 액티비티는 화면을 구성하는 가장 기본적인 컴포넌트로 안드로이드폰에 나타나는 화면 하나하나를 말한다. 액티비티는 사용자에게 보여주는 화면을 만들기 때문에 안드로이드의 4대 컴포넌트 중 가장 핵심적인 요소이다. 실제 모바일 앱을 사용해보았다면 버튼을 클릭하는 등의 사용자의 이벤트에 따라 화면이 이동되기도 한다. 이처럼 모바일 앱 환경은 사용자와 앱의 상호작용이 항상 동일한 위치에서 시작되는 것이 아니라는 점에서 데스크톱 앱 환경과 차이점을 지닌다. 대신 사용자의 행동이 흔히 비결정론적으로 시작된다. 예를 들어 홈 화면에서 이메일 앱을 열면 이메일 목록이 표시될 수 있고, 반대로 소셜 미디어 앱을 사용하고 있는 상태에서 이메일 앱을 실행하면 이메일을 작성하기 위한 이메일 앱 화..
1) 레이아웃의 기본 개념 안드로이드에서 사용하는 버튼, 텍스트뷰 등의 각종 위젯은 레이아웃이라는 틀 위에 존재해야 한다. 필요한 위젯을 개발자가 원하는 곳에 배치하기 위해 적절한 레이아웃을 사용해야 한다. 레이아웃은 ViewGroup 클래스로부터 상속받으며 내부에 위젯들을 담는 용도로 사용된다. 레이아웃에는 다양한 속성들이 존재한다. - orientation : 레이아웃 안에 배치할 위젯의 수직 또는 수평 방향을 설정함 - gravity : 레이아웃 안에 배치할 위젯의 정렬 방향을 좌,우 중앙 등으로 설정한다. - padding : 레이아웃 안에 배치할 위젯의 여백을 설정한다. - layout_weight : 레이아웃이 전체 화면에서 차지하는 공간의 가중값을 설정하는데, 여러 개의 레이아웃이 중복될 경..
빡수수
'안드로이드' 카테고리의 글 목록 (4 Page)