프로그래밍 공부
작성일
2022. 9. 5. 11:57
작성자
WDmil
728x90

스마트폰의 개요

스마트폰 = 통화 기능 + 컴퓨터 + 다양한 ( MP3, 카메라, DMB, GPS 등) 기능을 탑제

 

스마트폰의 역사

  • 1992년 IBM사의 사이먼이 최초 제작
  • 1996년 노키아 9000
  • 2002년 마이크로소프트 포켓PC
  • 2007년 아이폰
  • 2008년 안드로이드 폰
  • 2010년 윈도폰7

스마트폰 운영체제

2020년 2분기 기준 세계시장 점유율

안드로이드 74% 아이폰 25% 윈도우폰 0.01%


안드로이드

마시맬로 부터 안드로이드 의 안정화가 자주 시작됨


 

안드로이드의 주요 기능 _(1)

  • 애플리케이션 프레임워크를 통해 제공되는 API를 사용함으로써 코드를 재사용하여 효율적이고 빠른 애플리케이션 개발 가능
  • 모바일 기기에 최적화된 달빅 또는 아트런타임(ART)를 제공함
  • 2D 그래픽 및 3D그래픽을 최적화하여 표현
  • 모바일용 데이터베이스인 SQLite를 제공
  • 각종 확장자를 제공함
  • 모바일 기기에 내장된 각종 하드웨어 제공
  • 이클립스 IDE 또는 ANdriod Studio 를 통해 강하고 빠른 개발 환경 제공

안드로이드의 주요 기능 _(2)

  • 롤리팝(5.0) 다양한 안드로이드 기기 통합지원
  • 마시멜로(6.0) 앱 권한 설정 지문인식 지원
  • 누가(7.0) 가상 현실 지원 및 3D게임, 알림 기향상, 다중 창 열기 지원
  • 오레오(8.0) PIP 알림 자동채우기 배터리 강화 등 지원
  • 파이(9.0) 실내위치 추척 향상된 알림 멀티카메라 인공지능 확장 지원
  • Android 10.0(Q) 라이브 캡션, 스마트 재생, 청각 보조, 동작 내비게이션, 어두운 테마, 개인 정보 제어 등을 지원
  • Android 11.0(R) 알림과 대화, 미디어 제어, 일회성 권한, 음성 액세스, 전원 메뉴, 스크롤 스트립 등을 지원함

안드로이드 특징

  • 안드로이드의 핵심 커널(Kernel) : 리눅스(Linux)로 구성되어 있음
  • 안드로이드 애플리케이션 개발 언어 : Java
  • 안드로이드 SDK에서 많은 라이브러리를 포함하고 있어 개발이 용이함
  • 오픈 소스를 지향함
    → 운영체제부터 관련 문서, 개발 도구 등 거의 모든 것을 무료로 사용 가능함
  • 지속적이고 빠른 업그레이드를 제공함

안드로이드 구조

  • 응용 프로그램(Applications)
  • 안드로이드 스마트폰에서 사용할 수 있는 일반 응용프로그램
  • 사용자 입장에서 가장 많이 사용
  • Java로 작성

 

응용 프로그램 프레임워크(Application FrameWork)

  • 안드로이드 API가 위치
  • 안드로이드 하드웨어에 접근할 때 API로만 접근가능

안드로이드 런타임(Android Runtime)

  • Java 코어 라이브러리,달빅 가상머신, 아트런타임으로 구성
  • Java 문법으로 프로그래밍, 그러나 가상머신을 사용하지 않고 달빅, 아트런타임 사용

 

라이브러리(Libraries)

  • 여러 시스템 라이브러리는 시스템접근으로 인해 Java가 아닌 C로 작성

 

리눅스 커널(Linux Kernel)

  • 하드웨어 운영관련 저수준 관리기능 포함
  • 많은 스마트폰 장치 지원

안드로이드 개발을 위한 운영체제

  • 윈도우, 리눅스 , 맥
  • 윈도우 환경이 보편적
  • 개발환경 구축 시 가상장치인 AVD(Android Virtual Device)제공
  • 안드로이드 장비 없어도 있는것처럼 작업가능
  • Android Studio 4.1은 Windows 64bit만 설치가능 32는 지원X

안드로이드 개발 환경 구성

개발환경 구성 완료시 Android Studio 실행 코딩 수정을 통해 앱개발

코딩된 결과 AVD에 출력 개발자는 그 결과를 확인


 


안드로이드 개발 환경 구축

  1. 인텔 HAXM설치
  2. Android Studio 다운로드
  3. Android Studio 설치
  4. Android Studio 환경설정
  5. 안드로이드 SDK 업데이트
  6. Android Virtual Device(AVD)생성
  7. 앱 개발 진행

 

728x90