Android 4.0.3 API

API 수준: 15

Android 4.0.3 (ICE_CREAM_SANDWICH_MR1)은 Android 4.0 (ICE_CREAM_SANDWICH) 플랫폼 제품군의 점진적 출시입니다. 이 출시에는 사용자 및 개발자를 위한 새로운 기능, API 변경사항, 다양한 버그 수정이 포함되어 있습니다.

개발자는 Android 4.0.3 플랫폼을 Android SDK용 다운로드 가능한 구성요소로 사용할 수 있습니다. 다운로드 가능한 플랫폼에는 Android 라이브러리 및 시스템 이미지와 더불어 에뮬레이터 스킨 등이 포함되어 있습니다. Android 4.0.3을 대상으로 개발 또는 테스트를 시작하려면 Android SDK 관리자를 사용하여 플랫폼을 SDK에 다운로드하세요.

API 개요

아래 섹션에서는 Android 4.0.3의 새로운 API에 대한 기술 개요를 제공합니다.

연락처 제공자의 소셜 스트림 API

상태 업데이트 및 체크인과 같은 소셜 스트림 데이터를 사용하는 애플리케이션은 이제 각 사용자의 연락처와 해당 데이터를 동기화하여 스트림에 항목과 각 항목의 사진을 함께 제공할 수 있습니다.

개별 연락처의 소셜 스트림이 포함된 데이터베이스 테이블은 android.provider.ContactsContract.StreamItems에 의해 정의되며, 이 테이블의 URI는 스트림 항목이 속한 ContactsContract.RawContacts 디렉터리 내에 중첩됩니다. 각 소셜 스트림 테이블에는 소스를 나타내는 아이콘 (아바타), 항목의 라벨, 기본 텍스트 콘텐츠, 항목에 관한 댓글 (예: 다른 사용자의 응답) 등 각 스트림 항목에 관한 메타데이터를 위한 여러 열이 포함됩니다. 스트림과 연결된 사진은 android.provider.ContactsContract.StreamItemPhotos로 정의된 다른 테이블에 저장되며, 이 테이블은 android.provider.ContactsContract.StreamItems Uri의 하위 디렉터리로 사용할 수 있습니다.

자세한 내용은 android.provider.ContactsContract.StreamItems 및 android.provider.ContactsContract.StreamItemPhotos를 참고하세요.

연락처의 소셜 스트림 항목을 읽거나 쓰려면 애플리케이션은 매니페스트 파일에서 <uses-permission android:name="android.permission.READ_SOCIAL_STREAM"> 또는 <uses-permission android:name="android.permission.WRITE_SOCIAL_STREAM">를 선언하여 사용자에게 권한을 요청해야 합니다.

캘린더 제공자

메인 스크린 위젯

Android 4.0부터 홈 화면 위젯에 더 이상 자체 패딩이 포함되어서는 안 됩니다. 대신 시스템에서 현재 화면의 특성을 기반으로 각 위젯을 위한 패딩을 자동으로 추가합니다. 이에 따라 위젯이 그리드에 더 균일하고 일관되게 표시됩니다. 플랫폼은 홈 화면 위젯을 호스팅하는 애플리케이션을 지원하기 위해 새 메서드 getDefaultPaddingForWidget()를 제공합니다. 애플리케이션에서 이 메서드를 호출하여 시스템 정의 패딩을 가져오고 위젯에 할당할 셀 수를 계산할 때 이를 고려할 수 있습니다.

맞춤법 검사

  • 맞춤법 검사기 서비스에 액세스하는 앱의 경우 새 cancel() 메서드는 세션에서 대기 중인 맞춤법 검사기 작업과 실행 중인 맞춤법 검사기 작업을 모두 취소합니다.
  • 맞춤법 검사기 서비스의 경우 새로운 추천 플래그 RESULT_ATTR_HAS_RECOMMENDED_SUGGESTIONS를 사용하면 서비스가 신뢰도가 높은 추천을 신뢰도가 낮은 추천과 구분할 수 있습니다. 예를 들어 맞춤법 검사기는 입력 단어가 사용자 사전에 없지만 유력한 추천이 있는 경우 플래그를 설정하거나 입력 단어가 사전에 없고 유용성이 떨어질 수 있는 추천이 있는 경우 플래그를 설정하지 않을 수 있습니다.

    맞춤법 검사기에 연결된 앱은 RESULT_ATTR_HAS_RECOMMENDED_SUGGESTIONS 플래그를 다른 추천 속성 및 getSuggestionsAttributes()getSuggestionsCount() 메서드와 함께 사용하여 입력 단어를 오타로 표시하고 추천을 제공할지 결정할 수 있습니다.

  • 텍스트 스팬의 새 FLAG_AUTO_CORRECTION 스타일은 사용자가 입력/작성 중인 단어/텍스트에 자동 수정이 적용될 예정임을 나타냅니다. 이 유형의 추천은 자동 수정이 진행 중임을 나타내기 위해 다르게 렌더링됩니다.

