Loading docs/html/sdk/preview/features.jd +5 −183 Original line number Diff line number Diff line page.title=Introduction to Honeycomb @jd:body <p>Welcome to the Honeycomb preview SDK. Honeycomb is the next major release of the Android platform and is optimized for tablet devices. This document provides an introduction to the new platform features and APIs available in Honeycomb.</p> <h2>Fragments</h2> <div class="figure" style="width:400px"> <img src="{@docRoot}images/preview_hc/fragments_layout.png" alt="" /> <p class="img-caption"><strong>Fragment Layout.</strong> An activity with two fragments: one with a list view, on the left, and one that displays selected content on the right. This demo is available in the samples package.</p> </div> <p>A new framework component that allows you to separate distinct elements of an activity into self-contained modules that define their own UI and lifecycle—defining what may be considered "sub-activities".</p> <ul> <li>Multiple fragments can be combined in a single activity to build a multi-pane UI in which each pane manages its own lifecycle and user inputs</li> <li>Fragments are self-contained and can be reused in multiple activities</li> <li>Fragments can be added, removed, replaced and animated inside the activity</li> <li>Fragment can be added to a back stack managed by the activity, preserving the state of fragments as they are changed and allowing the user to navigate backward through the different states</li> <li>By <a href="{@docRoot}guide/topics/resources/providing-resources.html#AlternativeResources">providing alternative resources</a>, you can mix and match fragments, based on the screen size and orientation</li> <li>Fragments have direct access to their container activity and can contribute items to the activity's Options Menu</li> </ul> <p>For more information, see the <a href="{@docRoot}guide/topics/fragments/index.html">Fragments</a> developer guide.</p> <h2>Action Bar</h2> <p>A replacement for the traditional title bar, which provides users quick access to global actions and different navigation modes.</p> <ul> <li>Provides quick access to items from the Options Menu ("action items") and interactive widgets ("action views")</li> <li>Includes the application logo in the left corner, which can perform actions when tapped and can be replaced with a custom logo</li> <li>Provides breadcumbs for navigating backward through fragments</li> <li>Offers built in navigation modes, including tabs and a drop-down list</li> <li>Can be customized with themes and custom backgrounds</li> <li>And more</li> </ul> <img src="{@docRoot}images/preview_hc/actionbar.png" alt="" /> <p class="img-caption"><strong>Action Bar.</strong> An action bar with a custom logo, tabs, and Options Menu. This demo is available in the samples package.</p> <p>For more information, see the <a href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a> developer guide.</p> <h2>System Clipboard</h2> <p>Applications can copy and paste data (beyond mere text) to and from the system-wide clipboard.</p> <ul> <li>Clipped data can be plain text, a URI, or an intent</li> <li>The new {@link android.content.ClipData} class represents a complex data type for the clipboard</li> <li>The new {@link android.content.ClipboardManager} class allows apps to add {@link android.content.ClipData} to the clipboard (copy) and read {@link android.content.ClipData} from the clipboard (paste)</li> <li>The {@link android.content.ContentProvider} class has been extended to generate byte streams based on data types added to the clipboard and point to data hosted in a content provider</li> </ul> <p>See {@link android.content.ClipData} and {@link android.content.ClipboardManager} for more information. You can also see an example implementation of copy/paste in an updated version of the NotePad application (available in the samples package).</p> <h2>Drag and Drop</h2> <p>New APIs to perform drag and drop operations, leveraging the system clipboard APIs to transport data.</p> <ul> <li>Any {@link android.view.View} can be used for a drag and drop event and a thumbnail of that view is generated and used during the drag</li> <li>{@link android.view.ViewGroup}s that can receive the object are notified during hover and drop events</li> <li>The new {@link android.view.DragEvent} class describes a drag event relating to a view, including the item's current coordinates, the type of action (whether the drag has entered the view, exited the view, started, dropped, etc.), and provides access to the {@link android.content.ClipData} being carried</li> <li>The new {@link android.view.View.OnDragListener} interface defines a callback that views can register in order to be notified of drag events being dispatched to the view; view's can register a drag listener with {@link android.view.View#setOnDragListener setOnDragListener()}</li> </ul> <p>See {@link android.view.DragEvent} and {@link android.view.View.OnDragListener} for more information.</p> <h2>New Animations</h2> <p>An all new animation framework.</p> <ul> <li>A flexible animation system that allows you to animate the properties of any object (View, Drawable, Fragment, Object, anything)</li> </ul> <p>See the {@link android.animation} package.</p> <h2>Extended App Widgets</h2> <p>App widgets can now be more interactive and accept finger gestures.</p> <ul> <li>The complete list of supported widgets for an app widget is now: {@link android.widget.AnalogClock}, {@link android.widget.Button}, {@link android.widget.Chronometer}, {@link android.widget.ImageButton}, {@link android.widget.ImageView}, {@link android.widget.ProgressBar}, {@link android.widget.TextView}, {@link android.widget.ViewFlipper}, {@link android.widget.AdapterViewFlipper}, {@link android.widget.StackView}, {@link android.widget.ListView}, and {@link android.widget.GridView}.</li> </ul> <h2>Extended Status Bar Notifications</h2> <p>The {@link android.app.Notification} class has been extended to support more content-rich status bar notifications when on xlarge screens.</p> <ul> <li>New {@link android.app.Notification.Builder} class helps you easily create new {@link android.app.Notification} objects</li> <li>Support for a title in the status bar ticker (in addition to the normal ticker text)</li> <li>Support for a large "sender" icon in the notification—a second icon intended for social applications to show the contact photo of the person who is the source of the notification</li> <li>Support for custom layouts in the status bar ticker</li> <li>Support for buttons in the expanded notification that deliver custom intents (such as to control ongoing music in the background)</li> </ul> <h2>Plus Android 2.3</h2> <p>Honeycomb includes all platform changes introduced for Android 2.3.</p> <p>To take full advantage of Honeycomb, you should also be aware of the new features and APIs introduced for Android 2.3. To learn more, read the <a href="{@docRoot}sdk/android-2.3.html">Android 2.3 release notes</a>.</p> <!-- <div class="special"> <p>To set up your preview SDK and start developing apps for Honeycomb, see the <a href="{@docRoot}sdk/preview/installing.html">Getting Started</a> guide.</p> </div> --> <script type="text/javascript"> document.location=toRoot+"sdk/android-3.0.html" </script> <p>You should have already been redirected by your browser. Please go to the <a href="{@docRoot}sdk/android-3.0.html">Android 3.0 Platform</a>.</p> No newline at end of file docs/html/sdk/preview/index.jd +1 −182 Original line number Diff line number Diff line page.title=Android 3.0 Preview SDK sdk.redirect=true @jd:body <p>Android 3.0 is the next major release of the Android platform and is optimized for tablet devices. We're offering a Preview SDK so you can get a head-start developing applications for it or simply optimize your existing application for upcoming tablets.</p> <h3>What is the Preview SDK?</h3> <p>The Android 3.0 Preview SDK is an early look at the upcoming version of Android 3.0, for developers only. </p> <p>The Preview SDK includes:</p> <ul> <li>An early Android 3.0 system image for use in the Android emulator</li> <li>An Android 3.0 library with non-final APIs</li> <li>A new WXGA emulator skin for an extra large Android Virtual Device</li> <li>New documentation for Android 3.0, including a complete API reference, new developer guides, and an API differences report between Android 3.0 and 2.3.</li> </ul> <div class="note"> <p><strong>Be aware that:</strong></p> <ul> <li>The APIs in the Preview SDK are <strong>not final</strong>. Some APIs may change in behavior or availability when the final SDK is made available.</li> <li>You <strong>cannot</strong> publish an application that's built against the Preview SDK—you can only run an application built against the Preview SDK on the Android emulator.</li> <li>The documentation on <a href="http://developer.android.com">developer.android.com</a> does <strong>not</strong> include the Android 3.0 documentation—to read the API reference and developer guides for Android 3.0, you must install the Android 3.0 Preview documentation from the AVD and SDK Manager.</li> </ul> </div> <p><b>About emulator performance</b></p> <p>Because the Android emulator must simulate the ARM instruction set architecture on your computer and the WXGA screen is significantly larger than what the emulator normally handles, emulator performance is much slower than usual. </p> <p>In particular, initializing the emulator can be slow and can take several minutes, depending on your hardware. When the emulator is booting there is limited user feedback, so please be patient and continue waiting until you see the home screen appear. </p> <p>We're working hard to resolve the performance issues in the emulator and it will improve in future releases. In the meantime, we wanted to give developers access to new APIs and an basic test environment as early as possible. </p> <p>Keeping in mind that performance on the emulator does not reflect the speed or performance of apps on actual devices running Android 3.0, developing and testing on the emulator is still an important tool in evaluating your application's appearance and functionality on the new platform. </p> <h3>What can I do with the preview?</h3> <p>The Preview SDK is intended for testing existing applications on the new platform and developing new applications with new Android 3.0 APIs.</p> <p>If you have an existing Android application, you don't <em>have to</em> do anything. Android applications are always forward-compatible. If your application is a good citizen of the Android APIs, your app should work fine on devices running Android 3.0 without any additional work. However, in order to ensure proper performance and provide users a better experience when running your application on an Android 3.0 tablet, we recommend that you perform the following:</p> <ol> <li><b>Test your application on Android 3.0</b> <p>Simply install the Android 3.0 preview in your Android SDK, create an AVD using the Android 3.0 system image, install your application, and run some tests.</p> <p>As mentioned above, your application should perform as expected. You might, however, discover that your activity layouts are less than ideal on a large screen or some other aspects of your application don't behave the way you expect.</p> </li> <li><b>Inherit the new "Holographic" theme</b> <p>Android 3.0 offers an updated set of UI widgets that are redesigned for use on larger screens such as tablets and incorporate the new holographic theme. Your existing application can inherit the new design simply by setting the <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">{@code <uses-sdk>}</a> element's {@code android:targetSdkVersion} attribute to {@code "Honeycomb"}.</p> <p>If you do not update the {@code android:targetSdkVersion} attribute and the {@code android:minSdkVersion} is set to "9" or lower, then your application uses the widget designs from Android 2.3 and does <em>not</em> inherit the holographic theme.</p> <p>In order for your application to match the rest of the system UI, we highly recommend you make this change to inherit the new widget styles and system theme. However, beware that doing so might conflict with color or text designs you applied to your application based on the previous system theme, so you should be sure to inspect your application UI when using the holographic theme.</p> </li> <li><b>Provide alternative layouts for extra large screens</b> <p>As discussed in the guide to <a href="{@docRoot}guide/practices/screens_support.html">Supporting Multiple Screens</a>, Android 2.3 and above support the <code>xlarge</code> resource qualifier, which you should use to supply alternative layouts for extra large screens.</p> <p>By providing alternative layouts for some of your activities when running on extra large screens, you can improve the user experience of your application on a tablet without using any new APIs.</p> <p>For example, here are some things to consider when creating a new layout for tables:</p> <ul> <li>Landscape layout: The "normal" orientation for tablets is usually landscape (wide), so you should be sure that your activities offer an appropriate layout for such a wide viewing area.</li> <li>Button position: Consider whether the position of the most common buttons in your UI are easily accessible while holding a tablet with two hands.</li> </ul> <p class="note"><strong>Note:</strong> You can add alternative resources for <em>xlarge</em> screens without changing your {@code minSdkVersion}. For example, if you add alternative layouts in <code>res/layout-xlarge/</code> and your application is compatible with older versions, such as Android 1.5—which doesn't support <em>xlarge</em> screens—this layout directory is simply ignored by those devices.</p> </li> </ol> <p>Otherwise, if you want to develop a new application or upgrade your existing application to use APIs added in Android 3.0, we encourage you to get started by developing against the Android 3.0 preview platform. You can get started the same way as you would for any other version of Android.</p> <p>To get started—whether testing an existing application or creating a new one—follow the procedure in the following section to install the Preview SDK.</p> <h3 id="Setup">How do I get it?</h3> <p>To get the Preview SDK, you can download it using the Android SDK and AVD Manager.</p> <p>If you're new to Android development, start by <a href="{@docRoot}sdk/index.html">downloading the Android SDK starter package</a>.</p> <p><a href="{@docRoot}sdk/adding-components.html#launching">Launch the Android SDK and AVD Manager</a> and install the following:</p> <ul> <li>SDK Platform Android Honeycomb Preview</li> <li>Android SDK Tools, revision 9</li> <li>Android SDK Platform-tools, revision 2</li> <li>Documentation for Android 'Honeycomb' Preview</li> <li>Samples for SDK API Honeycomb Preview</li> </ul> <p class="note"><strong>Note:</strong> Be sure to install the documentation component for the Honeycomb Preview SDK. The API reference for the Android 3.0 API is <strong>not</strong> available online.</p> <p>Once you have installed these components, open your SDK directory and navigate to {@code docs/sdk/} and open {@code index.html} in your browser. </p> <h3 id="Issues">Known issues</h3> <p>The following known issues occur for Android 3.0 AVDs that are loaded in the emulator:</p> <ul> <li>The emulator displays a rotated portrait screen while in landscape orientation. To view the screen correctly in landscape orientation, turn off the auto-rotate setting in <strong>Settings > Screen > Auto-rotate screen</strong>. Then use Ctrl-F11 to rotate the emulator.</li> <li>You cannot take screenshots of an emulator screen. The Device Screen Capture window displays <strong>Screen not available</strong>.</li> <li>GPS emulation is currently not supported.</li> <li>When rotating the emulator screen by pressing Ctrl-F11, the screen turns green momentarily, then displays the normal interface.</li> <li>The Dev Tools application sometimes crashes when trying to use the Package Browser feature.</li> </ul> <div class="special"> <p>For an overview of new features in Android 3.0, read the <a href="{@docRoot}sdk/android-3.0-highlights.html">Platform Highlights</a>.</p> </div> docs/html/sdk/preview/installing.jd +5 −59 Original line number Diff line number Diff line page.title=Getting Started with Honeycomb @jd:body <p>First, you need to set up your development environment with the new SDK Tools and preview platform:</p> <script type="text/javascript"> document.location=toRoot+"sdk/installing.html" </script> <ol> <li>Unpack the SDK Tools r8 package you've received. <p>If you have an existing Android SDK directory, simply replace your existing {@code tools/} directory with the one from the new package and add the {@code platform-tools/} directory along side it (at the root of the SDK directory).</p></li> <li>Unpack the platform package ({@code android-Froyo}) and place it in your SDK's {@code platforms/} directory.</li> <li>If you're using Eclipse, also update your Eclipse plugin using the provided archive file. <ol> <li>Select <strong>Help > Install new software</strong>.</li> <li>Click <strong>Add</strong>.</li> <li>Click <strong>Archive</strong>.</li> <li>Locate and select the archive file. Click <strong>OK</strong>. <p>Developer Tools now appear in the Available Software window and you can proceed to install the plugin.</p> </li> </ol> </li> </ol> <p class="note"><strong>Note:</strong> Beginning with SDK Tools r8 (the version you've received), the {@code adb} tool is now located in the {@code <sdk>/platform-tools/} directory (instead of in {@code <sdk>/tools/}). Be sure to update your {@code PATH} environment variable and any build/debugging scripts you have.</p> <h2 id="Setup">Set Up Your AVD and Application</h2> <p>With your SDK now set up, follow these steps to start developing an application for Honeycomb.</p> <ol> <li>Create a new AVD targeted to "Android Froyo (Preview)" and with a custom skin resolution of 1280 x 800.</li> <li>Set the build target of your application to "Android Froyo (Preview)".</li> <li>Set your manifest file's {@code <uses-sdk>} element to use {@code android:minSdkVersion="Froyo"}. For example: <pre> <manifest> <uses-sdk android:minSdkVersion="Froyo" /> ... </manifest> </pre> <p>"Froyo" is a provisional API Level for the Honeycomb release, used only during the preview period. When the APIs are finalized and the SDK is released publicly, you must update this with the appropriate API Level integer.</p> <p class="note"><strong>Note:</strong> By providing your {@code <uses-sdk>} element in the manifest file <em>before</em> the {@code <application>} element, your application will automatically apply the new Holographic theme.</p> </li> </ol> <p>You should have already been redirected by your browser. Please go to <a href="{@docRoot}sdk/installing.html">Installing the SDK</a>.</p> No newline at end of file docs/html/sdk/preview/requirements.jd +5 −2 Original line number Diff line number Diff line sdk.redirect=true @jd:body <script type="text/javascript"> document.location=toRoot+"sdk/requirements.html" </script> <p>You should have already been redirected by your browser. Please go to the <a href="{@docRoot}sdk/requirements.html">SDK System Requirements</a>.</p> No newline at end of file docs/html/sdk/preview/upgrading.jd +5 −2 Original line number Diff line number Diff line sdk.redirect=true @jd:body <script type="text/javascript"> document.location=toRoot+"sdk/index.html" </script> <p>You should have already been redirected by your browser. Please go to <a href="{@docRoot}sdk/index.html">the Android SDK</a>.</p> No newline at end of file Loading
docs/html/sdk/preview/features.jd +5 −183 Original line number Diff line number Diff line page.title=Introduction to Honeycomb @jd:body <p>Welcome to the Honeycomb preview SDK. Honeycomb is the next major release of the Android platform and is optimized for tablet devices. This document provides an introduction to the new platform features and APIs available in Honeycomb.</p> <h2>Fragments</h2> <div class="figure" style="width:400px"> <img src="{@docRoot}images/preview_hc/fragments_layout.png" alt="" /> <p class="img-caption"><strong>Fragment Layout.</strong> An activity with two fragments: one with a list view, on the left, and one that displays selected content on the right. This demo is available in the samples package.</p> </div> <p>A new framework component that allows you to separate distinct elements of an activity into self-contained modules that define their own UI and lifecycle—defining what may be considered "sub-activities".</p> <ul> <li>Multiple fragments can be combined in a single activity to build a multi-pane UI in which each pane manages its own lifecycle and user inputs</li> <li>Fragments are self-contained and can be reused in multiple activities</li> <li>Fragments can be added, removed, replaced and animated inside the activity</li> <li>Fragment can be added to a back stack managed by the activity, preserving the state of fragments as they are changed and allowing the user to navigate backward through the different states</li> <li>By <a href="{@docRoot}guide/topics/resources/providing-resources.html#AlternativeResources">providing alternative resources</a>, you can mix and match fragments, based on the screen size and orientation</li> <li>Fragments have direct access to their container activity and can contribute items to the activity's Options Menu</li> </ul> <p>For more information, see the <a href="{@docRoot}guide/topics/fragments/index.html">Fragments</a> developer guide.</p> <h2>Action Bar</h2> <p>A replacement for the traditional title bar, which provides users quick access to global actions and different navigation modes.</p> <ul> <li>Provides quick access to items from the Options Menu ("action items") and interactive widgets ("action views")</li> <li>Includes the application logo in the left corner, which can perform actions when tapped and can be replaced with a custom logo</li> <li>Provides breadcumbs for navigating backward through fragments</li> <li>Offers built in navigation modes, including tabs and a drop-down list</li> <li>Can be customized with themes and custom backgrounds</li> <li>And more</li> </ul> <img src="{@docRoot}images/preview_hc/actionbar.png" alt="" /> <p class="img-caption"><strong>Action Bar.</strong> An action bar with a custom logo, tabs, and Options Menu. This demo is available in the samples package.</p> <p>For more information, see the <a href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a> developer guide.</p> <h2>System Clipboard</h2> <p>Applications can copy and paste data (beyond mere text) to and from the system-wide clipboard.</p> <ul> <li>Clipped data can be plain text, a URI, or an intent</li> <li>The new {@link android.content.ClipData} class represents a complex data type for the clipboard</li> <li>The new {@link android.content.ClipboardManager} class allows apps to add {@link android.content.ClipData} to the clipboard (copy) and read {@link android.content.ClipData} from the clipboard (paste)</li> <li>The {@link android.content.ContentProvider} class has been extended to generate byte streams based on data types added to the clipboard and point to data hosted in a content provider</li> </ul> <p>See {@link android.content.ClipData} and {@link android.content.ClipboardManager} for more information. You can also see an example implementation of copy/paste in an updated version of the NotePad application (available in the samples package).</p> <h2>Drag and Drop</h2> <p>New APIs to perform drag and drop operations, leveraging the system clipboard APIs to transport data.</p> <ul> <li>Any {@link android.view.View} can be used for a drag and drop event and a thumbnail of that view is generated and used during the drag</li> <li>{@link android.view.ViewGroup}s that can receive the object are notified during hover and drop events</li> <li>The new {@link android.view.DragEvent} class describes a drag event relating to a view, including the item's current coordinates, the type of action (whether the drag has entered the view, exited the view, started, dropped, etc.), and provides access to the {@link android.content.ClipData} being carried</li> <li>The new {@link android.view.View.OnDragListener} interface defines a callback that views can register in order to be notified of drag events being dispatched to the view; view's can register a drag listener with {@link android.view.View#setOnDragListener setOnDragListener()}</li> </ul> <p>See {@link android.view.DragEvent} and {@link android.view.View.OnDragListener} for more information.</p> <h2>New Animations</h2> <p>An all new animation framework.</p> <ul> <li>A flexible animation system that allows you to animate the properties of any object (View, Drawable, Fragment, Object, anything)</li> </ul> <p>See the {@link android.animation} package.</p> <h2>Extended App Widgets</h2> <p>App widgets can now be more interactive and accept finger gestures.</p> <ul> <li>The complete list of supported widgets for an app widget is now: {@link android.widget.AnalogClock}, {@link android.widget.Button}, {@link android.widget.Chronometer}, {@link android.widget.ImageButton}, {@link android.widget.ImageView}, {@link android.widget.ProgressBar}, {@link android.widget.TextView}, {@link android.widget.ViewFlipper}, {@link android.widget.AdapterViewFlipper}, {@link android.widget.StackView}, {@link android.widget.ListView}, and {@link android.widget.GridView}.</li> </ul> <h2>Extended Status Bar Notifications</h2> <p>The {@link android.app.Notification} class has been extended to support more content-rich status bar notifications when on xlarge screens.</p> <ul> <li>New {@link android.app.Notification.Builder} class helps you easily create new {@link android.app.Notification} objects</li> <li>Support for a title in the status bar ticker (in addition to the normal ticker text)</li> <li>Support for a large "sender" icon in the notification—a second icon intended for social applications to show the contact photo of the person who is the source of the notification</li> <li>Support for custom layouts in the status bar ticker</li> <li>Support for buttons in the expanded notification that deliver custom intents (such as to control ongoing music in the background)</li> </ul> <h2>Plus Android 2.3</h2> <p>Honeycomb includes all platform changes introduced for Android 2.3.</p> <p>To take full advantage of Honeycomb, you should also be aware of the new features and APIs introduced for Android 2.3. To learn more, read the <a href="{@docRoot}sdk/android-2.3.html">Android 2.3 release notes</a>.</p> <!-- <div class="special"> <p>To set up your preview SDK and start developing apps for Honeycomb, see the <a href="{@docRoot}sdk/preview/installing.html">Getting Started</a> guide.</p> </div> --> <script type="text/javascript"> document.location=toRoot+"sdk/android-3.0.html" </script> <p>You should have already been redirected by your browser. Please go to the <a href="{@docRoot}sdk/android-3.0.html">Android 3.0 Platform</a>.</p> No newline at end of file
docs/html/sdk/preview/index.jd +1 −182 Original line number Diff line number Diff line page.title=Android 3.0 Preview SDK sdk.redirect=true @jd:body <p>Android 3.0 is the next major release of the Android platform and is optimized for tablet devices. We're offering a Preview SDK so you can get a head-start developing applications for it or simply optimize your existing application for upcoming tablets.</p> <h3>What is the Preview SDK?</h3> <p>The Android 3.0 Preview SDK is an early look at the upcoming version of Android 3.0, for developers only. </p> <p>The Preview SDK includes:</p> <ul> <li>An early Android 3.0 system image for use in the Android emulator</li> <li>An Android 3.0 library with non-final APIs</li> <li>A new WXGA emulator skin for an extra large Android Virtual Device</li> <li>New documentation for Android 3.0, including a complete API reference, new developer guides, and an API differences report between Android 3.0 and 2.3.</li> </ul> <div class="note"> <p><strong>Be aware that:</strong></p> <ul> <li>The APIs in the Preview SDK are <strong>not final</strong>. Some APIs may change in behavior or availability when the final SDK is made available.</li> <li>You <strong>cannot</strong> publish an application that's built against the Preview SDK—you can only run an application built against the Preview SDK on the Android emulator.</li> <li>The documentation on <a href="http://developer.android.com">developer.android.com</a> does <strong>not</strong> include the Android 3.0 documentation—to read the API reference and developer guides for Android 3.0, you must install the Android 3.0 Preview documentation from the AVD and SDK Manager.</li> </ul> </div> <p><b>About emulator performance</b></p> <p>Because the Android emulator must simulate the ARM instruction set architecture on your computer and the WXGA screen is significantly larger than what the emulator normally handles, emulator performance is much slower than usual. </p> <p>In particular, initializing the emulator can be slow and can take several minutes, depending on your hardware. When the emulator is booting there is limited user feedback, so please be patient and continue waiting until you see the home screen appear. </p> <p>We're working hard to resolve the performance issues in the emulator and it will improve in future releases. In the meantime, we wanted to give developers access to new APIs and an basic test environment as early as possible. </p> <p>Keeping in mind that performance on the emulator does not reflect the speed or performance of apps on actual devices running Android 3.0, developing and testing on the emulator is still an important tool in evaluating your application's appearance and functionality on the new platform. </p> <h3>What can I do with the preview?</h3> <p>The Preview SDK is intended for testing existing applications on the new platform and developing new applications with new Android 3.0 APIs.</p> <p>If you have an existing Android application, you don't <em>have to</em> do anything. Android applications are always forward-compatible. If your application is a good citizen of the Android APIs, your app should work fine on devices running Android 3.0 without any additional work. However, in order to ensure proper performance and provide users a better experience when running your application on an Android 3.0 tablet, we recommend that you perform the following:</p> <ol> <li><b>Test your application on Android 3.0</b> <p>Simply install the Android 3.0 preview in your Android SDK, create an AVD using the Android 3.0 system image, install your application, and run some tests.</p> <p>As mentioned above, your application should perform as expected. You might, however, discover that your activity layouts are less than ideal on a large screen or some other aspects of your application don't behave the way you expect.</p> </li> <li><b>Inherit the new "Holographic" theme</b> <p>Android 3.0 offers an updated set of UI widgets that are redesigned for use on larger screens such as tablets and incorporate the new holographic theme. Your existing application can inherit the new design simply by setting the <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">{@code <uses-sdk>}</a> element's {@code android:targetSdkVersion} attribute to {@code "Honeycomb"}.</p> <p>If you do not update the {@code android:targetSdkVersion} attribute and the {@code android:minSdkVersion} is set to "9" or lower, then your application uses the widget designs from Android 2.3 and does <em>not</em> inherit the holographic theme.</p> <p>In order for your application to match the rest of the system UI, we highly recommend you make this change to inherit the new widget styles and system theme. However, beware that doing so might conflict with color or text designs you applied to your application based on the previous system theme, so you should be sure to inspect your application UI when using the holographic theme.</p> </li> <li><b>Provide alternative layouts for extra large screens</b> <p>As discussed in the guide to <a href="{@docRoot}guide/practices/screens_support.html">Supporting Multiple Screens</a>, Android 2.3 and above support the <code>xlarge</code> resource qualifier, which you should use to supply alternative layouts for extra large screens.</p> <p>By providing alternative layouts for some of your activities when running on extra large screens, you can improve the user experience of your application on a tablet without using any new APIs.</p> <p>For example, here are some things to consider when creating a new layout for tables:</p> <ul> <li>Landscape layout: The "normal" orientation for tablets is usually landscape (wide), so you should be sure that your activities offer an appropriate layout for such a wide viewing area.</li> <li>Button position: Consider whether the position of the most common buttons in your UI are easily accessible while holding a tablet with two hands.</li> </ul> <p class="note"><strong>Note:</strong> You can add alternative resources for <em>xlarge</em> screens without changing your {@code minSdkVersion}. For example, if you add alternative layouts in <code>res/layout-xlarge/</code> and your application is compatible with older versions, such as Android 1.5—which doesn't support <em>xlarge</em> screens—this layout directory is simply ignored by those devices.</p> </li> </ol> <p>Otherwise, if you want to develop a new application or upgrade your existing application to use APIs added in Android 3.0, we encourage you to get started by developing against the Android 3.0 preview platform. You can get started the same way as you would for any other version of Android.</p> <p>To get started—whether testing an existing application or creating a new one—follow the procedure in the following section to install the Preview SDK.</p> <h3 id="Setup">How do I get it?</h3> <p>To get the Preview SDK, you can download it using the Android SDK and AVD Manager.</p> <p>If you're new to Android development, start by <a href="{@docRoot}sdk/index.html">downloading the Android SDK starter package</a>.</p> <p><a href="{@docRoot}sdk/adding-components.html#launching">Launch the Android SDK and AVD Manager</a> and install the following:</p> <ul> <li>SDK Platform Android Honeycomb Preview</li> <li>Android SDK Tools, revision 9</li> <li>Android SDK Platform-tools, revision 2</li> <li>Documentation for Android 'Honeycomb' Preview</li> <li>Samples for SDK API Honeycomb Preview</li> </ul> <p class="note"><strong>Note:</strong> Be sure to install the documentation component for the Honeycomb Preview SDK. The API reference for the Android 3.0 API is <strong>not</strong> available online.</p> <p>Once you have installed these components, open your SDK directory and navigate to {@code docs/sdk/} and open {@code index.html} in your browser. </p> <h3 id="Issues">Known issues</h3> <p>The following known issues occur for Android 3.0 AVDs that are loaded in the emulator:</p> <ul> <li>The emulator displays a rotated portrait screen while in landscape orientation. To view the screen correctly in landscape orientation, turn off the auto-rotate setting in <strong>Settings > Screen > Auto-rotate screen</strong>. Then use Ctrl-F11 to rotate the emulator.</li> <li>You cannot take screenshots of an emulator screen. The Device Screen Capture window displays <strong>Screen not available</strong>.</li> <li>GPS emulation is currently not supported.</li> <li>When rotating the emulator screen by pressing Ctrl-F11, the screen turns green momentarily, then displays the normal interface.</li> <li>The Dev Tools application sometimes crashes when trying to use the Package Browser feature.</li> </ul> <div class="special"> <p>For an overview of new features in Android 3.0, read the <a href="{@docRoot}sdk/android-3.0-highlights.html">Platform Highlights</a>.</p> </div>
docs/html/sdk/preview/installing.jd +5 −59 Original line number Diff line number Diff line page.title=Getting Started with Honeycomb @jd:body <p>First, you need to set up your development environment with the new SDK Tools and preview platform:</p> <script type="text/javascript"> document.location=toRoot+"sdk/installing.html" </script> <ol> <li>Unpack the SDK Tools r8 package you've received. <p>If you have an existing Android SDK directory, simply replace your existing {@code tools/} directory with the one from the new package and add the {@code platform-tools/} directory along side it (at the root of the SDK directory).</p></li> <li>Unpack the platform package ({@code android-Froyo}) and place it in your SDK's {@code platforms/} directory.</li> <li>If you're using Eclipse, also update your Eclipse plugin using the provided archive file. <ol> <li>Select <strong>Help > Install new software</strong>.</li> <li>Click <strong>Add</strong>.</li> <li>Click <strong>Archive</strong>.</li> <li>Locate and select the archive file. Click <strong>OK</strong>. <p>Developer Tools now appear in the Available Software window and you can proceed to install the plugin.</p> </li> </ol> </li> </ol> <p class="note"><strong>Note:</strong> Beginning with SDK Tools r8 (the version you've received), the {@code adb} tool is now located in the {@code <sdk>/platform-tools/} directory (instead of in {@code <sdk>/tools/}). Be sure to update your {@code PATH} environment variable and any build/debugging scripts you have.</p> <h2 id="Setup">Set Up Your AVD and Application</h2> <p>With your SDK now set up, follow these steps to start developing an application for Honeycomb.</p> <ol> <li>Create a new AVD targeted to "Android Froyo (Preview)" and with a custom skin resolution of 1280 x 800.</li> <li>Set the build target of your application to "Android Froyo (Preview)".</li> <li>Set your manifest file's {@code <uses-sdk>} element to use {@code android:minSdkVersion="Froyo"}. For example: <pre> <manifest> <uses-sdk android:minSdkVersion="Froyo" /> ... </manifest> </pre> <p>"Froyo" is a provisional API Level for the Honeycomb release, used only during the preview period. When the APIs are finalized and the SDK is released publicly, you must update this with the appropriate API Level integer.</p> <p class="note"><strong>Note:</strong> By providing your {@code <uses-sdk>} element in the manifest file <em>before</em> the {@code <application>} element, your application will automatically apply the new Holographic theme.</p> </li> </ol> <p>You should have already been redirected by your browser. Please go to <a href="{@docRoot}sdk/installing.html">Installing the SDK</a>.</p> No newline at end of file
docs/html/sdk/preview/requirements.jd +5 −2 Original line number Diff line number Diff line sdk.redirect=true @jd:body <script type="text/javascript"> document.location=toRoot+"sdk/requirements.html" </script> <p>You should have already been redirected by your browser. Please go to the <a href="{@docRoot}sdk/requirements.html">SDK System Requirements</a>.</p> No newline at end of file
docs/html/sdk/preview/upgrading.jd +5 −2 Original line number Diff line number Diff line sdk.redirect=true @jd:body <script type="text/javascript"> document.location=toRoot+"sdk/index.html" </script> <p>You should have already been redirected by your browser. Please go to <a href="{@docRoot}sdk/index.html">the Android SDK</a>.</p> No newline at end of file