본문 바로가기
폐기물

안드로이드에대해 알아보자

by 더블비 2016. 12. 12.

2003 년 에 앤디 루빈 리치 마이너 닉 시어스 크리스 화이트가 미국 캘리포니아 주 팔로 알토 에 휴대폰 용 소프트웨어 플랫폼을 개발하는 Android 사를 설립했다. 2005 년 에 Google이 Android를 인수하고 임시 Google가 "gPhone"라는 자신의 휴대 전화 단말기의 개발을 진행하고 있다는 소문이 있다. 2007 년 11 월 5 일 휴대폰 용 소프트웨어 플랫폼 인 Android를 Google 미국 퀄컴 , 독일 통신 사업자의 T- 모바일 (T-Mobile International) 등이 중심이되어 설립 한 표준 단체 인 ' Open Handset Alliance "(오픈 핸드셋 얼라이언스, OHA)가 발표했다.무료로 누구에게나 제공되는 오픈 소스 이며 , Apache v2 라이선스 로 배포된다. 2008 년 10 월부터는 해당 휴대 전화가 다수 판매되고있다.Android 로고는 녹색 로봇 캐릭터 ' Bugdroid " 이 사용되고 있으며, 일본에서는"이드 군」의 애칭으로 불리고있다. 경쟁 모바일 플랫폼은 마이크로 소프트 의 Windows Phone , 액센츄어 의 Symbian OS , 퀄컴 의 Brew MP, 애플 의 iOS , 블랙 베리 의 BlackBerry , Linux Foundation 의 Tizen 등이있다.Google은 스마트 폰 · 태블릿 · 시계 이외에도 게임기 · 냉장고 등 영역에도 Android를 탑재시키는 아이디어이다.알림 표시 줄은 위에서 아래로 밀어 전개한다. 각각의 통지를 누르면 그들에게 완벽한 애플 리케이션이 열리게되어있다. 각각의 통지를 좌우로 슬라이드하여 제거한다.이 절에서는 Android Developers에서 발표 된 표준 Android (AOSP)에 대해 기술한다. 타사 가 독자적으로 추가 (사용자 정의) 기능은 포함하지 않는다.Android의 사용자 인터페이스 (UI)는 제조사마다 달라, 각각 고유의 UI를 개발하고있다. 정의가되어 있지 않은 표준 Android 통칭 AOSP 버전으로 불리고, Android Open Source Project의 소스 코드 에서 직접 빌드 한 것을 가리킨다. 또한 제조업체와 타사에서 개발 한 것은 정의 ROM 것으로 알려져있다.Android의 기본 조작은 터치 인터페이스로되어있어 손가락으로 직관적 인 조작을 할 수있게되어있다. 표시된 버튼 류를 누르면 탭, 길게 탭 (꼬집어) 화면 끝에서 탭 슬라이드 메뉴 류를 표시하는 슬쩍 멀티 터치 에 의한 핀치 회전 등을 할 수있게되어있다 [8] . 화면을 누를 때 버튼을 누르면라는 감각을 끌기 위하여 본체를 바이브 진동시키는 기능을 갖고있는. 자이로 스코프 와 GPS , 가속도계 등의 하드웨어 를 지원하며 [9] 응용 프로그램 측에서 액세스하고 활용할 수도있다. 자이로 스코프는 단말기를 세로에서 가로로 변경하는 데 사용되는 것이 많다. 게임 의 예에서는 레이싱 게임 에서 차를 핸들 조작 할 때 단말기를 기울여 핸들 조작에 적용 것이있다. 홈 화면은 컴퓨터 의 바탕 화면과 같이 응용 프로그램의 아이콘 이 정렬 응용 프로그램을 설치하면 홈 화면에 자동으로 배치된다. 또한 길게 탭에서 아이콘을 이동하거나 폴더 를 생성하고 저장하는 기능을 가진다. 이 외에도 위젯 을 배치 할 수 있도록되어있다. 위젯은 날씨 나 뉴스 등의 라이브 정보 등이 있으며, 홈 스크린에서 직접 볼 수있다. 홈 스크린 화면 외에도 여러 준비되어 있으며, 화면을 좌우로 스 와이프하여 여러 홈 화면 사이를 이동할 수 있다.화면 상단에는 상태 표시 줄이 배치되어있다. 상태 표시 줄에는 새 이메일 이나 SMS 를 수신하거나 장치를 연결했을 때, 사용자 가 작업을 중단시키지 않고 알리는 시스템으로 사용되는것이다. 또한 많은 Android 단말은 통신 전환, 비행기 모드 , 시스템 설정 등 자주 사용하는 기능이 알림 표시 줄에 포함되어있는 것이 많다. 일본 국내에서는 통칭으로 알림 표시 줄이라고한다.화면 하단에 "돌아 가기", "홈", "응용 프로그램 목록"의 작업을 수행 할 수있는 탐색 모음이 Android 3.x 및 4.0 이상에서 배포되는 중이다. 이전 버전에서는 주로 하드웨어 키 (이른바 푸시 버튼)이 주류였다.Android에는 문자 입력을위한 IME 를 탑재하고 텍스트 상자를 열면 화면에 가상 키보드 가 표시됩니다. 이 가상 키보드를 탭과 스 와이프 조작하여 문자를 입력 할 수 있도록되어있다. 타사 IME를 설치하는 것도 가능하게되어있다. IME 및 하드웨어가 지원하는 경우, Bluetooth 및 USB 연결 외장 키보드 를 연결하여 입력 할 수있다. 또한 발성에 의해 문자 입력을 할 음성 입력 시스템도 갖춘다.또한 2014 년 현재 Android OS에서는 기본적으로 일본어 입력 용 IME가 포함되어 있지 않습니다. 그 때문에, 일본어 입력을하려면 Google 일본어 입력 과 ATOK 등의 타사 IME를 설치해야한다. 국내 판매되는 단말은 처음부터 일본어 입력 할 수 있도록 iWnn , POBox Touch , ATOK 등이 제조 업체에 의해 제공되고있다.Google의인가를받은 단말 응용 프로그램 마켓으로 Google Play 가 설치되어있다. [15] 많은 단말기에서이 Google Play 에서 앱 콘텐츠를 다운로드하여 사용할 수 있도록되어있다. 2013 년 7 월 시점의 Google Play에서 100 만개 이상의 어플리케이션이 제공되고있다. Google은 Google Play를 통해 않는 응용 프로그램 배포도 인정하고 있으며, APK 파일 에서 직접 설치할 수 있도록되어 있으며, 그 응용 프로그램은들 어플로 불린다. 그러나 일견 보통 애플 리케이션에 보이는 악성 응용 프로그램 ( 악성 코드 )도 존재하기 때문에 공식 마켓 이외에서의 다운로드에 세심한주의가 필요하다. Android는 커널 에서 미들웨어, 사용자 인터페이스 , 웹 브라우저 , 전화 번호부 등의 표준 응용 프로그램 소프트웨어 군까지를 하나의 패키지로 제공되고있다.커널은 Linux의 관련 기술이 사용되고 있지만, 다른 부분은 다양한 기술이 이용되고 있으며, 예를 들어 표준 C 라이브러리 (libc)의 Bionic는 NetBSD 의 libc와 Linux 의 libc를 조합 한 것을 기반 로하고있다.커널과 라이브러리, 런타임은 대부분이 C 언어 나 C ++ 로 작성되어있다. 응용 프로그램 및 응용 프로그램 프레임 워크는 Google 독자적으로 구축 한 가상 머신 인 Dalvik 가상 머신의 " Java Platform, Standard Edition (Java SE)의 부분 집합 + Android 확장"환경 기술이다.Google에서 공식 지원하는 CPU는 ARM (ARMv5 이상), MIPS , x86 이다. ARM 이외의 환경은 Android 2.3에서 지원했다. 단말기 점유율의 대부분은 ARMv7가 차지하고 있지만, 일본에서는 2014 년 3 월 대형 가전 양판점 빅 카메라 가 자사 브랜드 제품으로 Intel Atom 탑재 태블릿 출시등 x86 의한 제품도 점차 확산되고있다.Android 4.4 이전 버전에서 작동하는 응용 프로그램은 기본적으로 Dalvik 가상 머신 (VM)상에서 동작한다. Android OS는 사전 설치 응용 프로그램과 나중에 설치하는 응용 프로그램을 공정하게 대우하는 것이 특징이다. Apache Harmony 에서 Swing과 AWT와 같은 일부 API를 제거하고 UI 등의 API를 추가 한 라이브러리이다. Java CDC API는 전부는 아니지만, 대체적으로 포함되어있다. Sun Java 호환성 테스트를 통과하지 않았습니다. Google에서 제공되는 SDK는 Java 플랫폼 에 의한 프로그램 환경과 C / C ++를 사용한 개발을 지원하고있다. Java 외에 Java 플랫폼 용의 여러 언어 ( Scala , Hecl )로 작성된 프로그램이 Dalvik상에서 동작한다. 또한 .NET Framework 호환 환경의 하나 인 Mono 도 Dalvik에 대응하는 계획이있다. Android 4.4 (KitKat)에서는 개발자를위한 ART 가상 머신이 구현되었다. ART는 Android Runtime 의 약자로, Dalvik보다 응용 프로그램의 작동 효율 등을 향상시킬 목적으로 개발 된다 . Dalvik의 경우 다양한 하드웨어에 대응할 수 있도록 응용 프로그램을 중간 코드의 상태로 보관 해두고, 실행 직전에 네이티브 코드로 변환하여 작동 JIT 컴파일 방식이 채용되고있다. 한편 ART 가상 머신은 미리 처음부터 네이티브 코드로 변환 해 두는 때문에 실행 속도와 동작 속도가 향상 되었다. 또한 Android 4.4에서는 여전히 Dalvik가 표준이되고 있으며, ART를 사용하기 위해서는 개발자 옵션 설정이 필요하다. 그러나 응용 프로그램은 ART에서는 정상 동작하지 않는 것도있어, Dalvik과 완벽하게 호환은 보장되지 않는다.Android 5.0에서는 ART 가상 머신이 표준이되었다. 5.0에 탑재 된 배터리 개선 시스템과 ART의 효율성의 장점이라는 조합을 통해 배터리 지속 시간이 Android 4.4에 비해 1.37 배로 크게 증가했다. 부트 로더 (bootloader)는 장치의 전원을 켤 때 플래시 메모리에 설치 된 Linux 커널을 읽어 들여, 거기에서 Android를 시작하는 시스템이다. PC로 비유하면 BIOS 라는 부분에 해당한다. 부트 로더 인터페이스 는 일부 단말기에서 액세스 가능하다. 많은 경우, 전원 버튼과 볼륨 다운 버튼을 동시에 누른 상태에서 전원을 넣고 부팅시킬 수있다. 부팅 후 표시되는 인터페이스는 fastboot 모드라고도 한다 응용 프로그램 개발은 Android SDK (Software Development Kit)가 런타임 및 라이브러리 개발은 Android NDK (Native Development Kit)가 무료로 제공되고있다 . Android SDK하여 Android 휴대 전화와 호스트 PC와를 USB로 연결하여 응용 프로그램을 휴대폰에서 실행하면서 PC에서 디버깅 할 수있다. Google은 유상으로 제공하는 SIM 락 프리의 개발 전용 휴대폰이나 타사 전용 휴대폰 에뮬레이터 않으면 낮은 수준의 런타임과 라이브러리를 다시 작성할 수 없다. 지원하는 운영 체제는 Linux ( Ubuntu 8.04 이상), Mac OS X v10.5.8 이상 ( Intel Mac ), Windows XP 이상이다. 개발 환경은 Android Studio 가 권장되고있다. Visual Studio , IntelliJ IDEA 등 다른 통합 개발 환경 에도 대응하고있다.Google은 2013 년 5 월 15 일 에 개최 된 Google I / O에서 Android Studio 라고 칭하는 새로운 통합 개발 환경을 개발 중임을 표명했다다. 이것은 IntelliJ IDEA를 기반으로 한 오픈 소스 에 따르면 Android 용 개발 환경이며, 빌드 도구로 기존의 Apache Ant 대신 Gradle 을 채용하고있다. 또한 레이아웃의 디자인도 더 그래픽으로 단말기 실기의 이미지에 가까워 질 것으로 알려졌다. 2014 년 12 월 8 일 에 정식 버전 1.0이 출시 된다.Android SDK는 Android Virtual Device (AVD)라는 PC에서 작동되는 가상 장치를 사용할 수있다. 지원 CPU와 마찬가지로 ARM, MIPS, x86의 3 종류의 아키텍처를 에뮬레이션하는 소프트웨어가 SDK에 포함되어 있으며, 이에로드 된 시스템 이미지도 Android 버전마다 각각 제공되고있다. 사용자가 이러한 선택을하고 어떤 Android 버전과 CPU 에뮬레이터의 조합에 의한 AVD를 생성한다. 그러나 일반적인 에뮬레이터와 마찬가지로 다른 컴퓨터 시스템을 에뮬레이션하는 동작이 매우 무겁고 쾌적한 디버깅 어렵다. 이를 커버하기 위해 가상화 지원 기능을 지원하는 x86 아키텍처의 CPU가 탑재 된 호스트 시스템에서 x86 시스템 이미지 의한 AVD 속도를 수있다. Windows 및 Mac OS 에서는 인텔 이 제공하는 Intel Hardware Accelerated Execution Manager (HAXM)에 의해 Intel VT 지원을 활성화 할 수있다. 또한 Linux 용 SDK에서는 x86 에뮬레이터 자체가 KVM 에서 작동시킬 수있게되어 있으며, Intel VT 또는 AMD-V에서 지원 가속화 할 수있다.대부분의 Android 단말은 사유 소프트웨어 의 Google Mobile Service (GMS) 응용 프로그램이 사전 설치 되어있다. Google Play ,지도, 갤러리, 캘린더, Gmail , 토크 등이 포함된다. GMS 앱 탑재은 호환성 테스트 Compatibility Test Suite (CTS)를 통과하여 Google에 라이선스가 부여 된 단말기 만 인정하고있다. 오픈 소스 Android에서 파생 된 이러한 응용 프로그램이 들어 있지 않은 경우는 CyanogenMod Gapps등은 root 권한으로 / system 폴더에 복사하여 설치 가능하다. 기본 하드웨어를 "goldfish"라고 정의하고 있으며, SDK의 QEMU 에뮬레이터는 그것을 답습하고있다. 지원하는 스펙은 다음과 같다. 그러나 2007 년 10 월 당시의 스펙이다.





'폐기물' 카테고리의 다른 글

웹호스팅 정보  (0) 2016.12.13
IP 주소에대한 설명  (0) 2016.12.12
닌텐도 사업 설명  (0) 2016.12.11
네트워크를 구성하는 기기  (0) 2016.12.11
컴퓨터 네트워크 규모에 따른 분류  (0) 2016.12.09