블루투스

새로운 공개 메서드 fetchUuidsWithSdp()getUuids()를 사용하면 앱이 원격 기기에서 지원되는 기능(UUID)을 확인할 수 있습니다. fetchUuidsWithSdp()의 경우 시스템은 원격 기기에서 서비스 검색을 실행하여 지원되는 UUID를 가져온 다음 ACTION_UUID 인텐트로 결과를 브로드캐스트합니다.

UI 도구 키트

새로운 메서드 setUserVisibleHint()getUserVisibleHint()를 사용하면 프래그먼트가 현재 사용자에게 표시되는지 여부에 관한 힌트를 설정할 수 있습니다. 시스템은 표시되는 프래그먼트의 로더가 실행될 때까지 사용자에게 표시되지 않는 프래그먼트의 시작을 지연합니다. 표시 힌트는 기본적으로 'true'입니다.

그래픽

접근성

  • 이제 RemoteViews의 클라이언트는 setContentDescription() 메서드를 사용하여 확장된 레이아웃의 뷰 콘텐츠 설명을 설정하고 가져올 수 있습니다.
  • getMaxScrollX(), getMaxScrollY(), setMaxScrollX(), setMaxScrollY() 메서드를 사용하면 앱이 AccessibilityRecord 객체의 최대 스크롤 오프셋을 가져오고 설정할 수 있습니다.
  • 터치 탐색 모드가 사용 설정된 경우 새로운 보안 설정 ACCESSIBILITY_SPEAK_PASSWORD는 헤드셋을 사용하지 않는 경우에도 사용자가 IME에 비밀번호 입력란에 입력된 텍스트를 말하도록 요청하는지 여부를 나타냅니다. 기본적으로 헤드셋을 사용하지 않는 한 비밀번호 텍스트가 읽혀지지 않습니다.

TTS(text-to-speech)

  • 네트워크 TTS 지원을 쿼리하고 사용 설정하기 위한 새 메서드 getFeatures()를 추가합니다.
  • 엔진이 등록하여 음성 합성 오류 알림을 수신할 수 있는 새 리스너 클래스 UtteranceProgressListener를 추가합니다.

데이터베이스

  • CrossProcessCursorWrapper 클래스를 사용하면 콘텐츠 제공업체가 교차 프로세스 쿼리의 결과를 더 효율적으로 반환할 수 있습니다. 새 클래스는 원격으로 프로세스에 전송될 커서를 래핑하는 데 유용한 구성요소입니다. 또한 일반 Cursor 객체를 CrossProcessCursor 객체로 투명하게 변환할 수 있습니다.

    CrossProcessCursorWrapper 클래스는 애플리케이션이 콘텐츠 제공업체를 구현할 때 발생한 일반적인 성능 문제와 버그를 수정합니다.

  • 이제 CursorWindow(java.lang.String) 생성자는 이름 문자열을 입력으로 사용합니다. 시스템에서 더 이상 로컬 커서 창과 원격 커서 창을 구분하지 않으므로 이제 CursorWindow(boolean)가 지원 중단되었습니다.

인텐트

기기에서 CATEGORY_APP_BROWSER, CATEGORY_APP_CALENDAR, CATEGORY_APP_MAPS와 같은 일반적인 유형의 애플리케이션을 타겟팅하기 위한 새로운 카테고리를 추가합니다.

카메라

권한

다음은 새로운 권한입니다.

  • android.Manifest.permission#READ_SOCIAL_STREAM 및 android.Manifest.permission#WRITE_SOCIAL_STREAM: 동기화 어댑터가 공유 연락처 제공업체의 연락처에 소셜 스트림 데이터를 읽고 쓸 수 있도록 허용합니다.

Android 4.0.3 (API 수준 15)의 모든 API 변경사항을 자세히 보려면 API 차이점 보고서를 참고하세요.

API 수준

Android 4.0.3 API에는 시스템 자체에 저장되는 정수 식별자(15)가 할당됩니다. 'API 수준'이라고 하는 이 식별자를 사용하면 시스템이 애플리케이션을 설치하기 전에 애플리케이션이 시스템과 호환되는지 올바르게 판단할 수 있습니다.

애플리케이션에서 Android 4.0.3에 도입된 API를 사용하려면 API 수준 15 이상을 지원하는 Android 플랫폼을 기준으로 애플리케이션을 컴파일해야 합니다. 필요에 따라 <uses-sdk> 요소에 android:minSdkVersion="15" 속성을 추가해야 할 수도 있습니다.

자세한 내용은 API 수준 문서를 참고하세요.