Android 2.3.3 API
컬렉션을 사용해 정리하기
내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.
API 수준: 10
Android 2.3.3 (GINGERBREAD_MR1
)은 Android 2.3 플랫폼에 몇 가지 개선사항과 API를 추가하는 소규모 기능 출시입니다.
개발자는 Android 2.3.3 플랫폼을 Android SDK용 다운로드 가능한 구성요소로 사용할 수 있습니다. 다운로드 가능한 플랫폼에는 Android 라이브러리 및 시스템 이미지와 더불어 에뮬레이터 스킨 등이 포함되어 있습니다. Android 2.3.3을 대상으로 개발 또는 테스트를 시작하려면 Android SDK 관리자를 사용하여 플랫폼을 SDK에 다운로드하세요.
API 개요
아래 섹션에서는 이전 버전 이후 프레임워크 API의 새로운 기능과 변경사항을 비롯하여 2.3.3의 개발자 관련 새로운 기능에 관한 기술적 개요를 제공합니다.
근거리 무선통신(NFC)
Android 2.3.3은 NFC에 대한 향상되고 확장된 지원을 제공하여 애플리케이션이 더 많은 유형의 태그와 새로운 방식으로 상호작용할 수 있도록 합니다.
포괄적인 새로운 API 세트를 사용하면 애플리케이션이 다음을 비롯한 더 광범위한 표준 태그 기술에 읽기 및 쓰기 액세스 권한을 부여할 수 있습니다.
- NFC-A (ISO 14443-3A)
- NFC-B (ISO 14443-3B)
- NFC-F (JIS 6319-4)
- NFC-V (ISO 15693)
- ISO-DEP (ISO 14443-4)
- MIFARE Classic
- MIFARE Ultralight
- NFC 포럼 NDEF 태그
또한 이 플랫폼은 제한된 P2P 통신 프로토콜과 API를 제공합니다. 포그라운드 활동은 API를 사용하여 연결 시 다른 NFC 기기에 푸시되는 NDEF 메시지를 등록할 수 있습니다.
이제 고급 태그 전달을 통해 애플리케이션이 NFC 태그가 감지될 때 실행되는 방식과 시기를 더 세부적으로 제어할 수 있습니다. 이전에는 플랫폼이 관심 있는 애플리케이션에 태그가 발견되었다고 알리기 위해 단일 단계 인텐트 전달을 사용했습니다. 이제 플랫폼은 포그라운드 애플리케이션이 다른 애플리케이션 (android.nfc.NfcAdapter.enableForegroundDispatch()
)에 전달되기 전에 태그 이벤트를 제어할 수 있는 4단계 프로세스를 사용합니다.
새로운 전달 프로세스를 사용하면 앱이 두 가지 새로운 인텐트 작업인 android.nfc.action.NDEF_DISCOVERED
및 android.nfc.action.TECH_DISCOVERED
를 기반으로 특정 태그 콘텐츠와 태그 기술을 수신 대기할 수도 있습니다.
NFC API는 android.nfc
및 android.nfc.tech
패키지에서 사용할 수 있습니다. 주요 클래스는 다음과 같습니다.
NFC 통신은 기기 하드웨어의 무선 기술을 기반으로 하며 일부 Android 기기에는 NFC가 없습니다. NFC를 지원하지 않는 Android 기기는 getDefaultAdapter(Context)
가 호출될 때 null 객체를 반환하고 context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_NFC)
는 false
를 반환합니다. 그러나 NFC API는 기본 하드웨어 지원과 관계없이 항상 존재합니다.
NFC API를 사용하려면 애플리케이션이 매니페스트 파일에서 <uses-permission
android:name="android.permission.NFC">
를 선언하여 사용자에게 권한을 요청해야 합니다.
또한 개발자는 기기에서 NFC를 지원하지 않는 사용자에게 애플리케이션이 검색되지 않도록 Google Play에서 필터링을 요청할 수 있습니다. 필터링을 요청하려면 애플리케이션의 매니페스트에 <uses-feature android:name="android.hardware.nfc"
android:required="true">
을 추가합니다.
자세한 내용은 NFC 개발자 가이드를 참고하세요.
블루투스
Android 2.3.3에서는 블루투스 비보안 소켓 연결에 대한 플랫폼 및 API 지원을 추가합니다. 이를 통해 애플리케이션은 인증을 위한 UI를 제공하지 않을 수 있는 간단한 기기와 통신할 수 있습니다. 자세한 내용은 createInsecureRfcommSocketToServiceRecord(java.util.UUID)
및 listenUsingInsecureRfcommWithServiceRecord(java.lang.String, java.util.UUID)
를 참고하세요.
그래픽
음성 인식
speech-recognition API에는 음성 검색 결과를 새로운 방식으로 관리할 수 있는 새로운 상수가 포함되어 있습니다. 새로운 상수는 음성 인식을 정상적으로 사용하는 데 필요하지는 않지만 이를 사용하여 애플리케이션에서 음성 검색 결과를 다른 방식으로 표시할 수 있습니다. 자세한 내용은 RecognizerResultsIntent
를 참고하세요.
API 수준
Android 2.3.3 플랫폼은 업데이트된 버전의 프레임워크 API를 제공합니다. Android 2.3.3 API에는 시스템 자체에 저장되는 정수 식별자(10)가 할당됩니다. 'API 수준'이라고 하는 이 식별자를 사용하면 시스템이 애플리케이션을 설치하기 전에 애플리케이션이 시스템과 호환되는지 올바르게 판단할 수 있습니다.
애플리케이션에서 Android 2.3.3에 도입된 API를 사용하려면 Android 2.3.3 SDK 플랫폼에 제공된 Android 라이브러리에 대해 애플리케이션을 컴파일해야 합니다. 필요에 따라 애플리케이션 매니페스트의 <uses-sdk>
요소에 android:minSdkVersion="10"
속성을 추가해야 할 수도 있습니다. 애플리케이션이 Android 2.3 이상에서만 실행되도록 설계된 경우 이 속성을 선언하면 이전 버전의 플랫폼에 애플리케이션이 설치되지 않습니다.
자세한 내용은 API 수준이란 무엇인가요?를 참고하세요.
이 페이지에 나와 있는 콘텐츠와 코드 샘플에는 콘텐츠 라이선스에서 설명하는 라이선스가 적용됩니다. 자바 및 OpenJDK는 Oracle 및 Oracle 계열사의 상표 또는 등록 상표입니다.
최종 업데이트: 2025-07-26(UTC)
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["필요한 정보가 없음","missingTheInformationINeed","thumb-down"],["너무 복잡함/단계 수가 너무 많음","tooComplicatedTooManySteps","thumb-down"],["오래됨","outOfDate","thumb-down"],["번역 문제","translationIssue","thumb-down"],["샘플/코드 문제","samplesCodeIssue","thumb-down"],["기타","otherDown","thumb-down"]],["최종 업데이트: 2025-07-26(UTC)"],[],[],null,["# Android 2.3.3 APIs\n\n*API Level:* **10**\n\nAndroid 2.3.3 ([GINGERBREAD_MR1](/reference/android/os/Build.VERSION_CODES#GINGERBREAD_MR1))\nis a small feature release that adds several improvements\nand APIs to the Android 2.3 platform.\n\nFor developers, the Android 2.3.3 platform is available as a\ndownloadable component for the Android SDK. The downloadable platform includes\nan Android library and system image, as well as a set of emulator skins and\nmore. To get started developing or testing against Android 2.3.3,\nuse the Android SDK Manager to download the platform into your SDK.\n\nAPI Overview\n------------\n\nThe sections below provide a technical overview of what's new for developers\nin 2.3.3, including new features and changes in the framework\nAPI since the previous version.\n\n### Near Field Communications (NFC)\n\nAndroid 2.3.3 provides improved and extended support for NFC, to allow\napplications to interact with more types of tags in new ways.\n\nA new, comprehensive set of APIs give applications read and write access\nto a wider range of standard tag technologies, including:\n\n- NFC-A (ISO 14443-3A)\n- NFC-B (ISO 14443-3B)\n- NFC-F (JIS 6319-4)\n- NFC-V (ISO 15693)\n- ISO-DEP (ISO 14443-4)\n- MIFARE Classic\n- MIFARE Ultralight\n- NFC Forum NDEF tags\n\nThe platform also provides a limited peer-to-peer communication protocol\nand API. Foreground Activities can use the API to register an NDEF\nmessage that will get pushed to other NFC devices when they connect.\n\nAdvanced tag dispatching now gives applications more control over how and\nwhen they are launched, when an NFC tag is discovered. Previously, the platform\nused a single-step intent dispatch to notify interested applications that a tag\nwas discovered. The platform now uses a four-step process that enables the\nforeground application to take control of a tag event before it is passed to any\nother applications (`android.nfc.NfcAdapter.enableForegroundDispatch()`).\n\nThe new dispatch process also lets apps listen for specific tag content and\ntag technologies, based on two new intent actions ---\n`android.nfc.action.NDEF_DISCOVERED` and\n`android.nfc.action.TECH_DISCOVERED`.\n\nThe NFC API is available in the [android.nfc](/reference/android/nfc/package-summary) and\n[android.nfc.tech](/reference/android/nfc/tech/package-summary) packages. The key classes are:\n\n- [NfcAdapter](/reference/android/nfc/NfcAdapter), which represents the NFC hardware on the device.\n- [NdefMessage](/reference/android/nfc/NdefMessage), which represents an NDEF data message, the standard format in which \"records\" carrying data are transmitted between devices and tags. An NDEF message certain many NDEF records of different types. Applications can receive these messages from [NDEF_DISCOVERED](/reference/android/nfc/NfcAdapter#ACTION_NDEF_DISCOVERED), [TECH_DISCOVERED](/reference/android/nfc/NfcAdapter#ACTION_TECH_DISCOVERED), or [TAG_DISCOVERED](/reference/android/nfc/NfcAdapter#ACTION_TAG_DISCOVERED) Intents.\n- [NdefRecord](/reference/android/nfc/NdefRecord), delivered in an [NdefMessage](/reference/android/nfc/NdefMessage), which describes the type of data being shared and carries the data itself.\n- [Tag](/reference/android/nfc/Tag), which represents a tag scanned by the device. Multiple types of tags are supported, based on the underlying tag technology.\n- [TagTechnology](/reference/android/nfc/tech/TagTechnology), an interface that gives applications access to tag properties and I/O operations based on the technologies present in the tag. For a full list of tag technologies supported in Android 2.3.3, see [android.nfc.tech](/reference/android/nfc/tech/package-summary).\n\nNFC communication relies on wireless technology in the device hardware, and\nis not present in all Android devices. Android devices that do not support\nNFC will return a null object when\n[getDefaultAdapter(Context)](/reference/android/nfc/NfcAdapter#getDefaultAdapter(android.content.Context)) is called, and\n`context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_NFC)`\nwill return `false`. The NFC API is always present, however, regardless of\nunderlying hardware support.\n\nTo use the NFC API, applications must request permission from the user by\ndeclaring `\u003cuses-permission\nandroid:name=\"android.permission.NFC\"\u003e` in their manifest files.\n\nAdditionally, developers can request filtering on Google Play, such that\ntheir applications are not discoverable to users whose devices do not support\nNFC. To request filtering, add\n`\u003cuses-feature android:name=\"android.hardware.nfc\"\nandroid:required=\"true\"\u003e` to the application's manifest.\n\nFor more information, read the\n[NFC](/guide/topics/connectivity/nfc) developer guide.\n\n### Bluetooth\n\nAndroid 2.3.3 adds platform and API support for Bluetooth nonsecure socket\nconnections. This lets applications communicate with simple devices that may not\noffer a UI for authentication. See\n[createInsecureRfcommSocketToServiceRecord(java.util.UUID)](/reference/android/bluetooth/BluetoothDevice#createInsecureRfcommSocketToServiceRecord(java.util.UUID)) and\n[listenUsingInsecureRfcommWithServiceRecord(java.lang.String, java.util.UUID)](/reference/android/bluetooth/BluetoothAdapter#listenUsingInsecureRfcommWithServiceRecord(java.lang.String, java.util.UUID))\nfor more information.\n\n### Graphics\n\n- A new [BitmapRegionDecoder](/reference/android/graphics/BitmapRegionDecoder) class lets applications decode a rectangle region from an image. The API is particularly useful when an original image is large and the application only need parts of the image.\n- A new [inPreferQualityOverSpeed](/reference/android/graphics/BitmapFactory.Options#inPreferQualityOverSpeed) field in [BitmapFactory.Options](/reference/android/graphics/BitmapFactory.Options) allows applications to use a more accurate but slightly slower IDCT method in JPEG decode. This in turn improves the quality of the reconstructed image.\n\n### Media framework\n\n- A new [MediaMetadataRetriever](/reference/android/media/MediaMetadataRetriever) class provides a unified interface for retrieving frame and metadata from an input media file.\n- [MediaRecorder.AudioEncoder](/reference/android/media/MediaRecorder.AudioEncoder) and [MediaRecorder.OutputFormat](/reference/android/media/MediaRecorder.OutputFormat) include new fields for specifying AMR Wideband and AAC formats.\n\n### Speech recognition\n\nThe speech-recognition API includes new constants to let you manage voice\nsearch results in new ways. Although the new constants are not needed for normal\nuse of speech recognition, you could use them to offer a different view of voice\nsearch results in your application. For information, see [RecognizerResultsIntent](/reference/android/speech/RecognizerResultsIntent).\n\nAPI Level\n---------\n\nThe Android 2.3.3 platform delivers an updated version of\nthe framework API. The Android 2.3.3 API\nis assigned an integer identifier ---\n**10** --- that is\nstored in the system itself. This identifier, called the \"API Level\", allows the\nsystem to correctly determine whether an application is compatible with\nthe system, prior to installing the application.\n\nTo use APIs introduced in Android 2.3.3 in your application,\nyou need compile the application against the Android library that is provided in\nthe Android 2.3.3 SDK platform. Depending on your needs, you might\nalso need to add an `android:minSdkVersion=\"10\"`\nattribute to the `\u003cuses-sdk\u003e` element in the application's\nmanifest. If your application is designed to run only on Android 2.3 and higher,\ndeclaring the attribute prevents the application from being installed on earlier\nversions of the platform.\n\nFor more information, read [What is API\nLevel?](/guide/topics/manifest/uses-sdk-element#ApiLevels)"]]