training_toc.cs revision 421435d2bede2788b74b07b1bab893fef98047c5
150e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main<ul id="nav">
250e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main
350e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main
450e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main  <li class="nav-section">
550e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main    <div class="nav-section-header">
650e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      <a href="<?cs var:toroot ?>training/index.html">
722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        Getting Started
850e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      </a>
950e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main    </div>
1050e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main
117736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main    <ul>
1250e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      <li class="nav-section">
1350e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main        <div class="nav-section-header">
1422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="<?cs var:toroot ?>training/basics/firstapp/index.html"
1522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
1622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "After you've installed the Android SDK, start with this class
1722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             to learn the basics about Android app development."
1822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Building Your First App</a>
1950e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main        </div>
20be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main        <ul>
21be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          <li><a href="<?cs var:toroot ?>training/basics/firstapp/creating-project.html">
2222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Creating an Android Project
23be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </a>
24be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </li>
25be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          <li><a href="<?cs var:toroot ?>training/basics/firstapp/running-app.html">
2622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Running Your Application
27be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </a>
28be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </li>
29be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          <li><a href="<?cs var:toroot ?>training/basics/firstapp/building-ui.html">
3022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Building a Simple User Interface
31be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </a>
32be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </li>
33be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          <li><a href="<?cs var:toroot ?>training/basics/firstapp/starting-activity.html">
3422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Starting Another Activity
35be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </a>
36be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </li>
37be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main        </ul>
38be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main      </li>
39be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main
4050e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      <li class="nav-section">
4122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header">
4222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="<?cs var:toroot ?>training/basics/activity-lifecycle/index.html"
4322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
4422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How Android activities live and die and how to create
4522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             a seamless user experience by implementing lifecycle callback methods."
4622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Managing the Activity Lifecycle</a>
4722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        </div>
48be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main        <ul>
49be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          <li><a href="<?cs var:toroot ?>training/basics/activity-lifecycle/starting.html">
5022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Starting an Activity
51be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </a>
52be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </li>
53be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          <li><a href="<?cs var:toroot ?>training/basics/activity-lifecycle/pausing.html">
5422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Pausing and Resuming an Activity
55be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </a>
56be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </li>
57be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          <li><a href="<?cs var:toroot ?>training/basics/activity-lifecycle/stopping.html">
5822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Stopping and Restarting an Activity
59be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </a>
60be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </li>
61be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          <li><a href="<?cs var:toroot ?>training/basics/activity-lifecycle/recreating.html">
6222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Recreating an Activity
63be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </a>
64be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </li>
65be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main        </ul>
66be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main      </li>
6750c2275cff28c4a216f6924584e43cd64b90a3bfJoe Malin
6850e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      <li class="nav-section">
6922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header">
7022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="<?cs var:toroot ?>training/basics/supporting-devices/index.html"
7122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
7222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to build your app with alternative resources that provide an
7322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             optimized user experience on multiple device form factors using a single APK."
7422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Supporting Different Devices</a>
7522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        </div>
76be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main        <ul>
77be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          <li><a href="<?cs var:toroot ?>training/basics/supporting-devices/languages.html">
7822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Supporting Different Languages
79be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </a>
80be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </li>
81be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          <li><a href="<?cs var:toroot ?>training/basics/supporting-devices/screens.html">
8222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Supporting Different Screens
83be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </a>
84be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </li>
85be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          <li><a href="<?cs var:toroot ?>training/basics/supporting-devices/platforms.html">
8622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Supporting Different Platform Versions
87be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </a>
88be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </li>
89be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main        </ul>
90be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main      </li>
9150c2275cff28c4a216f6924584e43cd64b90a3bfJoe Malin
9250e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      <li class="nav-section">
9322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header">
9422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="<?cs var:toroot ?>training/basics/fragments/index.html"
9522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
9622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to build a user interface for your app that is flexible enough
9722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             to present multiple UI components on large screens and a more constrained set of
9822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             UI components on smaller screens&mdash;essential for building a single APK for both
9922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             phones and tablets."
10022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Building a Dynamic UI with Fragments</a>
10122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        </div>
102421854e6e8fe3418d22ae444567a06b5f308c896Scott Main        <ul>
103421854e6e8fe3418d22ae444567a06b5f308c896Scott Main          <li><a href="<?cs var:toroot ?>training/basics/fragments/support-lib.html">
10422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Using the Support Library
105421854e6e8fe3418d22ae444567a06b5f308c896Scott Main          </a>
106421854e6e8fe3418d22ae444567a06b5f308c896Scott Main          </li>
107421854e6e8fe3418d22ae444567a06b5f308c896Scott Main          <li><a href="<?cs var:toroot ?>training/basics/fragments/creating.html">
10822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Creating a Fragment
109421854e6e8fe3418d22ae444567a06b5f308c896Scott Main          </a>
110421854e6e8fe3418d22ae444567a06b5f308c896Scott Main          </li>
111421854e6e8fe3418d22ae444567a06b5f308c896Scott Main          <li><a href="<?cs var:toroot ?>training/basics/fragments/fragment-ui.html">
11222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Building a Flexible UI
113421854e6e8fe3418d22ae444567a06b5f308c896Scott Main          </a>
114421854e6e8fe3418d22ae444567a06b5f308c896Scott Main          </li>
115421854e6e8fe3418d22ae444567a06b5f308c896Scott Main          <li><a href="<?cs var:toroot ?>training/basics/fragments/communicating.html">
11622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Communicating with Other Fragments
117421854e6e8fe3418d22ae444567a06b5f308c896Scott Main          </a>
118421854e6e8fe3418d22ae444567a06b5f308c896Scott Main          </li>
119421854e6e8fe3418d22ae444567a06b5f308c896Scott Main        </ul>
120421854e6e8fe3418d22ae444567a06b5f308c896Scott Main      </li>
121be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main
12250e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      <li class="nav-section">
12322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header"><a href="<?cs var:toroot?>training/basics/data-storage/index.html"
12422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
12522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to save data on the device, whether it's temporary files, downloaded
12622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             app assets, user media, structured data, or something else."
12722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Saving Data</a>
12822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        </div>
12911f03b4b694f506ed5dcb7c12a9984b653f93b42Scott Main        <ul>
13011f03b4b694f506ed5dcb7c12a9984b653f93b42Scott Main          <li><a href="<?cs var:toroot ?>training/basics/data-storage/shared-preferences.html">
13122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Saving Key-Value Sets
13211f03b4b694f506ed5dcb7c12a9984b653f93b42Scott Main          </a>
13311f03b4b694f506ed5dcb7c12a9984b653f93b42Scott Main          </li>
13411f03b4b694f506ed5dcb7c12a9984b653f93b42Scott Main          <li><a href="<?cs var:toroot ?>training/basics/data-storage/files.html">
13522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Saving Files
13611f03b4b694f506ed5dcb7c12a9984b653f93b42Scott Main          </a>
13711f03b4b694f506ed5dcb7c12a9984b653f93b42Scott Main          </li>
13811f03b4b694f506ed5dcb7c12a9984b653f93b42Scott Main          <li><a href="<?cs var:toroot ?>training/basics/data-storage/databases.html">
13922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Saving Data in SQL Databases
14011f03b4b694f506ed5dcb7c12a9984b653f93b42Scott Main          </a>
14111f03b4b694f506ed5dcb7c12a9984b653f93b42Scott Main          </li>
14211f03b4b694f506ed5dcb7c12a9984b653f93b42Scott Main        </ul>
14311f03b4b694f506ed5dcb7c12a9984b653f93b42Scott Main      </li>
14411f03b4b694f506ed5dcb7c12a9984b653f93b42Scott Main
14511f03b4b694f506ed5dcb7c12a9984b653f93b42Scott Main      <li class="nav-section">
14622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header">
14722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="<?cs var:toroot ?>training/basics/intents/index.html"
14822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
14922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to build a user experience that leverages other apps available
15022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             on the device to perform advanced user tasks, such as capture a photo or view
15122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             an address on a map."
15222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Interacting with Other Apps</a>
15322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        </div>
154be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main        <ul>
155be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          <li><a href="<?cs var:toroot ?>training/basics/intents/sending.html">
15622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Sending the User to Another App
157be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </a>
158be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </li>
159be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          <li><a href="<?cs var:toroot ?>training/basics/intents/result.html">
16022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Getting a Result from the Activity
161be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </a>
162be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </li>
163be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          <li><a href="<?cs var:toroot ?>training/basics/intents/filters.html">
16422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Allowing Other Apps to Start Your Activity
165be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </a>
166be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </li>
167be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main        </ul>
168be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main      </li>
169be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main
17050e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      <li class="nav-section">
17122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header">
17222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="<?cs var:toroot ?>training/sharing/index.html"
17322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
17422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to take your app interaction to the next level by sharing
17522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             information with other apps, receive information back, and provide a simple and
17622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             scalable way to perform Share actions with user content."
17722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Sharing Content</a>
17822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        </div>
179be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main        <ul>
18022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/sharing/send.html">
18122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Sending Content to Other Apps
182be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </a>
183be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </li>
18422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/sharing/receive.html">
18522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Receiving Content from Other Apps
186be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </a>
187be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </li>
18822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/sharing/shareaction.html">
18922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Adding an Easy Share Action
190be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </a>
191be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main          </li>
192be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main        </ul>
193be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main      </li>
19422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    </ul>
195f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin  </li><!-- end getting started -->
19622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
197c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main
198c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main
19950e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main
20022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main  <li class="nav-section">
20122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    <div class="nav-section-header">
20222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      <a href="<?cs var:toroot ?>training/building-multimedia.html">
20322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      <span class="small">Building Apps with</span><br/>Multimedia
20422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      </a>
20522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    </div>
20622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    <ul>
20722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
20822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      <li class="nav-section">
20922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header">
21022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="<?cs var:toroot ?>training/managing-audio/index.html"
21122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
21222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to respond to hardware audio key presses, request audio focus
21322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             when playing audio, and respond appropriately to changes in audio focus."
21422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Managing Audio Playback</a>
21522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        </div>
21650e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main        <ul>
21722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/managing-audio/volume-playback.html">
21822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Controlling Your App's Volume and Playback
21950e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main          </a>
22050e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main          </li>
22122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/managing-audio/audio-focus.html">
22222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Managing Audio Focus
22350e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main          </a>
22450e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main          </li>
22522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/managing-audio/audio-output.html">
22622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Dealing with Audio Output Hardware
22750e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main          </a>
22850e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main          </li>
22950e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main        </ul>
23050e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      </li>
23150c2275cff28c4a216f6924584e43cd64b90a3bfJoe Malin
23250e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      <li class="nav-section">
23322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header">
23422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="<?cs var:toroot ?>training/camera/index.html"
23522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
23622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to leverage existing camera apps on the user's device to capture
23722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             photos or control the camera hardware directly and build your own camera app."
23822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Capturing Photos</a>
23922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        </div>
24050e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main        <ul>
24122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/camera/photobasics.html">
24222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Taking Photos Simply
24350e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main          </a>
24450e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main          </li>
24522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/camera/videobasics.html">
24622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Recording Videos Simply
24750e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main          </a>
24850e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main          </li>
24922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/camera/cameradirect.html">
25022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Controlling the Camera
25150e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main          </a>
25250e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main          </li>
25350e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main        </ul>
25450e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      </li>
25522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    </ul>
25622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main  </li>
25722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main  <!-- End multimedia -->
25822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
25922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
260be2f4edd2ca2b4ba9bbed7262719064ca55b54ffScott Main
26122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main  <li class="nav-section">
26222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    <div class="nav-section-header">
26322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      <a href="<?cs var:toroot ?>training/building-graphics.html">
26422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      <span class="small">Building Apps with</span><br/>Graphics &amp; Animation
26522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      </a>
26622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    </div>
26722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    <ul>
26822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
26950e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      <li class="nav-section">
27022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header">
27122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="<?cs var:toroot ?>training/displaying-bitmaps/index.html"
27222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
27322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to load and process bitmaps while keeping your user interface
27422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             responsive and avoid exceeding memory limits."
27522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Displaying Bitmaps Efficiently</a>
27622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        </div>
27750e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main        <ul>
27822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/displaying-bitmaps/load-bitmap.html">
27922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Loading Large Bitmaps Efficiently
28050e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main          </a>
28150e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main          </li>
28222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/displaying-bitmaps/process-bitmap.html">
28322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Processing Bitmaps Off the UI Thread
28422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          </a>
28522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          </li>
28622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/displaying-bitmaps/cache-bitmap.html">
28722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Caching Bitmaps
288e38a6c50ea6f6c1238276154ca0631842b6ab06cAlexander Lucas          </a>
289e38a6c50ea6f6c1238276154ca0631842b6ab06cAlexander Lucas          </li>
29022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/displaying-bitmaps/display-bitmap.html">
29122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Displaying Bitmaps in Your UI
29222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          </a></li>
29350e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main        </ul>
29450e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      </li>
29550c2275cff28c4a216f6924584e43cd64b90a3bfJoe Malin
29650e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      <li class="nav-section">
29722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header">
29822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="<?cs var:toroot?>training/graphics/opengl/index.html"
29922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
30022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to create OpenGL graphics within the Android app framework
30122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             and respond to touch input."
30222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Displaying Graphics with OpenGL ES</a>
303ddab47b78ca5dff3b9ca8f79c2af8de0292a8fa4Scott Main        </div>
3047736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main        <ul>
30522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/graphics/opengl/environment.html">
30622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Building an OpenGL ES Environment
30722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          </a>
308ddab47b78ca5dff3b9ca8f79c2af8de0292a8fa4Scott Main          </li>
30922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/graphics/opengl/shapes.html">
31022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Defining Shapes
31122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          </a>
3127736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </li>
31322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/graphics/opengl/draw.html">
31422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Drawing Shapes
3157736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </a>
3167736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </li>
31722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/graphics/opengl/projection.html">
31822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Applying Projection and Camera Views
3197736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </a>
3207736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </li>
32122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/graphics/opengl/motion.html">
32222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Adding Motion
3237736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </a>
3247736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </li>
32522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/graphics/opengl/touch.html">
32622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Responding to Touch Events
3277736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </a>
3287736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </li>
3297736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main        </ul>
3307736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main      </li>
33122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      <li class="nav-section">
33222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header"><a href="<?cs var:toroot ?>training/animation/index.html"
33322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
33422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to add transitional animations to your user interface.">
33522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Adding Animations
3363f532126028378204e263a33b08a95b3cd9c7b83Robert Ly          </a></div>
3373f532126028378204e263a33b08a95b3cd9c7b83Robert Ly        <ul>
3383f532126028378204e263a33b08a95b3cd9c7b83Robert Ly          <li><a href="<?cs var:toroot ?>training/animation/crossfade.html">
33922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Crossfading Two Views
3403f532126028378204e263a33b08a95b3cd9c7b83Robert Ly          </a>
3413f532126028378204e263a33b08a95b3cd9c7b83Robert Ly          </li>
3423f532126028378204e263a33b08a95b3cd9c7b83Robert Ly          <li><a href="<?cs var:toroot ?>training/animation/screen-slide.html">
34322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Using ViewPager for Screen Slide
3443f532126028378204e263a33b08a95b3cd9c7b83Robert Ly          </a>
3453f532126028378204e263a33b08a95b3cd9c7b83Robert Ly          </li>
3463f532126028378204e263a33b08a95b3cd9c7b83Robert Ly          <li><a href="<?cs var:toroot ?>training/animation/cardflip.html">
34722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Displaying Card Flip Animations
3483f532126028378204e263a33b08a95b3cd9c7b83Robert Ly          </a>
3493f532126028378204e263a33b08a95b3cd9c7b83Robert Ly          </li>
3503f532126028378204e263a33b08a95b3cd9c7b83Robert Ly          <li><a href="<?cs var:toroot ?>training/animation/zoom.html">
35122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Zooming a View
3523f532126028378204e263a33b08a95b3cd9c7b83Robert Ly          </a>
3533f532126028378204e263a33b08a95b3cd9c7b83Robert Ly          </li>
3543f532126028378204e263a33b08a95b3cd9c7b83Robert Ly          <li><a href="<?cs var:toroot ?>training/animation/layout.html">
35522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Animating Layout Changes
3563f532126028378204e263a33b08a95b3cd9c7b83Robert Ly          </a>
3573f532126028378204e263a33b08a95b3cd9c7b83Robert Ly          </li>
3583f532126028378204e263a33b08a95b3cd9c7b83Robert Ly        </ul>
3593f532126028378204e263a33b08a95b3cd9c7b83Robert Ly      </li>
36022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    </ul>
36122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main  </li>
36222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main  <!-- End graphics and animation -->
3637736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main
36422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
36522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main  <li class="nav-section">
36622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    <div class="nav-section-header">
36722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      <a href="<?cs var:toroot ?>training/building-connectivity.html">
36822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      <span class="small">Building Apps with</span><br/>
36922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main              Connectivity &amp; the Cloud
37022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      </a>
37122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    </div>
37222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    <ul>
37322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
37422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
37550e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      <li class="nav-section">
37622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header">
37722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="<?cs var:toroot ?>training/connect-devices-wirelessly/index.html"
37822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
37922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to find and connect to local devices using Network Service
38022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             Discovery and Wi-Fi Direct in order to create peer-to-peer connections."
38122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             >Connecting Devices Wirelessly</a>
38222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        </div>
3837736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main        <ul>
38422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/connect-devices-wirelessly/nsd.html">
38522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Using Network Service Discovery
3867736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </a>
3877736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </li>
38822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/connect-devices-wirelessly/wifi-direct.html">
38922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Connecting with Wi-Fi Direct
3907736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </a>
3917736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </li>
39222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/connect-devices-wirelessly/nsd-wifi-direct.html">
39322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Using Wi-Fi Direct for Service Discovery
3947736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </a>
3957736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </li>
3967736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main        </ul>
3977736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main      </li>
39822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
39922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main       <li class="nav-section">
40022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header">
40122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="<?cs var:toroot ?>training/basics/network-ops/index.html"
40222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
40322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to create a network connection, monitor the connection for changes
40422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             in connectivity, and perform transactions with XML data."
40522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Performing Network Operations</a>
406ddab47b78ca5dff3b9ca8f79c2af8de0292a8fa4Scott Main        </div>
4077736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main        <ul>
40822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/basics/network-ops/connecting.html">
40922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Connecting to the Network
41022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          </a>
411ddab47b78ca5dff3b9ca8f79c2af8de0292a8fa4Scott Main          </li>
41222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/basics/network-ops/managing.html">
41322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Managing Network Usage
41422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          </a>
415ddab47b78ca5dff3b9ca8f79c2af8de0292a8fa4Scott Main          </li>
41622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/basics/network-ops/xml.html">
41722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Parsing XML Data
41822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          </a>
4197736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </li>
4207736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main        </ul>
4217736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main      </li>
42250e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      <li class="nav-section">
42322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header">
42422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="<?cs var:toroot ?>training/efficient-downloads/index.html"
42522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
42622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to minimize your app's impact on the battery when performing downloads
42722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             and other network transactions."
42822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Transferring Data Without Draining the Battery</a>
42922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        </div>
43020f394df4db02c492d7920f4f366b777451c2067Reto Meier        <ul>
43122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/efficient-downloads/efficient-network-access.html">
43222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Optimizing Downloads for Efficient Network Access
43320f394df4db02c492d7920f4f366b777451c2067Reto Meier          </a>
43420f394df4db02c492d7920f4f366b777451c2067Reto Meier          </li>
43522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/efficient-downloads/regular_updates.html">
43622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Minimizing the Effect of Regular Updates
43720f394df4db02c492d7920f4f366b777451c2067Reto Meier          </a>
43820f394df4db02c492d7920f4f366b777451c2067Reto Meier          </li>
43922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/efficient-downloads/redundant_redundant.html">
44022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Redundant Downloads are Redundant
441773740ed79075e6daffaea0c62857348ab54d93eAlexander Lucas          </a>
442773740ed79075e6daffaea0c62857348ab54d93eAlexander Lucas          </li>
44322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/efficient-downloads/connectivity_patterns.html">
44422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Modifying Patterns Based on the Connectivity Type
445773740ed79075e6daffaea0c62857348ab54d93eAlexander Lucas          </a>
446773740ed79075e6daffaea0c62857348ab54d93eAlexander Lucas          </li>
447773740ed79075e6daffaea0c62857348ab54d93eAlexander Lucas        </ul>
448773740ed79075e6daffaea0c62857348ab54d93eAlexander Lucas      </li>
449773740ed79075e6daffaea0c62857348ab54d93eAlexander Lucas
45050e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      <li class="nav-section">
45122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header">
45222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="<?cs var:toroot ?>training/cloudsync/index.html"
45322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
45422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to sync and back up app and user data to remote web services in the
45522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main              cloud and how to restore the data back to multiple devices."
45622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Syncing to the Cloud</a>
457957f716cf1686145ba4c06ca8669eaa2e22f54e8Robert Ly        </div>
458055e3f25ba85d7aefcddaa0aa2bb0589719ec80cRobert Ly        <ul>
45922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/cloudsync/backupapi.html">
46022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Using the Backup API
461055e3f25ba85d7aefcddaa0aa2bb0589719ec80cRobert Ly          </a>
462055e3f25ba85d7aefcddaa0aa2bb0589719ec80cRobert Ly          </li>
46322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/cloudsync/gcm.html">
46422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Making the Most of Google Cloud Messaging
4657736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </a>
4667736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </li>
4677736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main        </ul>
4687736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main      </li>
46922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    </ul>
47022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main  </li>
47122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main  <!-- End connectivity and cloud -->
47222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
47322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
474580f0146535e7daed83aef721f505270f7b040e1Scott Main
47522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main  <li class="nav-section">
47622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    <div class="nav-section-header">
47722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      <a href="<?cs var:toroot ?>training/building-userinfo.html">
47822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      <span class="small">Building Apps with</span><br/>
47922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main              User Info &amp; Location
48022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      </a>
48122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    </div>
48222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    <ul>
483421435d2bede2788b74b07b1bab893fef98047c5Joe Malin      <li class="nav-section">
484421435d2bede2788b74b07b1bab893fef98047c5Joe Malin        <div class="nav-section-header">
485421435d2bede2788b74b07b1bab893fef98047c5Joe Malin          <a href="<?cs var:toroot ?>training/contacts-provider/index.html"
486421435d2bede2788b74b07b1bab893fef98047c5Joe Malin             description=
487421435d2bede2788b74b07b1bab893fef98047c5Joe Malin             "How to use Android's central address book, the Contacts Provider, to
488421435d2bede2788b74b07b1bab893fef98047c5Joe Malin             display contacts and their details and modify contact information.">
489421435d2bede2788b74b07b1bab893fef98047c5Joe Malin          Accessing Contacts Data</a>
490421435d2bede2788b74b07b1bab893fef98047c5Joe Malin        </div>
491421435d2bede2788b74b07b1bab893fef98047c5Joe Malin        <ul>
492421435d2bede2788b74b07b1bab893fef98047c5Joe Malin          <li>
493421435d2bede2788b74b07b1bab893fef98047c5Joe Malin                <a href="<?cs var:toroot ?>training/contacts-provider/retrieve-names.html">
494421435d2bede2788b74b07b1bab893fef98047c5Joe Malin                Retrieving a List of Contacts
495421435d2bede2788b74b07b1bab893fef98047c5Joe Malin                </a>
496421435d2bede2788b74b07b1bab893fef98047c5Joe Malin          </li>
497421435d2bede2788b74b07b1bab893fef98047c5Joe Malin          <li>
498421435d2bede2788b74b07b1bab893fef98047c5Joe Malin                <a href="<?cs var:toroot ?>training/contacts-provider/retrieve-details.html">
499421435d2bede2788b74b07b1bab893fef98047c5Joe Malin                Retrieving Details for a Contact
500421435d2bede2788b74b07b1bab893fef98047c5Joe Malin                </a>
501421435d2bede2788b74b07b1bab893fef98047c5Joe Malin          </li>
502421435d2bede2788b74b07b1bab893fef98047c5Joe Malin          <li>
503421435d2bede2788b74b07b1bab893fef98047c5Joe Malin                <a href="<?cs var:toroot ?>training/contacts-provider/modify-data.html">
504421435d2bede2788b74b07b1bab893fef98047c5Joe Malin                Modifying Contacts Using Intents
505421435d2bede2788b74b07b1bab893fef98047c5Joe Malin                </a>
506421435d2bede2788b74b07b1bab893fef98047c5Joe Malin          </li>
507421435d2bede2788b74b07b1bab893fef98047c5Joe Malin          <li>
508421435d2bede2788b74b07b1bab893fef98047c5Joe Malin                <a href="<?cs var:toroot ?>training/contacts-provider/display-contact-badge.html">
509421435d2bede2788b74b07b1bab893fef98047c5Joe Malin                Displaying the Quick Contact Badge
510421435d2bede2788b74b07b1bab893fef98047c5Joe Malin                </a>
511421435d2bede2788b74b07b1bab893fef98047c5Joe Malin          </li>
512421435d2bede2788b74b07b1bab893fef98047c5Joe Malin        </ul>
513421435d2bede2788b74b07b1bab893fef98047c5Joe Malin      </li>
51450e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      <li class="nav-section">
51522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header">
51622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="<?cs var:toroot ?>training/id-auth/index.html"
51722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
51822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to remember the user by account, authenticate the user, acquire user permission
51922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             for the user's online data, and create custom accounts on the device."
52022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Remembering Users</a>
52122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        </div>
5222956f2fd2ce7eba5abac30fa1c0a2c514edcc787Scott Main        <ul>
5232956f2fd2ce7eba5abac30fa1c0a2c514edcc787Scott Main          <li><a href="<?cs var:toroot ?>training/id-auth/identify.html">
52422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Remembering Your User
5252956f2fd2ce7eba5abac30fa1c0a2c514edcc787Scott Main          </a>
5262956f2fd2ce7eba5abac30fa1c0a2c514edcc787Scott Main          </li>
5272956f2fd2ce7eba5abac30fa1c0a2c514edcc787Scott Main          <li><a href="<?cs var:toroot ?>training/id-auth/authenticate.html">
52822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Authenticating to OAuth2 Services
5292956f2fd2ce7eba5abac30fa1c0a2c514edcc787Scott Main          </a>
5302956f2fd2ce7eba5abac30fa1c0a2c514edcc787Scott Main          </li>
5312956f2fd2ce7eba5abac30fa1c0a2c514edcc787Scott Main          <li><a href="<?cs var:toroot ?>training/id-auth/custom_auth.html">
53222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Creating a Custom Account Type
5332956f2fd2ce7eba5abac30fa1c0a2c514edcc787Scott Main          </a>
5342956f2fd2ce7eba5abac30fa1c0a2c514edcc787Scott Main          </li>
5352956f2fd2ce7eba5abac30fa1c0a2c514edcc787Scott Main        </ul>
5362956f2fd2ce7eba5abac30fa1c0a2c514edcc787Scott Main      </li>
537580f0146535e7daed83aef721f505270f7b040e1Scott Main
53850e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      <li class="nav-section">
53922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header">
54022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="<?cs var:toroot ?>training/basics/location/index.html"
54122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
54222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to add location-aware features to your app by aqcuiring the user's current
54322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             location."
54422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Making Your App Location Aware</a>
54522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        </div>
5467736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main        <ul>
54722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/basics/location/locationmanager.html">
54822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Using the Location Manager
5497736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </a>
5507736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </li>
55122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/basics/location/currentlocation.html">
55222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Obtaining the Current Location
5537736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </a>
5547736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </li>
55522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/basics/location/geocoding.html">
55622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Displaying a Location Address
5577736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </a>
5587736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </li>
5597736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main        </ul>
5607736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main      </li>
56122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    </ul>
56222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main  </li>
56322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main  <!-- End privacy and location -->
56422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
56522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
56622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
56722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main  <li class="nav-section">
56822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    <div class="nav-section-header">
56922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      <a href="<?cs var:toroot ?>training/best-ux.html">
57022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      <span class="small">Best Practices for</span><br/>
57122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main              User Experience &amp; UI
57222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      </a>
57322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    </div>
57422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    <ul>
57550c2275cff28c4a216f6924584e43cd64b90a3bfJoe Malin
57650e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      <li class="nav-section">
57722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header">
57822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="<?cs var:toroot ?>training/design-navigation/index.html"
57922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
58022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to plan your app's screen hierarchy and forms of navigation so users can
58122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             effectively and intuitively traverse your app content using various navigation
58222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             patterns."
58322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Designing Effective Navigation</a>
58422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        </div>
5857736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main        <ul>
58622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/design-navigation/screen-planning.html">
58722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Planning Screens and Their Relationships
5887736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </a>
5897736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </li>
59022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/design-navigation/multiple-sizes.html">
59122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Planning for Multiple Touchscreen Sizes
5927736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </a>
5937736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </li>
59422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/design-navigation/descendant-lateral.html">
59522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Providing Descendant and Lateral Navigation
59622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          </a>
59722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          </li>
59822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/design-navigation/ancestral-temporal.html">
59922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Providing Ancestral and Temporal Navigation
60022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          </a>
60122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          </li>
60222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/design-navigation/wireframing.html">
60322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Putting it All Together: Wireframing the Example App
6047736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </a>
6057736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </li>
6067736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main        </ul>
6077736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main      </li>
60850c2275cff28c4a216f6924584e43cd64b90a3bfJoe Malin
60950e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      <li class="nav-section">
61022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header">
61122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="<?cs var:toroot ?>training/implementing-navigation/index.html"
61222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
61322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to implement various navigation patterns such as swipe views and up navigation."
61422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Implementing Effective Navigation</a>
61522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        </div>
6167736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main        <ul>
61722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/implementing-navigation/lateral.html">
61822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Implementing Lateral Navigation
6197736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </a>
6207736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </li>
62122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/implementing-navigation/ancestral.html">
62222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Implementing Ancestral Navigation
6237736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </a>
6247736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </li>
62522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/implementing-navigation/temporal.html">
62622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Implementing Temporal Navigation
6277736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </a>
6287736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </li>
62922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/implementing-navigation/descendant.html">
63022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Implementing Descendant Navigation
6317736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </a>
6327736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </li>
6337736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main        </ul>
6347736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main      </li>
6350aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j
6360aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j      <li class="nav-section">
6370aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j          <div class="nav-section-header">
6380aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j              <a href="<?cs var:toroot ?>training/notify-user/index.html"
6390aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j                 description=
640f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin                 "How to display messages called notifications outside of
6410aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j                 your application's UI."
6420aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j               >Notifying the User</a>
6430aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j          </div>
6440aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j          <ul>
6450aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j              <li>
6460aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j                  <a href="<?cs var:toroot ?>training/notify-user/build-notification.html">
6470aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j                  Building a Notification
6480aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j                  </a>
6490aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j              </li>
6500aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j              <li>
6510aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j                  <a href="<?cs var:toroot ?>training/notify-user/navigation.html">
6520aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j                  Preserving Navigation when Starting an Activity
6530aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j                  </a>
6540aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j              </li>
6550aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j              <li>
6560aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j                  <a href="<?cs var:toroot ?>training/notify-user/managing.html">
6570aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j                  Updating Notifications
6580aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j                  </a>
6590aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j              </li>
6600aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j              <li>
6610aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j                  <a href="<?cs var:toroot ?>training/notify-user/expanded.html">
6620aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j                  Using Big View Styles
6630aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j                  </a>
6640aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j              </li>
6650aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j              <li>
6660aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j                  <a href="<?cs var:toroot ?>training/notify-user/display-progress.html">
6670aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j                  Displaying Progress in a Notification
6680aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j                  </a>
6690aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j              </li>
6700aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j          </ul>
6710aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j      </li>
6720aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j
6730aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j      <li class="nav-section">
6740aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j        <div class="nav-section-header">
6750aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j          <a href="<?cs var:toroot ?>training/search/index.html"
6760aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j             description=
6770aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j             "How to properly add a search interface to your app and create a searchable database."
6780aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j            >Adding Search Functionality</a>
6790aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j        </div>
6800aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j        <ul>
6810aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j          <li><a href="<?cs var:toroot ?>training/search/setup.html">
6820aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j            Setting up the Search Interface
6830aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j          </a>
6840aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j          </li>
6850aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j          <li><a href="<?cs var:toroot ?>training/search/search.html">
6860aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j            Storing and Searching for Data
6870aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j          </a>
6880aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j          </li>
6890aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j          <li><a href="<?cs var:toroot ?>training/search/backward-compat.html">
6900aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j            Remaining Backward Compatible
6910aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j          </a>
6920aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j          </li>
6930aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j        </ul>
6940aae00051c3e96a6271840c50f6b9e448c7064f4&& repo sync -j      </li>
69522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
69622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
69750e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      <li class="nav-section">
69822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header">
69922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="/training/multiscreen/index.html"
70022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             zh-CN-lang="针对多种屏幕进行设计"
70122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             ja-lang="複数画面のデザイン"
70222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             es-lang="mo diseñar aplicaciones para varias pantallas"
70322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
70422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to build a user interface that's flexible enough to
70522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             fit perfectly on any screen and how to create different interaction
70622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             patterns that are optimized for different screen sizes."
70722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Designing for Multiple Screens</a>
70822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        </div>
70938e09c3ddb7da47a23bf4221ab678e058c7e923aRoman Nurik        <ul>
71022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="/training/multiscreen/screensizes.html"
71122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            zh-CN-lang="支持各种屏幕尺寸"
71222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            ko-lang="다양한 화면 크기 지원"
71322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            ja-lang="さまざまな画面サイズのサポート"
714f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin            es-lang="Cómo admitir varios tamaños de pantalla"
71522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Supporting Different Screen Sizes</a>
71638e09c3ddb7da47a23bf4221ab678e058c7e923aRoman Nurik          </li>
71722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="/training/multiscreen/screendensities.html"
71822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            zh-CN-lang="支持各种屏幕密度"
71922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            ja-lang="さまざまな画面密度のサポート"
720f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin            es-lang="Cómo admitir varias densidades de pantalla"
72122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Supporting Different Screen Densities</a>
72238e09c3ddb7da47a23bf4221ab678e058c7e923aRoman Nurik          </li>
72322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="/training/multiscreen/adaptui.html"
72422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            zh-CN-lang="实施自适应用户界面流程"
72522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            ja-lang="順応性のある UI フローの実装"
726f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin            es-lang="Cómo implementar interfaces de usuario adaptables"
72722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Implementing Adaptive UI Flows</a>
72838e09c3ddb7da47a23bf4221ab678e058c7e923aRoman Nurik          </li>
72938e09c3ddb7da47a23bf4221ab678e058c7e923aRoman Nurik        </ul>
73038e09c3ddb7da47a23bf4221ab678e058c7e923aRoman Nurik      </li>
73138e09c3ddb7da47a23bf4221ab678e058c7e923aRoman Nurik
73250e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      <li class="nav-section">
73322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header"><a href="<?cs var:toroot ?>training/tv/index.html"
73422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
73522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to optimize your app's user interface and user input for
73622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             the &quot;ten foot experience&quot; of a TV screen."
73722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Designing for TV</a>
73822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        </div>
7397736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main        <ul>
74022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/tv/optimizing-layouts-tv.html">
74122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Optimizing Layouts for TV
74222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          </a>
74322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          </li>
74422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/tv/optimizing-navigation-tv.html">
74522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Optimizing Navigation for TV
74622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          </a>
74722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          </li>
74822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/tv/unsupported-features-tv.html">
74922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Handling Features Not Supported on TV
7507736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </a>
7517736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main          </li>
7527736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main        </ul>
7537736f96d0e4d9981be2466c02bcf43e2a4a75493Scott Main      </li>
75422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
75550e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      <li class="nav-section">
75622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header">
75722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="<?cs var:toroot ?>training/custom-views/index.html"
75822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
75922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to build custom UI widgets that are interactive and smooth."
76022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Creating Custom Views</a>
76122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        </div>
762580f0146535e7daed83aef721f505270f7b040e1Scott Main        <ul>
76322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/custom-views/create-view.html">
76422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Creating a Custom View Class
765580f0146535e7daed83aef721f505270f7b040e1Scott Main          </a>
766580f0146535e7daed83aef721f505270f7b040e1Scott Main          </li>
76722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/custom-views/custom-drawing.html">
76822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Implementing Custom Drawing
769580f0146535e7daed83aef721f505270f7b040e1Scott Main          </a>
770580f0146535e7daed83aef721f505270f7b040e1Scott Main          </li>
77122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/custom-views/making-interactive.html">
77222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Making the View Interactive
773580f0146535e7daed83aef721f505270f7b040e1Scott Main          </a>
774580f0146535e7daed83aef721f505270f7b040e1Scott Main          </li>
77522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/custom-views/optimizing-view.html">
77622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Optimizing the View
777580f0146535e7daed83aef721f505270f7b040e1Scott Main          </a>
778580f0146535e7daed83aef721f505270f7b040e1Scott Main          </li>
779580f0146535e7daed83aef721f505270f7b040e1Scott Main        </ul>
78019266f7b02c91d21d630c99d593f83cc427cd40bRoman Nurik      </li>
78119266f7b02c91d21d630c99d593f83cc427cd40bRoman Nurik
78250e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      <li class="nav-section">
78322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header">
78422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="<?cs var:toroot ?>training/backward-compatible-ui/index.html"
78522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
78622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to use UI components and other APIs from the more recent versions of Android
78722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             while remaining compatible with older versions of the platform."
78822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Creating Backward-Compatible UIs</a>
78922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        </div>
79019266f7b02c91d21d630c99d593f83cc427cd40bRoman Nurik        <ul>
79122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/backward-compatible-ui/abstracting.html">
79222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Abstracting the New APIs
79319266f7b02c91d21d630c99d593f83cc427cd40bRoman Nurik          </a>
79419266f7b02c91d21d630c99d593f83cc427cd40bRoman Nurik          </li>
79522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/backward-compatible-ui/new-implementation.html">
79622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Proxying to the New APIs
79719266f7b02c91d21d630c99d593f83cc427cd40bRoman Nurik          </a>
79819266f7b02c91d21d630c99d593f83cc427cd40bRoman Nurik          </li>
79922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/backward-compatible-ui/older-implementation.html">
80022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Creating an Implementation with Older APIs
80119266f7b02c91d21d630c99d593f83cc427cd40bRoman Nurik          </a>
80219266f7b02c91d21d630c99d593f83cc427cd40bRoman Nurik          </li>
80322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/backward-compatible-ui/using-component.html">
80422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Using the Version-Aware Component
80519266f7b02c91d21d630c99d593f83cc427cd40bRoman Nurik          </a>
80619266f7b02c91d21d630c99d593f83cc427cd40bRoman Nurik          </li>
80719266f7b02c91d21d630c99d593f83cc427cd40bRoman Nurik        </ul>
80819266f7b02c91d21d630c99d593f83cc427cd40bRoman Nurik      </li>
80922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
81050e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      <li class="nav-section">
81122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header">
81222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="<?cs var:toroot ?>training/accessibility/index.html"
81322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
81422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to make your app accessible to users with vision
81522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             impairment or other physical disabilities."
81622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Implementing Accessibility</a>
817931ff55a905c2efb7abb7ac287fe2132aaf77627Megha Joshi        </div>
818931ff55a905c2efb7abb7ac287fe2132aaf77627Megha Joshi        <ul>
81922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/accessibility/accessible-app.html">
82022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Developing Accessible Applications
821931ff55a905c2efb7abb7ac287fe2132aaf77627Megha Joshi          </a>
822931ff55a905c2efb7abb7ac287fe2132aaf77627Megha Joshi          </li>
82322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/accessibility/service.html">
82422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Developing Accessibility Services
825931ff55a905c2efb7abb7ac287fe2132aaf77627Megha Joshi          </a>
826931ff55a905c2efb7abb7ac287fe2132aaf77627Megha Joshi          </li>
827931ff55a905c2efb7abb7ac287fe2132aaf77627Megha Joshi        </ul>
828580f0146535e7daed83aef721f505270f7b040e1Scott Main      </li>
82922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
83022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    </ul>
83122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main  </li>
83222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main  <!-- End best UX and UI -->
83322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
834c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main
835518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j  <li class="nav-section">
836518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j    <div class="nav-section-header">
837c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main      <a href="<?cs var:toroot ?>training/best-user-input.html">
838518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j      <span class="small">Best Practices for</span><br/>
839518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j              User Input
840518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j      </a>
841518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j    </div>
842518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j    <ul>
843518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j
844518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j      <li class="nav-section">
845518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j        <div class="nav-section-header">
846518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j          <a href="<?cs var:toroot ?>training/gestures/index.html"
847518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j             description=
848518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j             "How to write apps that allow users to interact with the touch screen via touch gestures."
849518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j            >Using Touch Gestures</a>
850518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j        </div>
851518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j        <ul>
852518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j          <li><a href="<?cs var:toroot ?>training/gestures/detector.html">
853518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j            Detecting Common Gestures
854518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j          </a>
855518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j          </li>
856518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j          <li><a href="<?cs var:toroot ?>training/gestures/movement.html">
857518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j            Tracking Movement
858518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j          </a>
859518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j          </li>
860518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j          <li><a href="<?cs var:toroot ?>training/gestures/scroll.html">
861518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j            Animating a Scroll Gesture
862518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j          </a>
863518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j          </li>
864518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j          <li><a href="<?cs var:toroot ?>training/gestures/multi.html">
865518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j            Handling Multi-Touch Gestures
866518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j          </a>
867518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j          </li>
868518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j          <li><a href="<?cs var:toroot ?>training/gestures/scale.html">
869518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j            Dragging and Scaling
870518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j          </a>
871518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j          </li>
872518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j          <li><a href="<?cs var:toroot ?>training/gestures/viewgroup.html">
873518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j            Managing Touch Events in a ViewGroup
874518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j          </a>
875518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j          </li>
876518edbfa97dbdc366f1e03c62ae275c388ec20ef&& repo sync -j        </ul>
877c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main      </li>
878c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main
879c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main      <li class="nav-section">
880c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main        <div class="nav-section-header">
881c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main          <a href="<?cs var:toroot ?>training/keyboard-input/index.html"
882c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main             description=
883c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main             "How to specify the appearance and behaviors of soft input methods (such
884c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main             as on-screen keyboards) and how to optimize the experience with
885c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main             hardware keyboards."
886c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main            >Handling Keyboard Input</a>
887c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main        </div>
888c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main        <ul>
889c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main          <li><a href="<?cs var:toroot ?>training/keyboard-input/style.html">
890c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main            Specifying the Input Method Type
891c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main          </a>
892c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main          </li>
893c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main          <li><a href="<?cs var:toroot ?>training/keyboard-input/visibility.html">
894c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main            Handling Input Method Visibility
895c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main          </a>
896c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main          </li>
897c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main          <li><a href="<?cs var:toroot ?>training/keyboard-input/navigation.html">
898c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main            Supporting Keyboard Navigation
899c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main          </a>
900c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main          </li>
901c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main          <li><a href="<?cs var:toroot ?>training/keyboard-input/commands.html">
902c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main            Handling Keyboard Actions
903c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main          </a>
904c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main          </li>
905c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main        </ul>
906c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main      </li>
907c8a6f8a0414d9366bd2d3ee9d74271c8f680409bScott Main    </ul>
908421435d2bede2788b74b07b1bab893fef98047c5Joe Malin  </li> <!-- end of User Input -->
90950c2275cff28c4a216f6924584e43cd64b90a3bfJoe Malin
91022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main  <li class="nav-section">
91122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    <div class="nav-section-header">
91222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      <a href="<?cs var:toroot ?>training/best-performance.html">
91322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      <span class="small">Best Practices for</span><br/>
91422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main              Performance
91522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      </a>
91622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    </div>
91722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    <ul>
91822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
91922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      <li>
92033e499ea364e4e061964bc8fe16365fd632eb39dScott Main        <a href="<?cs var:toroot ?>training/articles/perf-tips.html"
92122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main           description=
92222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main           "How to optimize your app's performance in various ways to improve its
92322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main           responsiveness and battery efficiency."
92422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          >Performance Tips</a>
92522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      </li>
92622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
92750e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      <li class="nav-section">
92822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header">
92922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="<?cs var:toroot ?>training/improving-layouts/index.html"
93022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
93122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to identify problems in your app's layout performance and improve the UI
93222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             responsiveness."
93322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Improving Layout Performance</a>
934153f8fe420506a7e1b7a8f6b4d07db798867746eScott Main        </div>
935153f8fe420506a7e1b7a8f6b4d07db798867746eScott Main        <ul>
93622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/improving-layouts/optimizing-layout.html">
93722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Optimizing Layout Hierarchies
938153f8fe420506a7e1b7a8f6b4d07db798867746eScott Main          </a>
939153f8fe420506a7e1b7a8f6b4d07db798867746eScott Main          </li>
94022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/improving-layouts/reusing-layouts.html">
94122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Re-using Layouts with &lt;include/&gt;
942153f8fe420506a7e1b7a8f6b4d07db798867746eScott Main          </a>
943153f8fe420506a7e1b7a8f6b4d07db798867746eScott Main          </li>
94422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/improving-layouts/loading-ondemand.html">
94522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Loading Views On Demand
94622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          </a>
94722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          </li>
94822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/improving-layouts/smooth-scrolling.html">
94922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Making ListView Scrolling Smooth
950153f8fe420506a7e1b7a8f6b4d07db798867746eScott Main          </a>
951153f8fe420506a7e1b7a8f6b4d07db798867746eScott Main          </li>
952ffad98c72e1ee9101065e19318c74ab4c735a477Scott Main        </ul>
953153f8fe420506a7e1b7a8f6b4d07db798867746eScott Main      </li>
9548ac78803f59fd4fbe9e2682632791bc255d38aceScott Main
955f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin      <li class="nav-section">
956f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin        <div class="nav-section-header">
957f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin          <a href="<?cs var:toroot ?>training/run-background-service/index.html"
958f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin             description=
959f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin             "How to improve UI performance and responsiveness by sending work to a
9608ac78803f59fd4fbe9e2682632791bc255d38aceScott Main             Service running in the background"
9618ac78803f59fd4fbe9e2682632791bc255d38aceScott Main            >Running in a Background Service</a>
962f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin        </div>
963f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin        <ul>
964f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin          <li><a href="<?cs var:toroot ?>training/run-background-service/create-service.html">
965f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin            Creating a Background Service
966f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin          </a>
967f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin          </li>
968f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin          <li><a href="<?cs var:toroot ?>training/run-background-service/send-request.html">
969f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin            Sending Work Requests to the Background Service
970f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin          </a>
971f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin          </li>
972f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin          <li><a href="<?cs var:toroot ?>training/run-background-service/report-status.html">
973f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin            Reporting Work Status
974f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin          </a>
975f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin          </li>
976f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin        </ul>
977f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin      </li>
9788ac78803f59fd4fbe9e2682632791bc255d38aceScott Main
9798ac78803f59fd4fbe9e2682632791bc255d38aceScott Main      <li class="nav-section">
9808ac78803f59fd4fbe9e2682632791bc255d38aceScott Main        <div class="nav-section-header">
9818ac78803f59fd4fbe9e2682632791bc255d38aceScott Main          <a href="<?cs var:toroot ?>training/load-data-background/index.html"
9828ac78803f59fd4fbe9e2682632791bc255d38aceScott Main             description="How to use CursorLoader to query data without
9838ac78803f59fd4fbe9e2682632791bc255d38aceScott Main             affecting UI responsiveness."
9848ac78803f59fd4fbe9e2682632791bc255d38aceScott Main            >Loading Data in the Background</a>
9858ac78803f59fd4fbe9e2682632791bc255d38aceScott Main        </div>
9868ac78803f59fd4fbe9e2682632791bc255d38aceScott Main        <ul>
9878ac78803f59fd4fbe9e2682632791bc255d38aceScott Main          <li><a href="<?cs var:toroot ?>training/load-data-background/setup-loader.html">
9888ac78803f59fd4fbe9e2682632791bc255d38aceScott Main            Running a Query with a CursorLoader</a>
9898ac78803f59fd4fbe9e2682632791bc255d38aceScott Main          </li>
9908ac78803f59fd4fbe9e2682632791bc255d38aceScott Main          <li><a href="<?cs var:toroot ?>training/load-data-background/handle-results.html">
9918ac78803f59fd4fbe9e2682632791bc255d38aceScott Main            Handling the Results</a>
9928ac78803f59fd4fbe9e2682632791bc255d38aceScott Main          </li>
9938ac78803f59fd4fbe9e2682632791bc255d38aceScott Main        </ul>
9948ac78803f59fd4fbe9e2682632791bc255d38aceScott Main      </li>
99522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
99650e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      <li class="nav-section">
99722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header">
99822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="/training/monitoring-device-state/index.html"
99922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             zh-CN-lang="优化电池使用时间"
100022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             ja-lang="電池消費量の最適化"
100122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             es-lang="mo optimizar la duración de la batería"
100222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
100322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to minimize the amount of power your app requires by adapting to current
100422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             power conditions and performing power-hungry tasks at proper intervals."
100522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Optimizing Battery Life</a>
100622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        </div>
1007df6c8270e300e2d04f57e24bb2b34c33edce4a0dAlexander Lucas        <ul>
100822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="/training/monitoring-device-state/battery-monitoring.html"
100922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            zh-CN-lang="监控电池电量和充电状态"
101022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            ja-lang="電池残量と充電状態の監視"
1011f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin            es-lang="mo controlar el nivel de batería y el estado de carga"
101222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Monitoring the Battery Level and Charging State</a>
1013df6c8270e300e2d04f57e24bb2b34c33edce4a0dAlexander Lucas          </li>
101422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="/training/monitoring-device-state/docking-monitoring.html"
101522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            zh-CN-lang="确定和监控基座对接状态和类型"
101622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            ja-lang="ホルダーの装着状態とタイプの特定と監視"
1017f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin            es-lang="mo determinar y controlar el tipo de conector y el estado de la conexión"
101822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Determining and Monitoring the Docking State and Type</a>
101922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          </li>
102022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="/training/monitoring-device-state/connectivity-monitoring.html"
102122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            zh-CN-lang="确定和监控网络连接状态"
102222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            ja-lang="接続状態の特定と監視"
1023f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin            es-lang="mo determinar y controlar el estado de la conectividad"
102422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Determining and Monitoring the Connectivity Status</a>
102522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          </li>
102622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="/training/monitoring-device-state/manifest-receivers.html"
102722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            zh-CN-lang="根据需要操作广播接收器"
102822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            ja-lang="オンデマンドでのブロードキャスト レシーバ操作"
1029f0f5efbea206fd0fbac655519f3f535620ed74ccJoe Malin            es-lang="mo manipular los receptores de emisión bajo demanda"
103022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Manipulating Broadcast Receivers On Demand</a>
1031df6c8270e300e2d04f57e24bb2b34c33edce4a0dAlexander Lucas          </li>
1032df6c8270e300e2d04f57e24bb2b34c33edce4a0dAlexander Lucas        </ul>
1033df6c8270e300e2d04f57e24bb2b34c33edce4a0dAlexander Lucas      </li>
10348dd6275e2871bea1acb20cbdd98ea0451b3d5be0Joe Malin      <li class="nav-section">
10358dd6275e2871bea1acb20cbdd98ea0451b3d5be0Joe Malin        <div class="nav-section-header">
10368dd6275e2871bea1acb20cbdd98ea0451b3d5be0Joe Malin          <a href="<?cs var:toroot ?>training/multiple-threads/index.html"
10378dd6275e2871bea1acb20cbdd98ea0451b3d5be0Joe Malin             description=
10388dd6275e2871bea1acb20cbdd98ea0451b3d5be0Joe Malin             "How to improve the performance and scalability of long-running operations by
10398dd6275e2871bea1acb20cbdd98ea0451b3d5be0Joe Malin              dispatching work to multiple threads.">
10408dd6275e2871bea1acb20cbdd98ea0451b3d5be0Joe Malin             Sending Operations to Multiple Threads</a>
10418dd6275e2871bea1acb20cbdd98ea0451b3d5be0Joe Malin        </div>
10428dd6275e2871bea1acb20cbdd98ea0451b3d5be0Joe Malin        <ul>
10438dd6275e2871bea1acb20cbdd98ea0451b3d5be0Joe Malin          <li><a href="<?cs var:toroot ?>training/multiple-threads/define-runnable.html">
10448dd6275e2871bea1acb20cbdd98ea0451b3d5be0Joe Malin            Specifying the Code to Run on a Thread
10458dd6275e2871bea1acb20cbdd98ea0451b3d5be0Joe Malin          </a>
10468dd6275e2871bea1acb20cbdd98ea0451b3d5be0Joe Malin          </li>
10478dd6275e2871bea1acb20cbdd98ea0451b3d5be0Joe Malin          <li><a href="<?cs var:toroot ?>training/multiple-threads/create-threadpool.html">
10488dd6275e2871bea1acb20cbdd98ea0451b3d5be0Joe Malin            Creating a Manager for Multiple Threads
10498dd6275e2871bea1acb20cbdd98ea0451b3d5be0Joe Malin          </a>
10508dd6275e2871bea1acb20cbdd98ea0451b3d5be0Joe Malin          </li>
10518dd6275e2871bea1acb20cbdd98ea0451b3d5be0Joe Malin          <li><a href="<?cs var:toroot ?>training/multiple-threads/run-code.html">
10528dd6275e2871bea1acb20cbdd98ea0451b3d5be0Joe Malin            Running Code on a Thread Pool Thread
10538dd6275e2871bea1acb20cbdd98ea0451b3d5be0Joe Malin          </a>
10548dd6275e2871bea1acb20cbdd98ea0451b3d5be0Joe Malin          </li>
10558dd6275e2871bea1acb20cbdd98ea0451b3d5be0Joe Malin          <li><a href="<?cs var:toroot ?>training/multiple-threads/communicate-ui.html">
10568dd6275e2871bea1acb20cbdd98ea0451b3d5be0Joe Malin            Communicating with the UI Thread
10578dd6275e2871bea1acb20cbdd98ea0451b3d5be0Joe Malin          </a>
10588dd6275e2871bea1acb20cbdd98ea0451b3d5be0Joe Malin          </li>
1059df6c8270e300e2d04f57e24bb2b34c33edce4a0dAlexander Lucas        </ul>
1060df6c8270e300e2d04f57e24bb2b34c33edce4a0dAlexander Lucas      </li>
106122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
106222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      <li>
106333e499ea364e4e061964bc8fe16365fd632eb39dScott Main        <a href="<?cs var:toroot ?>training/articles/perf-anr.html"
106422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main           description=
106522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main           "How to keep your app responsive to user interaction so the UI does not lock-up and
106622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main           display an &quot;Application Not Responding&quot; dialog."
106722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          >Keeping Your App Responsive</a>
106822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      </li>
106922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
107022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      <li>
107133e499ea364e4e061964bc8fe16365fd632eb39dScott Main        <a href="<?cs var:toroot ?>training/articles/perf-jni.html"
107222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main           description=
107322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main           "How to efficiently use the Java Native Interface with the Android NDK."
107422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          >JNI Tips</a>
107522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      </li>
1076d5894210930fc0a8bc3733258747d837e2960fa9Dirk Dougherty      <li>
1077d5894210930fc0a8bc3733258747d837e2960fa9Dirk Dougherty        <a href="<?cs var:toroot ?>training/articles/smp.html"
1078d5894210930fc0a8bc3733258747d837e2960fa9Dirk Dougherty           description=
1079d5894210930fc0a8bc3733258747d837e2960fa9Dirk Dougherty           "Tips for coding Android apps on symmetric multiprocessor systems."
1080d5894210930fc0a8bc3733258747d837e2960fa9Dirk Dougherty          >SMP Primer for Android</a>
1081d5894210930fc0a8bc3733258747d837e2960fa9Dirk Dougherty      </li>
108222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    </ul>
108322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main  </li> <!-- end of Performance -->
108422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
108522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
1086df6c8270e300e2d04f57e24bb2b34c33edce4a0dAlexander Lucas
108722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main  <li class="nav-section">
108822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    <div class="nav-section-header">
108922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      <a href="<?cs var:toroot ?>training/best-security.html">
109022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      <span class="small">Best Practices for</span><br/>
109122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main              Security &amp; Privacy
109222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      </a>
109322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    </div>
109422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    <ul>
1095773740ed79075e6daffaea0c62857348ab54d93eAlexander Lucas
109622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      <li>
109733e499ea364e4e061964bc8fe16365fd632eb39dScott Main        <a href="<?cs var:toroot ?>training/articles/security-tips.html"
109822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main           description=
109922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main           "How to perform various tasks and keep your app's data and your user's data secure."
110022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          >Security Tips</a>
110122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      </li>
110200158363b47d916d159d2f3a0e1152783fd66a9cScott Main
110300158363b47d916d159d2f3a0e1152783fd66a9cScott Main      <li>
110400158363b47d916d159d2f3a0e1152783fd66a9cScott Main        <a href="<?cs var:toroot ?>training/articles/security-ssl.html"
110500158363b47d916d159d2f3a0e1152783fd66a9cScott Main           description=
110600158363b47d916d159d2f3a0e1152783fd66a9cScott Main           "How to ensure that your app is secure when performing network transactions."
110700158363b47d916d159d2f3a0e1152783fd66a9cScott Main          >Security with HTTPS and SSL</a>
110800158363b47d916d159d2f3a0e1152783fd66a9cScott Main      </li>
110922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
111050e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main      <li class="nav-section">
111122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header">
111222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="<?cs var:toroot ?>training/enterprise/index.html"
111322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
111422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to implement device management policies for enterprise-oriented apps."
111522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Developing for Enterprise</a>
111622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        </div>
111750e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main        <ul>
111822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/enterprise/device-management-policy.html">
111922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Enhancing Security with Device Management Policies
112050e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main          </a>
112150e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main          </li>
1122e577d72a3be20e589437271f0e5ca474fab38124Roman Nurik        </ul>
1123e577d72a3be20e589437271f0e5ca474fab38124Roman Nurik      </li>
112422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    </ul>
112522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main  </li>
112622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main  <!-- End security and user info -->
11274c4a47f42101a57ab8ff05a8e035d97582c3368aScott Main
112850e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main
112922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main  <li class="nav-section">
113022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    <div class="nav-section-header">
113122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      <a href="<?cs var:toroot ?>training/distribute.html">
113222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      <span class="small">Using Google Play to</span><br/>
113322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main              Distribute &amp; Monetize
113422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main      </a>
113522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    </div>
113622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main    <ul>
1137768dba6d8cd6ad56fb6d4e7e30b3260e0d5e0ffdQuddus Chong      <li class="nav-section">
1138768dba6d8cd6ad56fb6d4e7e30b3260e0d5e0ffdQuddus Chong      <div class="nav-section-header"><a href="<?cs var:toroot ?>training/in-app-billing/index.html"
1139768dba6d8cd6ad56fb6d4e7e30b3260e0d5e0ffdQuddus Chong         description="How to sell in-app products from your application using In-app Billing.">
1140768dba6d8cd6ad56fb6d4e7e30b3260e0d5e0ffdQuddus Chong            Selling In-app Products
1141768dba6d8cd6ad56fb6d4e7e30b3260e0d5e0ffdQuddus Chong          </a></div>
1142768dba6d8cd6ad56fb6d4e7e30b3260e0d5e0ffdQuddus Chong        <ul>
1143768dba6d8cd6ad56fb6d4e7e30b3260e0d5e0ffdQuddus Chong          <li><a href="<?cs var:toroot ?>training/in-app-billing/preparing-iab-app.html">
1144768dba6d8cd6ad56fb6d4e7e30b3260e0d5e0ffdQuddus Chong            <span class="en">Preparing Your App</span>
1145768dba6d8cd6ad56fb6d4e7e30b3260e0d5e0ffdQuddus Chong          </a>
1146768dba6d8cd6ad56fb6d4e7e30b3260e0d5e0ffdQuddus Chong          </li>
1147768dba6d8cd6ad56fb6d4e7e30b3260e0d5e0ffdQuddus Chong          <li><a href="<?cs var:toroot ?>training/in-app-billing/list-iab-products.html">
1148768dba6d8cd6ad56fb6d4e7e30b3260e0d5e0ffdQuddus Chong            <span class="en">Establishing Products for Sale</span>
1149768dba6d8cd6ad56fb6d4e7e30b3260e0d5e0ffdQuddus Chong          </a>
1150768dba6d8cd6ad56fb6d4e7e30b3260e0d5e0ffdQuddus Chong          </li>
1151768dba6d8cd6ad56fb6d4e7e30b3260e0d5e0ffdQuddus Chong          <li><a href="<?cs var:toroot ?>training/in-app-billing/purchase-iab-products.html">
1152768dba6d8cd6ad56fb6d4e7e30b3260e0d5e0ffdQuddus Chong            <span class="en">Purchasing Products</span>
1153768dba6d8cd6ad56fb6d4e7e30b3260e0d5e0ffdQuddus Chong          </a>
1154768dba6d8cd6ad56fb6d4e7e30b3260e0d5e0ffdQuddus Chong          </li>
1155768dba6d8cd6ad56fb6d4e7e30b3260e0d5e0ffdQuddus Chong          <li><a href="<?cs var:toroot ?>training/in-app-billing/test-iab-app.html">
1156768dba6d8cd6ad56fb6d4e7e30b3260e0d5e0ffdQuddus Chong            <span class="en">Testing Your App</span>
1157768dba6d8cd6ad56fb6d4e7e30b3260e0d5e0ffdQuddus Chong          </a>
1158768dba6d8cd6ad56fb6d4e7e30b3260e0d5e0ffdQuddus Chong          </li>
1159768dba6d8cd6ad56fb6d4e7e30b3260e0d5e0ffdQuddus Chong        </ul>
1160768dba6d8cd6ad56fb6d4e7e30b3260e0d5e0ffdQuddus Chong      </li>
116122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
1162969c243f17a785dbe697e2cbe09c320136f0d82aAlexander Lucas      <li class="nav-section">
116322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header">
116422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="<?cs var:toroot ?>training/multiple-apks/index.html"
116522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
116622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to publish your app on Google Play with separate APKs that target
116722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             different devices, while using a single app listing."
116822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Maintaining Multiple APKs</a>
116922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        </div>
1170969c243f17a785dbe697e2cbe09c320136f0d82aAlexander Lucas        <ul>
117122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/multiple-apks/api.html">
117222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Creating Multiple APKs for Different API Levels
1173969c243f17a785dbe697e2cbe09c320136f0d82aAlexander Lucas          </a>
1174969c243f17a785dbe697e2cbe09c320136f0d82aAlexander Lucas          </li>
117522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/multiple-apks/screensize.html">
117622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Creating Multiple APKs for Different Screen Sizes
1177969c243f17a785dbe697e2cbe09c320136f0d82aAlexander Lucas          </a>
1178969c243f17a785dbe697e2cbe09c320136f0d82aAlexander Lucas          </li>
117922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/multiple-apks/texture.html">
118022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Creating Multiple APKs for Different GL Textures
118122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          </a>
118222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          </li>
118322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/multiple-apks/multiple.html">
118422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Creating Multiple APKs with 2+ Dimensions
1185969c243f17a785dbe697e2cbe09c320136f0d82aAlexander Lucas          </a>
1186969c243f17a785dbe697e2cbe09c320136f0d82aAlexander Lucas          </li>
1187969c243f17a785dbe697e2cbe09c320136f0d82aAlexander Lucas        </ul>
1188969c243f17a785dbe697e2cbe09c320136f0d82aAlexander Lucas      </li>
118950c2275cff28c4a216f6924584e43cd64b90a3bfJoe Malin      <li class="nav-section">
119022cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        <div class="nav-section-header">
119122cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <a href="<?cs var:toroot ?>training/monetization/index.html"
119222cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             description=
119322cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             "How to implement monetization strategies for your app without compromising
119422cc2764cc74e52888b043e0c6371594305bb5e9Scott Main             the user experience."
119522cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            >Monetizing Your App</a>
119622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main        </div>
119750c2275cff28c4a216f6924584e43cd64b90a3bfJoe Malin        <ul>
119822cc2764cc74e52888b043e0c6371594305bb5e9Scott Main          <li><a href="<?cs var:toroot ?>training/monetization/ads-and-ux.html">
119922cc2764cc74e52888b043e0c6371594305bb5e9Scott Main            Advertising without Compromising User Experience
120050c2275cff28c4a216f6924584e43cd64b90a3bfJoe Malin          </a>
120150c2275cff28c4a216f6924584e43cd64b90a3bfJoe Malin          </li>
120250c2275cff28c4a216f6924584e43cd64b90a3bfJoe Malin        </ul>
120350c2275cff28c4a216f6924584e43cd64b90a3bfJoe Malin      </li>
120422558d0be8210aee1a2ab64b374bb357d4123acdDirk Dougherty    </ul>
120522558d0be8210aee1a2ab64b374bb357d4123acdDirk Dougherty  </li>
120622cc2764cc74e52888b043e0c6371594305bb5e9Scott Main  <!-- End best Publishing -->
120722cc2764cc74e52888b043e0c6371594305bb5e9Scott Main
120850e990c64fa23ce94efa76b9e72df7f8ec3cee6aScott Main</ul><!-- nav -->
120922558d0be8210aee1a2ab64b374bb357d4123acdDirk Dougherty<script type="text/javascript">
121022558d0be8210aee1a2ab64b374bb357d4123acdDirk Dougherty<!--
121122558d0be8210aee1a2ab64b374bb357d4123acdDirk Dougherty    buildToggleLists();
121222558d0be8210aee1a2ab64b374bb357d4123acdDirk Dougherty    changeNavLang(getLangPref());
121322558d0be8210aee1a2ab64b374bb357d4123acdDirk Dougherty//-->
121422558d0be8210aee1a2ab64b374bb357d4123acdDirk Dougherty</script>
1215