안드로이드

안드로이드 모바일 앱개발 개념정리

슬라임 통통 2020. 12. 14. 15:56
728x90

안드로이드 특징

  • 안드로이드 앱 4대 컴포넌트 
    • 액티비티
    • 서비스
    • 브로드캐스트 수신자
    • 내용 제공자
  • main 메소드 없음

  • 뷰(View)와 컨트롤러(Controller)를 분리하여 구현

  • 사용자와의 인터랙션에 의해 안드로이드 시스템이 프로그램에 구현되어 있는 메소드를 필요에 따라 호출 - Callback
  • 뷰의 영역 : 테두리 기준 바깥쪽은 마진(margin) , 안쪽은 패딩(padding)

  • 뷰 가시성(Visibility) 설정

 

  • 타이젠(Tizen) :  삼성전자와 인텔이 주도하는 다목적 운영체제
  • 리엑트 네이티브 : Facebook이 개발한 리액트 기반 오픈소스 모바일 프레임워크
  • 플러터 : 구글이 개발한 모바일 앱 개발 프레임워크
  • 네이티브 앱, 웹 앱, 하이브리드 앱

 

대표적 레이아웃

제약 레이아웃  제약 조건을 사용해 화면을 구성하는 방법 . 디폴트된 레이아웃
리니어 레이아웃 한 쪽 방향으로 차례대로 뷰를 추가하는 방법
상대 레이아웃 부모 컨테이너 또는 다른 뷰와의 상대적 위치로 구성하는 방법
프레임 레이아웃 가장 상위에 있는 하나의 뷰만 보여주는 방법. 쌓는 방법
테이블 레이아웃 격자 모양의 배열을 사용하여 화면을 구성하는 방법

 

 

액티비티의 생명주기

 

 

 

Intent 화면 전환

  • StartActivity() 

  • StartActivityForResult() - setResult()

  • 화면종료 finish()
  • 인텐트에 데이터 첨부 및 가져오기

 

프래그먼트

  • 액티비티 vs 프래그먼트

  • 프래그먼트 생명주기

브로드캐스트 수신자

이벤트를 수신 받기 위해서는 브로드캐스트 수신자 등록 필요

registerReceiver

unregisterReceiver

 

 

 

 

Thread

 

멀티 스레드 : 같은 프로세스 안에 있으면서 메모리 자원을 공유

 

  • 서비스는 메인 스레드에서 동작하지만 스레드는 별도의 스레드에서 동작한다
  • 서비스는 안드로이드 4대구성요소로 강제종료되어도 시스템이 자동 시작시켜주나 스레드는 그렇지 않음
  • 앱이 상호작용에 필요하면 스레드, 필요없으면 서비스

 

 

 

 

 

Handler

메인 스레드에서 처리해야 하는 작업을 전달하는 역할을 담당

 

 

 

좀더 쉬운 방법?

 

 

 

 

 

 

 

네트워크 Socket

 

 

 

HttpURLConnection 

 

 

 

 SQLLite

 

 

SQLLiteOpenHelper

 

 

 

 

내용 제공자 (Content Provider)

안드로이드 4대 구성요소 중 하나

Resolver를 이용해 Provider가 제공하는 데이터에 접근

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

728x90
반응형