Android 1.1 버전 노트

날짜: 2009년 2월
API 수준: 2

이 문서에서는 SDK에 포함된 Android 1.1 시스템 이미지의 버전 노트를 제공합니다.

개요

SDK에서 제공되는 Android 1.1 시스템 이미지는 2009년 2월부터 Android 지원 핸드셋에 배포할 수 있는 Android 1.1 프로덕션 시스템 이미지의 개발 버전입니다.

Android 1.1 시스템 이미지는 업데이트된 버전의 프레임워크 API를 제공합니다. Android 1.0 API와 마찬가지로 Android 1.1 API에는 시스템 자체에 저장된 정수 식별자 2가 할당됩니다. 'API 수준'이라고 하는 이 식별자를 사용하면 시스템에서 애플리케이션을 설치하기 전에 애플리케이션이 시스템과 호환되는지 올바르게 판단할 수 있습니다.

애플리케이션은 android:minSdkVersion 속성에 값을 추가하여 호환되는 가장 낮은 시스템 API 수준을 나타냅니다. 속성 값은 API 수준 식별자에 해당하는 정수입니다. 애플리케이션을 설치하기 전에 시스템은 android:minSdkVersion 값을 확인하고 참조된 정수가 시스템 자체에 저장된 API 수준 정수보다 작거나 같은 경우에만 설치를 허용합니다.

Android 1.1 시스템 이미지를 사용하여 Android 1.1 플랫폼을 실행하는 Android 지원 기기와 호환되는 애플리케이션을 빌드하는 경우 반드시 android:minSdkVersion 속성을 '2'로 설정하여 애플리케이션이 Android 1.1 이상 시스템 이미지를 사용하는 기기와만 호환되도록 지정해야 합니다.

구체적으로는 매니페스트 파일에서 <uses-sdk> 요소의 android:minSdkVersion 속성을 <manifest>의 하위 요소로 지정합니다. 이 속성을 설정하면 다음과 같이 표시됩니다.

<manifest>
  ...
  <uses-sdk android:minSdkVersion="2" />
  ...
</manifest>

이러한 방식으로 android:minSdkVersion를 설정하면 기기에서 Android 1.1 플랫폼을 실행하는 경우에만 사용자가 애플리케이션을 설치할 수 있습니다. 따라서 특히 Android 1.1에 도입된 API를 사용하는 경우 애플리케이션이 기기에서 제대로 작동합니다.

애플리케이션이 Android 1.1에 도입된 API를 사용하지만 <uses-sdk android:minSdkVersion="2" />을 선언하지 않는 경우 Android 1.1 기기에서는 제대로 실행되지만 Android 1.0 기기에서는 제대로 실행되지 않습니다. 후자의 경우 애플리케이션이 Android 1.1 API를 사용하려고 하면 런타임에 비정상 종료됩니다.

애플리케이션이 Android 1.1에 도입된 새 API를 사용하지 않는 경우 android:minSdkVersion를 삭제하거나 속성을 '1'로 설정하여 Android 1.0 호환성을 나타낼 수 있습니다. 하지만 애플리케이션을 게시하기 전에 Android 1.0 시스템 이미지 (Android 1.0 SDK에서 사용 가능)를 대상으로 애플리케이션을 컴파일하여 Android 1.0 기기에서 제대로 빌드되고 작동하는지 확인해야 합니다. 애플리케이션이 호환되도록 설계된 API 수준에 상응하는 시스템 이미지를 대상으로 애플리케이션을 테스트해야 합니다.

애플리케이션에서 Android 1.1 API를 사용하지 않고 사용할 필요가 없다고 확신하는 경우 Android 1.1 SDK로 이전하여 추가 테스트를 수행하는 것보다 Android 1.0 SDK에서 계속 작업하는 것이 더 쉬울 수 있습니다.

외부 라이브러리

시스템 이미지에는 <uses-library>를 추가하여 애플리케이션에서 액세스할 수 있는 이러한 외부 라이브러리가 포함되어 있습니다.

  • com.google.android.maps — 애플리케이션이 Google 지도 데이터에 액세스할 수 있는 권한을 제공합니다. Google 지도 데이터를 사용하려면 지도 API 키가 필요합니다.

기기 호환성

Android 1.1 시스템 이미지는 아래 나열된 Android 지원 기기와의 호환성을 테스트했습니다.

  • T-Mobile G1

내장 애플리케이션

시스템 이미지에는 다음과 같은 기본 제공 애플리케이션이 포함됩니다.

  • 알람 시계
  • API 데모
  • 브라우저
  • 계산기
  • 카메라
  • 연락처
  • 개발자 도구
  • 다이얼러
  • 이메일
  • 지도 (및 스트리트 뷰)
  • 메시지
  • 음악
  • 사진
  • 설정

UI 현지화

시스템 이미지는 아래 나열된 언어의 현지화된 UI 문자열을 제공합니다.

  • 영어, 미국 (en_US)
  • 독일어(de)

현지화된 UI 문자열은 기기 설정 애플리케이션을 통해 액세스할 수 있으며 에뮬레이터에 표시되는 언어와 일치합니다.

