Android Studio 2.3.3


In this document

How to Install Android Phone Emulator – SDK Manager AVD Manager. In this tutorial, we are going to install SDK Manager and Android Phone Emulator with the Pie 9.0 Android Operating. I had 7GB free on the root partition, but Android Studio failed to update because it was dumping all updates in to /tmp, and 7GB was not enough! Turns out it's is a known problem with Android Studio updates. There's a JVM argument to tell Android Studio to use a different tmp location for downloads. Android Studio 2.3.3 (stable) Android Studio V2.2.3 X64. Android Studio 3.0 Canary 9. Android Studio 2.3.3 (stable) Selection File type icon File name.


  1. APIDifferences Report »

See Also

API Level:10

Android 2.3.3 is a small feature release that adds several improvementsand APIs to the Android 2.3 platform.

For developers, the Android 2.3.3 platform is available as adownloadable component for the Android SDK. The downloadable platform includes an Android library and system image, as well as a set of emulatorskins and more. The downloadable platformincludes no external libraries.

To get started developing or testing against Android2.3.3, use the Android SDK Manager todownload the platform into your SDK. For more information,see Adding SDKComponents. If you are new to Android, download the SDK Starter Packagefirst.

For a high-level introduction to Android 2.3, see the Platform Highlights.


The sections below provide notes about successive releases ofthe Android 2.3.3 platform component for the Android SDK, as denoted byrevision number. To determine what revision(s) of the Android2.3.3 platforms are installed in your SDK environment, refer tothe 'Installed Packages' listing in the Android SDK and AVD Manager.

Android 2.3.3, Revision 1(February 2011)

API Overview

The sections below provide a technical overview of what's new for developersin 2.3.3, including new features and changes in the frameworkAPI since the previous version.

Near Field Communications (NFC)

Android 2.3.3 provides improved and extended support for NFC, to allowapplications to interact with more types of tags in new ways.

A new, comprehensive set of APIs give applications read and write accessto a wider range of standard tag technologies, including:

  • 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 Forum NDEF tags

The platform also provides a limited peer-to-peer communication protocoland API. Foreground Activities can use the API to register an NDEFmessage that will get pushed to other NFC devices when they connect.

Advanced tag dispatching now gives applications more control over how andwhen they are launched, when an NFC tag is discovered. Previously, the platformused a single-step intent dispatch to notify interested applications that a tagwas discovered. The platform now uses a four-step process that enables theforeground application to take control of a tag event before it is passed to anyother applications (android.nfc.NfcAdapter.enableForegroundDispatch()).The new dispatch process also lets apps listen for specific tag content andtag technologies, based on two new intent actions —android.nfc.action.NDEF_DISCOVERED andandroid.nfc.action.TECH_DISCOVERED.

The NFC API is available in the android.nfc and packages. The key classes are:

  • NfcAdapter, which represents the NFC hardware on the device.
  • NdefMessage, which represents an NDEF data message,the standard format in which 'records' carrying data are transmitted betweendevices and tags. An NDEF message certain many NDEF records of different types.Applications can receive these messages from NDEF_DISCOVERED,TECH_DISCOVERED, orTAG_DISCOVERED Intents.
  • NdefRecord, delivered in anNdefMessage, which describes the type of data being sharedand carries the data itself.
  • Tag, which represents a tag scanned by the device.Multiple types of tags are supported, based on the underlying tagtechnology.
  • TagTechnology, an interface that gives applicationsaccess to tag properties and I/O operations based on the technologies presentin the tag. For a full list of tag technologies supported in Android 2.3.3,

NFC communication relies on wireless technology in the device hardware, andis not present in all Android devices. Android devices that do not supportNFC will return a null object whengetDefaultAdapter(Context) is called, andcontext.getPackageManager().hasSystemFeature(PackageManager.FEATURE_NFC)will return false. The NFC API is always present, however, regardless ofunderlying hardware support.

To use the NFC API, applications must request permission from the user bydeclaring <uses-permissionandroid:name='android.permission.NFC'> in their manifest files.

Additionally, developers can request filtering on Android Market, such thattheir applications are not discoverable to users whose devices do not supportNFC. To request filtering, add<uses-feature android:name='android.hardware.nfc'android:required='true'> to the application's manifest.

To look at sample code for NFC, seeNFCDemo app, filtering by tag technology, using foreground dispatch, and foreground NDEF push (P2P).


Android 2.3.3 adds platform and API support for Bluetooth nonsecure socketconnections. This lets applications communicate with simple devices that may notoffer a UI for authentication. See createInsecureRfcommSocketToServiceRecord(java.util.UUID) and listenUsingInsecureRfcommWithServiceRecord(java.lang.String, java.util.UUID)for more information.


  • A new BitmapRegionDecoder class lets applicationsdecode a rectangle region from an image. The API is particularly useful when anoriginal image is large and and the application only need parts of the image.
  • A new inPreferQualityOverSpeed field in BitmapFactory.Options allows applications to use a more accuratebut slightly slower IDCT method in JPEG decode. This in turn improves thequality of the reconstructed image.

