gitextract_k1yxr9w4/ ├── .gitignore ├── GLOSSARY.md ├── LICENSE ├── README.md ├── SUMMARY.md ├── animations/ │ ├── anim_card_flip.ogv │ ├── anim_card_flip.webm │ ├── anim_crossfade.ogv │ ├── anim_crossfade.webm │ ├── anim_layout_changes.ogv │ ├── anim_layout_changes.webm │ ├── anim_page_transformer_depth.ogv │ ├── anim_page_transformer_depth.webm │ ├── anim_page_transformer_zoomout.ogv │ ├── anim_page_transformer_zoomout.webm │ ├── anim_screenslide.ogv │ ├── anim_screenslide.webm │ ├── anim_zoom.ogv │ ├── anim_zoom.webm │ ├── cardflip.md │ ├── crossfade.md │ ├── index.md │ ├── layout.md │ ├── screen-slide.md │ └── zoom.md ├── background-jobs/ │ ├── load-data-background/ │ │ ├── handle-result.md │ │ ├── index.md │ │ └── setup-loader.md │ ├── run-background-service/ │ │ ├── create-service.md │ │ ├── index.md │ │ ├── report-status.md │ │ └── send-request.md │ └── scheduling/ │ ├── alarms.md │ ├── index.md │ └── wake-lock.md ├── basics/ │ ├── actionbar/ │ │ ├── adding-buttons.md │ │ ├── index.md │ │ ├── overlaying.md │ │ ├── setting-up.md │ │ └── styling.md │ ├── activity-lifecycle/ │ │ ├── index.md │ │ ├── pausing.md │ │ ├── recreating.md │ │ ├── starting.md │ │ └── stopping.md │ ├── data-storage/ │ │ ├── database.md │ │ ├── files.md │ │ ├── index.md │ │ └── shared-preference.md │ ├── firstapp/ │ │ ├── building-ui.md │ │ ├── creating-project.md │ │ ├── index.md │ │ ├── running-app.md │ │ └── starting-activity.md │ ├── fragments/ │ │ ├── communicating.md │ │ ├── creating.md │ │ ├── fragment-ui.md │ │ └── index.md │ ├── index.md │ ├── intents/ │ │ ├── filters.md │ │ ├── index.md │ │ ├── result.md │ │ └── sending.md │ ├── permissions/ │ │ ├── declaring.md │ │ └── index.md │ └── supporting-devices/ │ ├── index.md │ ├── languages.md │ ├── platforms.md │ └── screens.md ├── best-background.md ├── best-performance.md ├── best-security.md ├── best-testing.md ├── best-ui.md ├── best-user-input.md ├── best-ux.md ├── book.json ├── building-connectivity.md ├── building-content-sharing.md ├── building-graphics.md ├── building-multimedia.md ├── building-tv.md ├── building-userinfo.md ├── building-wearables.md ├── config.json ├── connectivity/ │ ├── cloudsave/ │ │ └── index.md │ ├── cloudsync/ │ │ ├── backupapi.md │ │ ├── gcm.md │ │ └── index.md │ ├── connect-devices-wireless/ │ │ ├── index.md │ │ ├── nsd-wifi-index.md │ │ ├── nsd.md │ │ └── wifi-direct.md │ ├── efficient-downloads/ │ │ ├── connectivity-patterns.md │ │ ├── efficient-network-access.md │ │ ├── index.md │ │ ├── redundant-redundant.md │ │ └── regular-update.md │ ├── network-ops/ │ │ ├── connecting.md │ │ ├── index.md │ │ ├── managing.md │ │ └── xml.md │ ├── sync-adapters/ │ │ ├── create-authenticator.md │ │ ├── create-stub-provider.md │ │ ├── create-sync-adapter.md │ │ ├── index.md │ │ └── running-sync-adapter.md │ └── volley/ │ ├── index.md │ ├── request-custom.md │ ├── request-queue.md │ ├── request.md │ └── simple.md ├── contacts-provider/ │ ├── display-badge.md │ ├── index.md │ ├── modify-data.md │ ├── retrieve-detail.md │ └── retrieve-names.md ├── content-sharing/ │ ├── beam-files/ │ │ ├── index.md │ │ ├── receive-files.md │ │ └── sending-files.md │ ├── secure-file-sharing/ │ │ ├── index.md │ │ ├── request-file.md │ │ ├── retrieve-info.md │ │ ├── setup-sharing.md │ │ └── sharing-file.md │ └── sharing/ │ ├── index.md │ ├── receive.md │ ├── send.md │ └── shareaction.md ├── enterprise/ │ ├── app-compatibility.md │ ├── app-restrictions.md │ ├── cosu.md │ ├── index.md │ └── work-policy-ctrl.md ├── gitbook/ │ ├── app.js │ ├── fonts/ │ │ └── fontawesome/ │ │ └── FontAwesome.otf │ ├── jsrepl/ │ │ ├── engines/ │ │ │ └── javascript-default.js │ │ ├── jsrepl.js │ │ ├── langs/ │ │ │ └── javascript/ │ │ │ └── jsrepl_js.js │ │ ├── sandbox.html │ │ └── sandbox.js │ ├── plugins/ │ │ ├── gitbook-plugin-disqus/ │ │ │ └── plugin.js │ │ └── gitbook-plugin-mathjax/ │ │ └── plugin.js │ ├── print.css │ └── style.css ├── graphics/ │ ├── displaying-bitmaps/ │ │ ├── cache-bitmap.md │ │ ├── display-bitmap.md │ │ ├── index.md │ │ ├── load-bitmap.md │ │ ├── manage-memory.md │ │ └── process-bitmap.md │ └── opengl/ │ ├── draw.md │ ├── environment.md │ ├── index.md │ ├── motion.md │ ├── projection.md │ ├── shapes.md │ └── touch.md ├── input/ │ ├── game-controller/ │ │ ├── compatibility.md │ │ ├── controller-inputs.md │ │ ├── index.md │ │ └── multi-controller.md │ ├── gestures/ │ │ ├── detector.md │ │ ├── index.md │ │ ├── movement.md │ │ ├── multi.md │ │ ├── scale.md │ │ ├── scroll.md │ │ └── viewgroup.md │ └── keyboard-input/ │ ├── commands.md │ ├── index.md │ ├── navigation.md │ ├── type.md │ └── visibility.md ├── location/ │ ├── activity-recognition.md │ ├── display-address.md │ ├── geofencing.md │ ├── index.md │ ├── location-testing.md │ ├── retrieve-current.md │ └── retrieve-location-updates.md ├── manifest.appcache ├── material/ │ ├── animations.md │ ├── compatibility.md │ ├── drawables.md │ ├── get-started.md │ ├── index.md │ ├── lists-cards.md │ ├── shadows-clipping.md │ └── theme.md ├── multimedia/ │ ├── audio/ │ │ ├── audio-focus.md │ │ ├── audio-output.md │ │ ├── index.md │ │ └── volume-playback.md │ ├── camera/ │ │ ├── cameradirect.md │ │ ├── index.md │ │ ├── photobasics.md │ │ └── videobasics.md │ └── printing/ │ ├── custom-docs.md │ ├── html-docs.md │ ├── index.md │ └── photos.md ├── package.json ├── performance/ │ ├── improving-layouts/ │ │ ├── index.md │ │ ├── loading-ondemand.md │ │ ├── optimizing-layout.md │ │ ├── reuse-layouts.md │ │ └── smooth-scrolling.md │ ├── memory.md │ ├── monitor-device-state/ │ │ ├── battery-monitor.md │ │ ├── connectivity-monitor.md │ │ ├── docking-monitor.md │ │ ├── index.md │ │ └── manifest-receivers.md │ ├── multi-threads/ │ │ ├── communicate-ui.md │ │ ├── create-threadpool.md │ │ ├── define-runnable.md │ │ ├── index.md │ │ └── run-code.md │ ├── perf-anr/ │ │ └── index.md │ ├── perf-jni/ │ │ └── index.md │ ├── performance-tips.md │ └── smp/ │ └── index.md ├── permissions/ │ ├── DeclaringPermissions.md │ ├── Requesting Permission at Run Time.md │ └── Using Permissions.md ├── search_index.json ├── security/ │ ├── device-management-policy.md │ ├── enterprise/ │ │ └── device-management-policy.md │ ├── security-gms-provider.md │ ├── security-ssl.md │ └── security-tips.md ├── testing/ │ └── activity-testing/ │ ├── activity-basic-testing.md │ ├── activity-function-testing.md │ ├── activity-ui-testing.md │ ├── activity-unit-testing.md │ ├── index.md │ └── prepare-activity-testing.md ├── tv/ │ ├── discovery/ │ │ ├── in-app-search.md │ │ ├── index.md │ │ ├── recommendations.md │ │ └── searchable.md │ ├── games/ │ │ └── index.md │ ├── playback/ │ │ ├── browse.md │ │ ├── card.md │ │ ├── details.md │ │ ├── index.md │ │ └── now-playing.md │ ├── publishing/ │ │ └── checklist.md │ ├── start/ │ │ ├── hardware.md │ │ ├── index.md │ │ ├── layouts.md │ │ ├── navigation.md │ │ └── start.md │ └── tif/ │ └── index.md ├── ui/ │ ├── accessibility/ │ │ ├── accessible-app.md │ │ ├── accessible-service.md │ │ └── index.md │ ├── backward-compatible-ui/ │ │ ├── abstract.md │ │ ├── index.md │ │ ├── new-impl.md │ │ ├── older-impl.md │ │ └── using-component.md │ ├── custom-view/ │ │ ├── create-view.md │ │ ├── custom-draw.md │ │ ├── index.md │ │ ├── make-interactive.md │ │ └── optimize-view.md │ ├── multiscreen/ │ │ ├── adapt-ui.md │ │ ├── index.md │ │ ├── screen-desities.md │ │ └── screen-sizes.md │ └── system-ui/ │ ├── dim.md │ ├── hide-nav.md │ ├── hide-ui.md │ ├── immersive.md │ ├── index.md │ └── visibility.md ├── ux/ │ ├── app-indexing/ │ │ ├── deep-linking.md │ │ ├── enable-app-indexing.md │ │ └── index.md │ ├── design-nav/ │ │ ├── ancestral-temporal.md │ │ ├── descendant-lateral.md │ │ ├── index.md │ │ ├── multi-sizes.md │ │ ├── screen-planning.md │ │ └── wireframing.md │ ├── implement-nav/ │ │ ├── ancestral.md │ │ ├── descendant.md │ │ ├── index.md │ │ ├── lateral.md │ │ ├── nav-drawer.md │ │ └── temporal.md │ ├── notify-user/ │ │ ├── build-notification.md │ │ ├── expand-notification.md │ │ ├── index.md │ │ ├── nav.md │ │ ├── progess-notification.md │ │ └── update-notification.md │ └── search/ │ ├── back-compat.md │ ├── index.md │ ├── search.md │ └── setup.md └── wearables/ ├── apps/ │ ├── bt-debugging.md │ ├── creating.md │ ├── index.md │ ├── layouts.md │ ├── packaging.md │ └── voice.md ├── data-layer/ │ ├── accessing.md │ ├── assets.md │ ├── data-items.md │ ├── events.md │ ├── index.md │ └── messages.md ├── location/ │ └── wear-location-detection.md ├── notifications/ │ ├── creating.md │ ├── index.md │ ├── pages.md │ ├── stacks.md │ └── voice-input.md ├── ui/ │ ├── 2d-picker.md │ ├── cards.md │ ├── confirm.md │ ├── exit.md │ ├── index.md │ ├── layouts.md │ └── lists.md └── watch-faces/ ├── configuration.md ├── designing.md ├── drawing.md ├── index.md ├── information.md ├── issues.md ├── performance.md └── service.md