해결된 문제

  • AlarmClock 알림이 이제 AlarmManager를 통하지 않고 직접 오디오/바이브를 재생합니다. AlarmClock 알림이 활동 시작이 아닌 IntentReceiver에서 오디오/바이브 재생을 시작합니다. 이렇게 변경하면 모달 대화상자에서 알람이 차단되는 것을 방지할 수 있습니다.
  • 기기 절전 모드를 수정합니다.
  • 이제 한 번 탭해도 통화 중 다이얼패드가 열리지 않습니다. 이제 사용자가 이를 터치하여 드래그해야 합니다.
  • 발신 메일 25개 중 약 1개가 보낸편지함 폴더로 전송될 때 IMAP 연결 (Gmail 기반 서버)을 중단시키는 버그를 수정합니다.
  • 손상되었거나 테스트할 수 없는 자동 계정 설정 항목을 삭제합니다. 나머지 항목 몇 개에 사소한 수정사항이 추가되었습니다. 몇 가지 특수한 경우에 사용되는 경고 대화상자를 개선합니다.
  • 기본 메일 확인 간격을 'never'가 아닌 15분마다로 변경합니다.
  • 사용자가 비밀번호에 특수문자 (예: 공백)를 포함할 수 있도록 IMAP의 비밀번호 따옴표 버그를 수정합니다.
  • 자동 및 수동 계정 설정에서 발생하는 다양한 오류 수정
  • 다양한 연결 오류에 관한 보고 기능이 개선되어 사용자가 실패한 계정 설정을 더 쉽게 진단할 수 있습니다.
  • POP3 계정에 대한 새 메일 알림을 수정합니다.
  • '확인하지 않음'으로 표시된 계정이 적절하게 자동 검사되도록 합니다.
  • 이제 사용자 환경설정을 사용하여 날짜와 시간을 표시합니다 (예: 오전/오후 24시간으로 표시).
  • 이제 메일 보기에 참조: 가 표시됩니다.
  • POP3 연결 실패 시 복구를 개선합니다.
  • POP3 파서 규칙이 느슨하므로 애플리케이션이 규정을 준수하지 않는 이메일 서버에서 작동할 수 있습니다.

새로운 기능

  • 지도: 사용자가 지도에서 검색하고 비즈니스를 클릭하여 세부정보를 볼 때 세부정보와 리뷰를 추가합니다.
  • 다이얼러: 이제 스피커폰을 사용할 때 통화 중 화면 시간 제한 기본값이 더 길어집니다.
  • 다이얼러: DTMF 다이얼패드를 더 쉽게 찾을 수 있도록 '다이얼패드 표시' / '다이얼패드 숨기기' 항목을 통화 메뉴에 추가합니다.
  • MMS의 첨부파일 저장을 지원합니다.
  • 레이아웃에서 marquee를 지원합니다.

API 변경사항

개요

  • 실제 (테스트가 아닌) API 변경사항 없이 테스트 시스템에 대한 주석을 추가합니다.
  • 프로세스가 UID를 쉽게 확인할 수 있도록 메서드를 추가합니다.
  • 레이아웃에서 marquee를 지원합니다.
  • 뷰에서 패딩을 결정하는 새 메서드를 추가합니다. View의 자체 서브클래스를 작성하는 경우에 유용합니다.
  • 애플리케이션이 SMS 또는 WAP 푸시 메시지를 브로드캐스트할 수 있는 새로운 권한을 추가합니다.
  • API 정리: SDK에 바인드된 시스템 이미지에서 보호된 생성자를 삭제합니다.

API 변경 세부정보

모듈 또는 기능변경사항 설명
테스트 시스템용 주석
LargeTest 주석이 추가되었습니다.
MediumTest 주석이 추가되었습니다.
SmallTest 주석이 추가되었습니다.
프로세스가 UID를 쉽게 알 수 있도록 합니다.
클래스 android.os.Process에 공개 메서드 myUid()를 추가했습니다.
뷰의 패딩
클래스 android.view.View에 공개 메서드 getBottomPaddingOffset()를 추가했습니다.
클래스 android.view.View에 공개 메서드 getLeftPaddingOffset()를 추가했습니다.
클래스 android.view.View에 공개 메서드 getRightPaddingOffset()를 추가했습니다.
클래스 android.view.View에 공개 메서드 getTopPaddingOffset()를 추가했습니다.
클래스 android.view.View에 공개 메서드 isPaddingOffsetRequired()를 추가했습니다.
마키 지원
클래스 TextView에 공개 메서드 setMarqueeRepeatLimit(int)를 추가했습니다.
공개 필드 android.R.attr.marqueeRepeatLimit 추가됨
새로운 권한
공개 필드 android.Manifest.permission.BROADCAST_SMS 추가됨
공개 필드 android.Manifest.permission.BROADCAST_WAP_PUSH 추가됨
API 정리
보호된 생성자 java.net.ServerSocket.ServerSocket(java.net.SocketImpl)을 삭제했습니다.