Media framework

  • A new MediaMetadataRetriever class provides a unifiedinterface for retrieving frame and metadata from an input media file.
  • MediaRecorder.AudioEncoder and MediaRecorder.OutputFormat include new fields for specifying AMRWideband and AAC formats.

Speech recognition

Android Studio 2.3.3 Download For Windows

The speech-recognition API includes new constants to let you manage voicesearch results in new ways. Although the new constants are not needed for normaluse of speech recognition, you could use them to offer a different view of voicesearch results in your application. For information, see RecognizerResultsIntent.

API Level

The Android 2.3.3 platform delivers an updated version ofthe framework API. The Android 2.3.3 APIis assigned an integer identifier —10 — that isstored in the system itself. This identifier, called the 'API Level', allows thesystem to correctly determine whether an application is compatible withthe system, prior to installing the application.

To use APIs introduced in Android 2.3.3 in your application,you need compile the application against the Android library that is provided inthe Android 2.3.3 SDK platform. Depending on your needs, you might also need to add an android:minSdkVersion='10'attribute to the <uses-sdk> element in the application'smanifest. If your application is designed to run only on Android 2.3 and higher,declaring the attribute prevents the application from being installed on earlierversions of the platform.

For more information about how to use API Level, see the API Levels document.

Built-in Applications

The system image included in the downloadable platform provides thesebuilt-in applications:

  • Browser
  • Calculator
  • Camera
  • Clock
  • Contacts
  • Cusom Locale
  • Dev Tools
  • Downloads
  • Email
  • Gallery
  • IMEs for Japanese, Chinese, and Latin text input
  • Messaging
  • Music
  • Phone
  • Search
  • Settings
  • Spare Parts (developer app)
  • Speech Recorder


