Merge "Add generated html docs for SampleSyncAdapter and CubeLiveWallpaper. Add article for live wallpaper." into eclair
This commit is contained in:
committed by
Android (Google) Code Review
commit
859f455645
@@ -355,6 +355,8 @@ framework_docs_LOCAL_ADDITIONAL_JAVA_DIR:=$(call intermediates-dir-for,JAVA_LIBR
|
||||
|
||||
sample_dir := development/samples
|
||||
|
||||
# the list here should match the list of samples included in the sdk samples package
|
||||
# (see development/build/sdk.atree)
|
||||
web_docs_sample_code_flags := \
|
||||
-hdf android.hasSamples 1 \
|
||||
-samplecode $(sample_dir)/ApiDemos \
|
||||
@@ -365,6 +367,8 @@ web_docs_sample_code_flags := \
|
||||
resources/samples/BusinessCard "Business Card" \
|
||||
-samplecode $(sample_dir)/ContactManager \
|
||||
resources/samples/ContactManager "Contact Manager" \
|
||||
-samplecode $(sample_dir)/CubeLiveWallpaper \
|
||||
resources/samples/CubeLiveWallpaper "Live Wallpaper" \
|
||||
-samplecode $(sample_dir)/Home \
|
||||
resources/samples/Home "Home" \
|
||||
-samplecode $(sample_dir)/JetBoy \
|
||||
@@ -375,6 +379,8 @@ web_docs_sample_code_flags := \
|
||||
resources/samples/MultiResolution "Multiple Resolutions" \
|
||||
-samplecode $(sample_dir)/NotePad \
|
||||
resources/samples/NotePad "Note Pad" \
|
||||
-samplecode $(sample_dir)/SampleSyncAdapter \
|
||||
resources/samples/SampleSyncAdapter "Sample Sync Adapter" \
|
||||
-samplecode $(sample_dir)/SearchableDictionary \
|
||||
resources/samples/SearchableDictionary "Searchable Dictionary" \
|
||||
-samplecode $(sample_dir)/Snake \
|
||||
|
||||
BIN
docs/html/resources/articles/images/live_wallpapers_small.png
Normal file
BIN
docs/html/resources/articles/images/live_wallpapers_small.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 148 KiB |
@@ -76,6 +76,11 @@ page.title=Technical Articles
|
||||
<dd>Live Folders allow users to display any source of data on their home screen without launching an application. This article discusses how to export an application's data in a format suitable for display inside of a live folder.</dd>
|
||||
</dl>
|
||||
|
||||
<dl>
|
||||
<dt><a href="{@docRoot}resources/articles/live-wallpapers.html">Live Wallpapers</a></dt>
|
||||
<dd>Live wallpapers are richer, animated, interactive backgrounds that users can display in their home screens. Learn how to create a live wallpaper and bundle it in an application that users can install on their devices.</dd>
|
||||
</dl>
|
||||
|
||||
<dl>
|
||||
<dt><a href="{@docRoot}resources/articles/on-screen-inputs.html">Onscreen Input Methods</a></dt>
|
||||
<dd>The Input Method Framework (IMF) allows users to take advantage of on-screen input methods, such as software keyboards. This article provides an overview of Input Method Editors (IMEs) and how applications interact with them.</dd>
|
||||
|
||||
84
docs/html/resources/articles/live-wallpapers.jd
Normal file
84
docs/html/resources/articles/live-wallpapers.jd
Normal file
@@ -0,0 +1,84 @@
|
||||
page.title=Live Wallpapers
|
||||
@jd:body
|
||||
|
||||
<p>Starting with Android 2.1 (API Level 7), users can now enjoy <em>live
|
||||
wallpapers</em> — richer, animated, interactive backgrounds — on
|
||||
their home screens. A live wallpaper is very similar to a normal Android
|
||||
application and has access to all the facilities of the platform: SGL (2D
|
||||
drawing), OpenGL (3D drawing), GPS, accelerometers, network access, etc. The
|
||||
live wallpapers included on Nexus One demonstrate the use of some of these APIs
|
||||
to create fun and interesting user experiences. For instance, the Grass
|
||||
wallpaper uses the phone's location to compute sunrise and sunset times in order
|
||||
to display the appropriate sky.</p>
|
||||
|
||||
<img src="images/live_wallpapers_small.png" style="align:center" />
|
||||
|
||||
<p>Creating your own live wallpaper is easy, especially if you have had
|
||||
previous experience with <a
|
||||
href="../../../reference/android/view/SurfaceView.html"><code>SurfaceView</code></a> or <a
|
||||
href="../../../reference/android/graphics/Canvas.html"><code>Canvas</code></a>.
|
||||
To learn how to create a live wallpaper, you should check out the <a
|
||||
href="../samples/CubeLiveWallpaper/index.html">CubeLiveWallpaper sample code</a>.</p>
|
||||
|
||||
<p>In terms of implementation, a live wallpaper is very similar to a regular
|
||||
Android <a href="../../../reference/android/app/Service.html">service</a>. The
|
||||
only difference is the addition of a new method, <a
|
||||
href="../../../reference/android/service/wallpaper/WallpaperService.
|
||||
html#onCreateEngine()"><code>onCreateEngine()</code></a>, whose goal is to create a <a
|
||||
href="../../../reference/android/service/wallpaper/WallpaperService.Engine.html">
|
||||
<code>WallpaperService.Engine</code></a>. The engine is responsible for
|
||||
handling the lifecycle and drawing of a wallpaper. The system provides a surface
|
||||
on which you can draw, just like you would with a <code>SurfaceView</code></a>.
|
||||
Drawing a wallpaper can be very expensive so you should optimize your code
|
||||
as much as possible to avoid using too much CPU, not only for battery life
|
||||
but also to avoid slowing down the rest of the system. That is also why the
|
||||
most important part of the lifecycle of a wallpaper is <a href="../../../reference/android/service/wallpaper/WallpaperService.Engine.html#onVisibilityChanged%28boolean%29">when it becomes invisible</a>.
|
||||
When invisible, such as when the user launches an application that covers
|
||||
the home screen, a wallpaper must stop all activity.</p>
|
||||
|
||||
<p>The engine can also implement several methods to interact with the user
|
||||
or the home application. For instance, if you want your wallpaper to scroll
|
||||
along when the user swipes from one home screen to another, you can use <a href="../../../reference/android/service/wallpaper/WallpaperService.Engine.html#onOffsetsChanged%28float,%20float,%20float,%20float,%20int,%20int%29"><code>onOffsetsChanged()</code></a>.
|
||||
To react to touch events, simply implement <a href="../../../reference/android/service/wallpaper/WallpaperService.Engine.html#onTouchEvent%28android.view.MotionEvent%29"><code>onTouchEvent(MotionEvent)</code></a>.
|
||||
Finally, applications can send arbitrary commands to the live wallpaper.
|
||||
Currently, only the standard home application sends commands to the <a
|
||||
href="../../../reference/android/service/wallpaper/WallpaperService.Engine.html#onCommand%28java.lang.String,%20int,%20int,%20int,%20android.os.Bundle,%20boolean%29"><code>onCommand()</code></a>
|
||||
method of the live wallpaper:</p>
|
||||
|
||||
<ul>
|
||||
<li><code>android.wallpaper.tap</code>: When the user taps an empty space
|
||||
on the workspace. This command is interpreted by the Nexus and Water live
|
||||
wallpapers to make the wallpaper react to user interaction. For instance,
|
||||
if you tap an empty space on the Water live wallpaper, new ripples appear
|
||||
under your finger.</li>
|
||||
<li><code>android.home.drop</code>: When the user drops an icon or a widget
|
||||
on the workspace. This command is also interpreted by the Nexus and Water
|
||||
live wallpapers.</li>
|
||||
</ul>
|
||||
|
||||
<p>If you are developing a live wallpaper, remember that the feature is
|
||||
supported only on Android 2.1 (API level 7) and higher versions of the platform.
|
||||
To ensure that your application can only be installed on devices that support
|
||||
live wallpapers, remember to add the following to the application's manifest
|
||||
before publishing to Android Market:</p>
|
||||
|
||||
<ul>
|
||||
<li><code><uses-sdk android:minSdkVersion="7" /></code>, which indicates
|
||||
to Android Market and the platform that your application requires Android 2.1 or
|
||||
higher. For more information, see the <a href="../../../guide/appendix/api-levels.html">API
|
||||
Levels</a> and the documentation for the
|
||||
<a href="../../../guide/topics/manifest/uses-sdk-element.html"><code><uses-sdk></code></a>
|
||||
element.</li>
|
||||
<li><code><uses-feature android:name="android.software.live_wallpaper" /></code>,
|
||||
which tells Android Market that your application includes a live wallpaper
|
||||
Android Market uses this feature as a filter, when presenting users lists of
|
||||
available applications. When you declaring this feature, Android Market
|
||||
displays your application only to users whose devices support live wallpapers,
|
||||
while hiding it from other devices on which it would not be able to run. For
|
||||
more information, see the documentation for the
|
||||
<a href="../../../guide/topics/manifest/uses-feature-element.html"><code><uses-feature></code></a>
|
||||
element.</li>
|
||||
</ul>
|
||||
|
||||
<p>Many great live wallpapers are already available on Android Market and
|
||||
we can't wait to see more!</p>
|
||||
@@ -83,6 +83,9 @@
|
||||
<li><a href="<?cs var:toroot ?>resources/articles/live-folders.html">
|
||||
<span class="en">Live Folders</span>
|
||||
</a></li>
|
||||
<li><a href="<?cs var:toroot ?>resources/articles/live-wallpapers.html">
|
||||
<span class="en">Live Wallpapers</span>
|
||||
</a> <span class="new">new!</span></li>
|
||||
<li><a href="<?cs var:toroot ?>resources/articles/on-screen-inputs.html">
|
||||
<span class="en">Onscreen Input Methods</span>
|
||||
</a></li>
|
||||
@@ -178,28 +181,34 @@
|
||||
</a></li>
|
||||
<li><a href="<?cs var:toroot ?>resources/samples/BluetoothChat/index.html">
|
||||
<span class="en">Bluetooth Chat</span>
|
||||
</a> <span class="new">new!</span></li>
|
||||
</a></li>
|
||||
<li><a href="<?cs var:toroot ?>resources/samples/BusinessCard/index.html">
|
||||
<span class="en">Business Card</span>
|
||||
</a> <span class="new">new!</span></li>
|
||||
</a></li>
|
||||
<li><a href="<?cs var:toroot ?>resources/samples/ContactManager/index.html">
|
||||
<span class="en">Contact Manager</span>
|
||||
</a> <span class="new">new!</span></li>
|
||||
</a></li>
|
||||
<li><a href="<?cs var:toroot ?>resources/samples/Home/index.html">
|
||||
<span class="en">Home</span>
|
||||
</a></li>
|
||||
<li><a href="<?cs var:toroot ?>resources/samples/JetBoy/index.html">
|
||||
<span class="en">JetBoy</span>
|
||||
</a></li>
|
||||
<li><a href="<?cs var:toroot ?>resources/samples/CubeLiveWallpaper/index.html">
|
||||
<span class="en">Live Wallpaper</span>
|
||||
</a> <span class="new">new!</span></li>
|
||||
<li><a href="<?cs var:toroot ?>resources/samples/LunarLander/index.html">
|
||||
<span class="en">Lunar Lander</span>
|
||||
</a></li>
|
||||
<li><a href="<?cs var:toroot ?>resources/samples/MultiResolution/index.html">
|
||||
<span class="en">Multiple Resolutions</span>
|
||||
</a> <span class="new">new!</span></li>
|
||||
</a></li>
|
||||
<li><a href="<?cs var:toroot ?>resources/samples/NotePad/index.html">
|
||||
<span class="en">Note Pad</span>
|
||||
</a></li>
|
||||
<li><a href="<?cs var:toroot ?>resources/samples/SampleSyncAdapter/index.html">
|
||||
<span class="en">Sample Sync Adapter</span>
|
||||
</a> <span class="new">new!</span></li>
|
||||
<li><a href="<?cs var:toroot ?>resources/samples/SearchableDictionary/index.html">
|
||||
<span class="en">Searchable Dictionary</span>
|
||||
</a></li>
|
||||
@@ -211,10 +220,10 @@
|
||||
</a></li>
|
||||
<li><a href="<?cs var:toroot ?>resources/samples/Wiktionary/index.html">
|
||||
<span class="en">Wiktionary</span>
|
||||
</a> <span class="new">new!</span></li>
|
||||
</a></li>
|
||||
<li><a href="<?cs var:toroot ?>resources/samples/WiktionarySimple/index.html">
|
||||
<span class="en">Wiktionary (Simplified)</span>
|
||||
</a> <span class="new">new!</span></li>
|
||||
</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
BIN
docs/html/resources/samples/images/CubeLiveWallpaper1.png
Normal file
BIN
docs/html/resources/samples/images/CubeLiveWallpaper1.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 48 KiB |
BIN
docs/html/resources/samples/images/CubeLiveWallpaper3.png
Normal file
BIN
docs/html/resources/samples/images/CubeLiveWallpaper3.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 45 KiB |
@@ -27,10 +27,10 @@ android update project -s -n API Demos -t <em><target_ID></em> -p <em><pat
|
||||
platforms) and allow you to view the source files in your browser. </p>
|
||||
|
||||
<div class="special">
|
||||
<p>Some of the samples in this listing are not yet available in the
|
||||
SDK. While we work to update the SDK, you can
|
||||
<a href="{@docRoot}shareables/latest_samples.zip">download the latest samples</a> as a ZIP
|
||||
archive.</p>
|
||||
<p>Some of the samples in this listing may not yet be available in the
|
||||
SDK. To ensure that you have the latest versions of the samples, you can
|
||||
<a href="{@docRoot}shareables/latest_samples.zip">download the samples pack</a>
|
||||
as a .zip archive.</p>
|
||||
</div>
|
||||
|
||||
<dl>
|
||||
@@ -55,11 +55,15 @@ platforms) and allow you to view the source files in your browser. </p>
|
||||
|
||||
<dt><a href="Home/index.html">Home</a></dt>
|
||||
<dd>A home screen replacement application.</dd>
|
||||
|
||||
|
||||
<dt><a href="JetBoy/index.html">JetBoy</a></dt>
|
||||
<dd>A game that demonstrates the SONiVOX JET interactive music technology,
|
||||
with {@link android.media.JetPlayer}.</dd>
|
||||
|
||||
|
||||
<dt><a href="CubeLiveWallpaper/index.html">Live Wallpaper</a></dt>
|
||||
<dd>An application that demonstrates how to create a live wallpaper and
|
||||
bundle it in an application that users can install on their devices.</dd>
|
||||
|
||||
<dt><a href="LunarLander/index.html">Lunar Lander</a></dt>
|
||||
<dd>A classic Lunar Lander game.</dd>
|
||||
|
||||
@@ -70,14 +74,21 @@ platforms) and allow you to view the source files in your browser. </p>
|
||||
<dt><a href="NotePad/index.html">Note Pad</a></dt>
|
||||
<dd>An application for saving notes. Similar (but not identical) to the
|
||||
<a href="{@docRoot}resources/tutorials/notepad/index.html">Notepad tutorial</a>.</dd>
|
||||
|
||||
|
||||
<dt><a href="SampleSyncAdapter/index.html">SampleSyncAdapter</a></dt>
|
||||
<dd>Demonstrates how an application can communicate with a
|
||||
cloud-based service and synchronize its data with data stored locally in a
|
||||
content provider. The sample uses two related parts of the Android framework
|
||||
— the account manager and the synchronization manager (through a sync
|
||||
adapter).</dd>
|
||||
|
||||
<dt><a href="SearchableDictionary/index.html">Searchable Dictionary</a></dt>
|
||||
<dd>A sample application that demonstrates Android's search framework,
|
||||
including how to provide search suggestions for Quick Search Box.</dd>
|
||||
|
||||
|
||||
<dt><a href="Snake/index.html">Snake</a></dt>
|
||||
<dd>An implementation of the classic game "Snake."</dd>
|
||||
|
||||
|
||||
<dt><a href="SoftKeyboard/index.html">Soft Keyboard</a></dt>
|
||||
<dd>An example of writing an input method for a software keyboard.</dd>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user