The system image included in the downloadable SDK platform provides a variety ofbuilt-in locales. In some cases, region-specific strings are available for thelocales. In other cases, a default version of the language is used. Thelanguages that are available in the Android 2.3.3 systemimage are listed below (with language_country/region localedescriptor).

  • Arabic, Egypt (ar_EG)
  • Arabic, Israel (ar_IL)
  • Bulgarian, Bulgaria (bg_BG)
  • Catalan, Spain (ca_ES)
  • Czech, Czech Republic (cs_CZ)
  • Danish, Denmark(da_DK)
  • German, Austria (de_AT)
  • German, Switzerland (de_CH)
  • German, Germany (de_DE)
  • German, Liechtenstein (de_LI)
  • Greek, Greece (el_GR)
  • English, Australia (en_AU)
  • English, Canada (en_CA)
  • English, Britain (en_GB)
  • English, Ireland (en_IE)
  • English, India (en_IN)
  • English, New Zealand (en_NZ)
  • English, Singapore(en_SG)
  • English, US (en_US)
  • English, Zimbabwe (en_ZA)
  • Spanish (es_ES)
  • Spanish, US (es_US)
  • Finnish, Finland (fi_FI)
  • French, Belgium (fr_BE)
  • French, Canada (fr_CA)
  • French, Switzerland (fr_CH)
  • French, France (fr_FR)
  • Hebrew, Israel (he_IL)
  • Hindi, India (hi_IN)
  • Croatian, Croatia (hr_HR)
  • Hungarian, Hungary (hu_HU)
  • Indonesian, Indonesia (id_ID)
  • Italian, Switzerland (it_CH)
  • Italian, Italy (it_IT)
  • Japanese (ja_JP)
  • Korean (ko_KR)
  • Lithuanian, Lithuania (lt_LT)
  • Latvian, Latvia (lv_LV)
  • Norwegian-Bokmol, Norway(nb_NO)
  • Dutch, Belgium (nl_BE)
  • Dutch, Netherlands (nl_NL)
  • Polish (pl_PL)
  • Portuguese, Brazil (pt_BR)
  • Portuguese, Portugal (pt_PT)
  • Romanian, Romania (ro_RO)
  • Russian (ru_RU)
  • Slovak, Slovakia (sk_SK)
  • Slovenian, Slovenia (sl_SI)
  • Serbian (sr_RS)
  • Swedish, Sweden (sv_SE)
  • Thai, Thailand (th_TH)
  • Tagalog, Philippines (tl_PH)
  • Turkish, Turkey (tr_TR)
  • Ukrainian, Ukraine (uk_UA)
  • Vietnamese, Vietnam (vi_VN)
  • Chinese, PRC (zh_CN)
  • Chinese, Taiwan (zh_TW)
  • Note: The Android platform may support morelocales than are included in the SDK system image. All of the supported localesare available in the Android Open SourceProject.

    Emulator Skins

    The downloadable platform includes a set of emulator skins that you can usefor modeling your application in different screen sizes and resolutions. Theemulator skins are:

    • QVGA (240x320, low density, small screen)
    • WQVGA400 (240x400, low density, normal screen)
    • WQVGA432 (240x432, low density, normal screen)
    • HVGA (320x480, medium density, normal screen)
    • WVGA800 (480x800, high density, normal screen)
    • WVGA854 (480x854 high density, normal screen)

    For more information about how to develop an application that displaysand functions properly on all Android-powered devices, see Supporting MultipleScreens.

    November 6, 2019 update:
    • There's a new open source Cardboard SDK that offers a streamlined API, improved device compatibility, and built-in viewer profile QR code scanning. We recommend that all developers actively building for Google Cardboard migrate to the new Cardboard SDK: iOS, Android NDK, Unity XR Plugin (SDK)
    October 15, 2019 update:
    • The Daydream View VR headset is no longer available for purchase. However, you can continue to use the existing Google VR SDK to update and distribute your apps to the Google Play Store, and make them available to users in the Daydream app.

    Use the Google VR SDK to build apps for Daydream and Cardboard. This guideshows you how to set up Android Studio for Google VR development and try out asample app.

    Set up your development environment

    Hardware requirements:

    • Daydream: You'll need a Daydream-ready phoneand a Daydream View.

    • Cardboard: You'll need an Android device running Android 4.4 'KitKat'(API level 19) or higher and a Cardboard viewer.

    Software requirements:

    • Android Studioversion 2.3.3 or higher.

    • Android SDK 7.1.1 'Nougat' (API level 25) or higher.
      In Android Studio, go toPreferences > Appearance and Behavior > System Settings >Android SDK (includes samples) to review or update installed SDKs.

    • The latest Google VR SDK for Android.

    Open the Google VR SDK project in Android Studio

    Android Studio 2.3.3 Download 64 Bit

    1. Extract the downloaded Google VR SDK into a convenient location.

    2. Open Android Studio and select Open an existing Android Studio project.
      Select the directory where you extracted the Google VR SDK.

    3. In the Project window, review the sample gradle modules ingvr-android-sdk > samples:

      sdk-hellovrVR sample app in which you look for and collect objects.
      sdk-controllerclientSample showing how to receive and handle Daydream controller input.
      sdk-simplepanowidgetWidget to load a panoramic image from disk. See VR View guide.
      sdk-simplevideowidgetWidget to render a 360 degree video using VRVideoView. See VR View guide.
      sdk-video360Widget to render a 360 degree video. See video360 guide.
      sdk-videoplayerSample activity for video playback using the Asynchronous Reprojection Video Surface API.
      See Using video viewports in the Google VR NDK guide for more details.

    Prepare your device

    Android Studio 2.3.3 Download

    Build and run the sample app

    Android Studio 2.3 3 Free Download For Mac

    1. Connect your phone to your machine using a USB cable.

    2. In Android Studio, select Run > Run.. and select thesamples-sdk-hellovr target.
      Android Studio compiles and runs the application on your phone.

    3. Put your phone into your viewer and use the app.

      • Look around for the large cube.
      • Daydream: Point the controller at the cube and press the touchpadbutton to collect it.
        Cardboard: Look at the cube and press the Cardboard button tocollect it.
      • The cube moves to a new location after a button press.
    The sample app shows the following core features of the Google VR SDK: Android Studio 2.3.3
    Stereo renderingApp views are rendered in stereo to create a 3D effect.
    Spatial audioSounds come from different areas of the VR world, increasing its realism.
    Head movement trackingUsers can move their heads to look around a VR world. Views update in response to head movement.
    User inputUsers can interact with the app using a Daydream controller or Cardboard button.

    Using Google VR in your own projects

    To use the Google VR SDK or NDK in your own projects, set up Google VRdependencies.If you are using ProGuardin your app, add rules to ensure that it does not obfuscate any SDK or NDK code.

    Setting up Google VR dependencies

    1. Configure your project level build.gradle file:

      • Make sure that the default jcenter() repository location is declared.
      • Declare an Android Gradle plugin dependency:
        Google VR SDK projects: Use gradle:2.3.3 or higher.
        Google VR NDK projects: Use gradle-experimental:0.9.3 or higher. Download remix os installation tool.

    2. Add Google VR SDK library dependencies in your module level build.gradle files. You can see available libraries and their versions in gvr-android-sdk > libraries.
      As an example, review the dependencies declared for the sample app in gvr-android-sdk > samples > sdk-hellovr > build.gradle.

      For more information, see Add Build Dependencies in the Android Studio guide.

    Configure ProGuard

    If you are using ProGuard to minimize your app's APK file,make sure that ProGuard does not obfuscate any Google VR SDK or NDK code.This makes it easier to debug stack traces in release builds.

    Add the Google VR ProGuard proguard-gvr.txtrules to your module level build.gradle file:

    Next steps

    Android Studio 2.3.3

    To learn more about the Google VR SDK, see the following resources.

    Android Studio 2.3 3 Free Download

    • Learn about Google VR design and development principles in Daydream elements.
    • Learn how to enable 6DoF tracking in your app.
    • Daydream: Learn about implementing Daydream controller user interactionsin your app:
      • Review the controller library in gvr-android-sdk > libraries >sdk-controller.
      • See also the controller library API reference.